@charset "UTF-8";*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}body{font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;font-size:var(--base-font-size, 16px);line-height:1.5}#sentry-feedback{--inset: auto auto 0 0}.widget__Trigger-sc-1h2c2hn-3,.widget__Container-sc-1h2c2hn-1,[data-sentry-feedback],[class*=feedback-widget],[id*=sentry-feedback]{opacity:.4!important;transition:opacity .2s ease!important}.widget__Trigger-sc-1h2c2hn-3:hover,.widget__Container-sc-1h2c2hn-1:hover,[data-sentry-feedback]:hover,[class*=feedback-widget]:hover,[id*=sentry-feedback]:hover{opacity:1!important}button[aria-label*="Send feedback" i]{opacity:.4!important;transition:opacity .2s ease!important}button[aria-label*="Send feedback" i]:hover{opacity:1!important}.main-nav-dropdown-item{font-family:NotoSans,sans-serif;text-decoration:none;font-weight:400;color:#000}.error-boundary{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:2rem;text-align:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;margin:2rem;box-shadow:0 4px 6px #0000001a}.error-boundary h2{color:#dc3545;font-size:2rem;font-weight:600;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.error-boundary h2:before{content:"⚠️";font-size:1.5rem}.error-boundary p{color:#6c757d;font-size:1.1rem;line-height:1.6;margin-bottom:2rem;max-width:500px}.error-boundary button{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;margin-bottom:2rem;box-shadow:0 2px 4px #007bff4d}.error-boundary button:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-2px);box-shadow:0 4px 8px #007bff66}.error-boundary button:active{transform:translateY(0)}.error-boundary details{margin-top:1rem;max-width:600px;width:100%}.error-boundary details summary{cursor:pointer;color:#6c757d;font-weight:500;padding:.5rem;border-radius:4px;transition:background-color .2s ease}.error-boundary details summary:hover{background-color:#0000000d}.error-boundary details pre{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;padding:1rem;margin-top:.5rem;text-align:left;overflow-x:auto;font-family:Courier New,monospace;font-size:.875rem;color:#495057;white-space:pre-wrap;word-break:break-word}@media(max-width:768px){.error-boundary{margin:1rem;padding:1.5rem;min-height:50vh}.error-boundary h2{font-size:1.5rem}.error-boundary p{font-size:1rem}.error-boundary button{padding:.6rem 1.5rem;font-size:.9rem}}.loader-container{display:flex;justify-content:center;align-items:center;height:100dvh;width:100vw;overflow:hidden;position:fixed;top:0;left:0;background:#000c;z-index:9999;pointer-events:all}.loader-content{display:flex;flex-direction:column;align-items:center;gap:16px}.loader-text{color:#fff;font-size:var(--base-font-size, 16px);font-weight:500;text-align:center}.loader-percentage{color:#fff;font-size:calc(var(--base-font-size, 16px) * .875);font-weight:600;text-align:center;min-width:40px}.progress-root{position:relative;overflow:hidden;background:#eee;border-radius:9999px;width:200px;height:10px}.progress-indicator{background-color:#dc4b7c;width:100%;height:100%;transform-origin:left;animation:loadingBar 25s infinite ease-in-out}@keyframes loadingBar{0%{transform:scaleX(0)}25%{transform:scaleX(.25)}50%{transform:scaleX(.5)}75%{transform:scaleX(.75)}to{transform:scaleX(1)}}.layout{display:flex;flex-direction:column;min-height:100vh;position:relative;padding-top:env(safe-area-inset-top,0px)}.layout:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(118.78% 91.26% at 87.92% 26.33%,#ff88f333,#ff88f300),radial-gradient(177.87% 106.02% at 12.12% 9.35%,#2d4eff33,#f2aeba00),#eef2fe;background-size:auto;background-position:initial;background-repeat:initial;transition:background 1s ease-in-out;z-index:-2}.layout:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:transparent;transition:background .8s ease-in-out;z-index:-1;pointer-events:none}.layout[data-schema-type=prescreen]:before{background:var(--theme-background, radial-gradient(118.78% 91.26% at 87.92% 26.33%, rgba(255, 136, 243, .2) 0%, rgba(255, 136, 243, 0) 100%), radial-gradient(177.87% 106.02% at 12.12% 9.35%, rgba(45, 78, 255, .2) 0%, rgba(242, 174, 186, 0) 100%), #EEF2FE);background-size:var(--theme-background-size, auto);background-position:var(--theme-background-position, initial);background-repeat:var(--theme-background-repeat, initial)}.layout[data-schema-type=prescreen]:after{background:var(--theme-overlay, transparent)}.layout .outlet{display:flex;justify-content:center;align-items:flex-start;border-radius:10px}@media(min-width:1280px){.layout .outlet{width:1280px;margin-left:auto;margin-right:auto;margin-top:40px;box-sizing:border-box}}.confirmation-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.confirmation-dialog{background:#fff;border-radius:12px;padding:32px;max-width:480px;width:90%;max-height:90vh;overflow-y:auto;text-align:center;box-shadow:0 20px 40px #00000026;animation:dialogFadeIn .2s ease-out;position:relative}@keyframes dialogFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.confirmation-dialog-icon{margin-bottom:24px;display:flex;justify-content:center}.confirmation-dialog-content{margin-bottom:32px}.confirmation-dialog-title{font-size:calc(var(--base-font-size, 16px) * 1.111);font-weight:500;color:#666;line-height:1.4;margin:0 0 20px}.confirmation-dialog-message{font-size:var(--base-font-size, 16px);color:#666;line-height:1.5;margin:0 0 20px}.confirmation-dialog-question{font-size:var(--base-font-size, 16px);font-weight:600;color:#333;margin:0 0 8px}.confirmation-dialog-note{font-size:calc(var(--base-font-size, 16px) * .875);color:#999;margin:0}.confirmation-dialog-buttons{display:flex;gap:16px;justify-content:center}.confirmation-dialog-button{padding:12px 24px;font-size:calc(var(--base-font-size, 16px) * .875);font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;min-width:120px}.confirmation-dialog-button.cancel{background-color:#d85b85;color:#fff}.confirmation-dialog-button.cancel:hover{background-color:#c14b75}.confirmation-dialog-button.cancel:active{transform:translateY(1px)}.confirmation-dialog-button.confirm{background-color:#d85b85;color:#fff}.confirmation-dialog-button.confirm:hover{background-color:#c14b75}.confirmation-dialog-button.confirm:active{transform:translateY(1px)}.confirmation-dialog-button.confirm.loading{opacity:.7;cursor:not-allowed}.confirmation-dialog-button:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.confirmation-dialog-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spinner-rotate .7s linear infinite}@keyframes spinner-rotate{to{transform:rotate(360deg)}}@media(max-width:640px){.confirmation-dialog{margin:20px;padding:24px}.confirmation-dialog-buttons{flex-direction:column;gap:12px}.confirmation-dialog-button{width:100%}}.page-header{background-color:#25215f!important;box-shadow:0 2px 8px #0000001a!important;position:sticky!important;top:0!important;z-index:1055!important;padding:0!important;margin:0!important}.main-nav{display:flex!important;justify-content:flex-start!important;align-items:center!important;padding:.35rem 1.5rem!important;max-width:100%!important;margin:0 auto!important;background-color:transparent!important;gap:1.5rem}@media(max-width:768px){.main-nav{padding:.5rem 1rem!important;justify-content:space-between!important}}.main-nav-brand{display:flex;align-items:center;text-decoration:none;flex-shrink:0}@media(max-width:768px){.page-header--dash .main-nav-brand{flex-shrink:1;min-width:0;max-width:120px}}.header-logo{height:24px;width:auto}@media(max-width:768px){.header-logo{height:18px;max-width:20%}}.main-nav-menu{display:flex;align-items:center;gap:1rem;margin-left:auto}.fluid-container{display:flex;align-items:center;gap:1rem;flex:1;justify-content:flex-end}.header-purple-button{background:linear-gradient(91.66deg,#e34d71,#c2294d);color:#fff;border:none;border-radius:20px;padding:8px 20px;font-size:calc(var(--base-font-size, 16px) * .875);font-weight:600;font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;cursor:pointer;transition:all .2s ease;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.header-purple-button:hover{background:linear-gradient(91.66deg,#c51f47,#831c34);transform:translateY(-1px);box-shadow:0 4px 12px #c727534d}.header-purple-button:active{transform:translateY(0)}@media(max-width:768px){.header-purple-button{display:none}}.user-desktop-menu{display:flex;align-items:center;gap:.5rem}@media(max-width:768px){.user-desktop-menu{display:none}}.user-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:calc(var(--base-font-size, 16px) * .75);font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;cursor:pointer;transition:transform .2s ease}.user-avatar:hover{transform:scale(1.05)}@media(max-width:768px){.user-avatar{width:32px;height:32px;font-size:calc(var(--base-font-size, 16px) * .75)}}.nav-container{position:relative;display:flex;align-items:center}.avatar-cta{display:flex;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;padding:.25rem;transition:opacity .2s ease;text-decoration:none}@media(max-width:768px){.avatar-cta{padding:.25rem;gap:0}}.avatar-cta:hover{opacity:.8}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#6366f1);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:calc(var(--base-font-size, 16px) * .75);font-family:Noto Sans,Helvetica Neue,Arial,sans-serif}@media(max-width:768px){.avatar{display:none}}.avatar span{display:block}.hamburger-menu{position:relative;width:24px;height:24px;display:flex;align-items:center;justify-content:center}@media(max-width:768px){.hamburger-menu{width:22px;height:22px}}.hamburger-menu svg{position:absolute;transition:opacity .2s ease,transform .2s ease}.hamburger-menu.open #hamburger-lines{opacity:0;transform:scale(.8)}.hamburger-menu.open #hamburger-x{opacity:1;transform:scale(1)}.hamburger-menu:not(.open) #hamburger-lines{opacity:1;transform:scale(1)}.hamburger-menu:not(.open) #hamburger-x{opacity:0;transform:scale(.8)}#hamburger-lines{display:block}@media(max-width:768px){#hamburger-lines{width:20px;height:20px}}#hamburger-lines path{stroke:#fff}#hamburger-x{display:block}@media(max-width:768px){#hamburger-x{width:18px;height:18px}}.main-nav-dropdown-content{position:absolute;top:calc(100% + .5rem);right:0;background:#fff;border-radius:8px;box-shadow:0 4px 16px #00000026;list-style:none;padding:.5rem 0;min-width:200px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .2s ease,visibility .2s ease,transform .2s ease;z-index:1001;margin:0}@media(max-width:768px){.main-nav-dropdown-content{min-width:180px}}.main-nav-dropdown-content.open{opacity:1;visibility:visible;transform:translateY(0)}.main-nav-dropdown-content li{list-style:none}.main-nav-dropdown-content li.li-logout{border-top:1px solid #e0e0e0;margin-top:.5rem;padding-top:.5rem}.main-nav-dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:#333;text-decoration:none;font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;font-size:calc(var(--base-font-size, 16px) * .875);font-weight:400;transition:background-color .2s ease}.main-nav-dropdown-item:hover{background-color:#f5f5f5}@media(max-width:768px){.main-nav-dropdown-item{padding:.625rem .875rem;font-size:calc(var(--base-font-size, 16px) * .75)}}.main-nav-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:#666}.main-nav-icon svg{width:100%;height:100%}.page-header--dash{background-color:#25215f}@media(max-width:768px){.page-header--dash .main-nav{padding:.5rem .75rem!important;gap:.75rem}}@media(max-width:768px){.page-header--dash .header-logo{height:18px;max-width:none}}.page-header--dash .main-nav-menu{margin-left:auto!important;justify-content:flex-end!important}.dash-nav{display:flex;align-items:center;gap:1.5rem}@media(max-width:768px){.dash-nav{gap:.75rem}}.dash-nav__icon{display:inline-flex;align-items:center}.dash-nav__icon svg{width:20px;height:20px}@media(max-width:768px){.dash-nav__icon{display:none}}.dash-nav__tab{position:relative;background:none;border:none;color:#ffffffb3;font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;font-size:var(--base-font-size, 16px);font-weight:500;padding:.625rem .25rem;cursor:pointer;transition:color .2s ease;white-space:nowrap;display:inline-flex;align-items:center;gap:.5rem}@media(max-width:768px){.dash-nav__tab{font-size:calc(var(--base-font-size, 16px) * .75);gap:0;padding:.5rem .125rem}.dash-nav__tab[data-nav=profile],.dash-nav__tab[data-nav=course]{display:none}}.dash-nav__tab:hover{color:#fff}.dash-nav__tab:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(to right,#5a7bf2,#1d42c5);border-radius:1.5px;transform:scaleX(0);transition:transform .3s ease}.dash-nav__tab--active{color:#fff}.dash-nav__tab--active:after{transform:scaleX(1)}.dash-hamburger{background:none;border:none;color:#fff;padding:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:background-color .2s ease}.dash-hamburger:hover{background:#ffffff1a}.dash-hamburger svg{width:24px;height:24px}@media(max-width:768px){.dash-hamburger svg{width:22px;height:22px}}.popover-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;background:#0000;pointer-events:none;transition:background .25s ease}.popover-overlay--visible{background:#00000014;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);pointer-events:auto}.popover-menu{position:fixed;top:56px;right:16px;width:320px;max-width:calc(100vw - 32px);background:#fff;border-radius:12px;box-shadow:0 8px 30px #00000029,0 2px 8px #00000014;z-index:1060;opacity:0;visibility:hidden;transform:translateY(-10px) scale(.97);transform-origin:top right;transition:opacity .25s cubic-bezier(.16,1,.3,1),visibility .25s cubic-bezier(.16,1,.3,1),transform .25s cubic-bezier(.16,1,.3,1);overflow:hidden}.popover-menu--open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}@media(max-width:768px){.popover-menu{top:50px;right:12px;width:290px}}.slide-out-menu__avatar-circle{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:calc(var(--base-font-size, 16px) * .75);font-family:Noto Sans,Helvetica Neue,Arial,sans-serif}.popover-menu__user-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem}.popover-menu__avatar{width:44px;height:44px;min-width:44px;border-radius:50%;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:calc(var(--base-font-size, 16px) * .875);font-family:Noto Sans,Helvetica Neue,Arial,sans-serif}.popover-menu__user-info{display:flex;flex-direction:column;min-width:0}.popover-menu__user-name{font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;font-size:calc(var(--base-font-size, 16px) * .875);font-weight:600;color:#111827;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.popover-menu__user-email{font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;font-size:calc(var(--base-font-size, 16px) * .75);color:#6b7280;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.popover-menu__divider{border:none;border-top:1px solid #e5e7eb;margin:0}.popover-menu__section{padding:.375rem .5rem}.popover-menu__section-title{display:block;font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;font-size:calc(var(--base-font-size, 16px) * .75);font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;padding:.5rem .75rem .25rem}.popover-menu__item{display:flex;align-items:center;gap:.75rem;width:100%;text-align:left;background:none;border:none;font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;font-size:calc(var(--base-font-size, 16px) * .875);font-weight:400;color:#374151;padding:.5rem .75rem;border-radius:8px;cursor:pointer;transition:background-color .15s ease}.popover-menu__item:hover{background-color:#f3f4f6}.popover-menu__item--active{background-color:#f3f4f6;color:#cf1759;font-weight:600}.popover-menu__item--active .popover-menu__icon{color:#cf1759}.popover-menu__item--active:hover{background-color:#e5e7eb}.popover-menu__item--disabled{cursor:default;opacity:.65}.popover-menu__item--disabled:hover{background-color:transparent}.popover-menu__item--link{color:#6b7280;font-size:calc(var(--base-font-size, 16px) * .75);padding-left:2.75rem}.popover-menu__item--link:hover{color:#374151}.popover-menu__item--logout,.popover-menu__item--logout .popover-menu__icon{color:#cf1759}.popover-menu__item--logout:hover{background-color:#fef2f2}.popover-menu__icon{display:inline-flex;align-items:center;flex-shrink:0;color:#6b7280}.popover-menu__label{flex:1;min-width:0}.popover-menu__ios-guide{padding:.5rem .75rem .5rem 2.75rem;font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;font-size:calc(var(--base-font-size, 16px) * .75);color:#6b7280;line-height:1.6}.popover-menu__ios-guide p{margin:0}.popover-menu__trailing{display:inline-flex;align-items:center;color:#9ca3af;margin-left:auto}.toast-viewport{position:fixed;top:86px;right:20px;display:flex;flex-direction:column;gap:10px;width:390px;max-width:calc(100vw - 40px);margin:0;list-style:none;z-index:2147483647;outline:none}@media(max-width:768px){.toast-viewport{width:auto;left:unset;right:12px;top:unset;bottom:12px}}.toast-root{background-color:#fff;border-radius:8px;box-shadow:0 10px 25px #0000001a,0 4px 6px #0000000d;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-left:4px solid #E34D71}.toast-root[data-state=open]{animation:toastEnter .4s cubic-bezier(.22,1,.36,1) forwards}.toast-root[data-state=closed]{animation:toastExit .22s cubic-bezier(.4,0,1,1) forwards}.toast-root[data-swipe=move]{transform:translate(var(--radix-toast-swipe-move-x))}.toast-root[data-swipe=cancel]{transform:translate(0);transition:transform .2s ease-out}.toast-root[data-swipe=end]{animation:swipeOut .1s ease-out forwards}@media(max-width:768px){.toast-root{padding:10px 12px;gap:10px;border-radius:6px}}.toast-root--success{border-left-color:#10b981;background-color:#f0fdf4}.toast-root--success .toast-description{color:#065f46}.toast-root--error{border-left-color:#ef4444;background-color:#fef2f2}.toast-root--error .toast-description{color:#991b1b}.toast-root--blue{border-left-color:#1d42c5;background-color:#d1dffa}.toast-root--blue .toast-description{color:#25215f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:768px){.toast-root--blue .toast-description{display:none}}.toast-root--blue .toast-action{background:#1d42c5}.toast-root--blue .toast-action:focus{outline-color:#1d42c5}.toast-in-progress-link{background:none;border:none;padding:0;cursor:pointer;font-size:inherit;font-weight:600;color:#991b1b;text-decoration:underline}.toast-in-progress-link:hover{color:#7f1d1d}.toast-description{flex:1;color:#374151;font-size:calc(var(--base-font-size, 16px) * .875);line-height:1.5;margin:0;font-weight:500}@media(max-width:768px){.toast-description{font-size:calc(var(--base-font-size, 16px) * .75)}}.toast-root--white{border-left-color:#25215f;background-color:#fff}.toast-root--white .toast-description{color:#374151}@media(max-width:768px){.toast-root--white .toast-description{display:none}}.toast-root--white .toast-action{background:#25215f}.toast-root--white .toast-action:focus{outline-color:#25215f}.toast-action{background:#e34d71;color:#fff;border:none;border-radius:6px;padding:6px 12px;font-size:calc(var(--base-font-size, 16px) * .75);font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .15s ease}.toast-action:hover{opacity:.85}.toast-action:focus{outline:2px solid #E34D71;outline-offset:2px}@media(max-width:768px){.toast-action{padding:4px 10px;font-size:calc(var(--base-font-size, 16px) * .75)}}.toast-close{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:color .15s ease;flex-shrink:0}.toast-close:hover{color:#374151}.toast-close:focus{outline:2px solid #E34D71;outline-offset:2px;border-radius:4px}.toast-close svg{width:20px;height:20px}@media(max-width:768px){.toast-close svg{width:16px;height:16px}}@keyframes toastEnter{0%{transform:translate(calc(100% + 25px)) scale(.96);opacity:0}60%{opacity:1}to{transform:translate(0) scale(1);opacity:1}}@keyframes toastExit{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(calc(100% + 25px)) scale(.96);opacity:0}}@keyframes swipeOut{0%{transform:translate(var(--radix-toast-swipe-end-x));opacity:1}to{transform:translate(calc(100% + 25px));opacity:0}}.ios-install-guide{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:iosGuideFadeIn .25s ease-out}.ios-install-guide__card{position:relative;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000002e;padding:2rem 1.5rem 1.5rem;max-width:380px;width:100%;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;animation:iosGuideScaleIn .3s cubic-bezier(.16,1,.3,1)}.ios-install-guide__close{position:absolute;top:12px;right:12px;background:none;border:none;cursor:pointer;color:#9ca3af;padding:4px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;transition:background .15s ease,color .15s ease}.ios-install-guide__close:hover{background:#f3f4f6;color:#4b5563}.ios-install-guide__icon{border-radius:12px}.ios-install-guide__title{margin:0;font-size:var(--base-font-size, 16px);font-weight:600;color:#111827}.ios-install-guide__steps{width:100%;display:flex;flex-direction:column;gap:10px;text-align:left}.ios-install-guide__step{display:flex;align-items:center;gap:10px;font-size:calc(var(--base-font-size, 16px) * .875);color:#4b5563;line-height:1.4}.ios-install-guide__step-num{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:#25215f;color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center}.ios-install-guide__inline-icon{display:inline-block;vertical-align:middle;margin:0 3px}.ios-install-guide__dismiss{background:none;border:none;cursor:pointer;color:#9ca3af;font-size:calc(var(--base-font-size, 16px) * .75);font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;padding:4px 8px;margin-top:4px}.ios-install-guide__dismiss:active{opacity:.7}@keyframes iosGuideFadeIn{0%{opacity:0}to{opacity:1}}@keyframes iosGuideScaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}:root{--base-font-size: 14px}@media(min-width:480px){:root{--base-font-size: 14px}}@media(min-width:768px){:root{--base-font-size: 15px}}@media(min-width:1024px){:root{--base-font-size: 16px}}@media(min-width:1440px){:root{--base-font-size: 17px}}@media(min-width:1920px){:root{--base-font-size: 18px}}.layout[data-schema-type=screening]{--base-font-size: 14px}@media(min-width:480px){.layout[data-schema-type=screening]{--base-font-size: 14px}}@media(min-width:768px){.layout[data-schema-type=screening]{--base-font-size: 15px}}@media(min-width:1024px){.layout[data-schema-type=screening]{--base-font-size: 16px}}@media(min-width:1440px){.layout[data-schema-type=screening]{--base-font-size: 17px}}@media(min-width:1920px){.layout[data-schema-type=screening]{--base-font-size: 18px}}.offline-banner{position:fixed;top:0;left:0;right:0;z-index:10001;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:#1f2937;color:#fff;font-family:Noto Sans,Helvetica Neue,Arial,sans-serif;font-size:calc(var(--base-font-size, 16px) * .875);font-weight:500;animation:offlineSlideDown .3s ease-out}.offline-banner--reconnected{background:#10b981;animation:offlineSlideDown .3s ease-out}.offline-banner__icon{display:flex;align-items:center;flex-shrink:0}.offline-banner__text{line-height:1.3}@keyframes offlineSlideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}
