:root{--z9-ease:cubic-bezier(.22,1,.36,1)}
@keyframes z9-reveal{from{opacity:0;translate:0 22px}to{opacity:1;translate:0 0}}
@keyframes z9-dialog{from{opacity:0;scale:.97}to{opacity:1;scale:1}}
@keyframes z9-ripple{from{opacity:.38;scale:0}to{opacity:0;scale:1}}
@keyframes z9-route{from{opacity:.35;translate:0 7px}to{opacity:1;translate:0 0}}
.z9-enter{animation:z9-reveal .65s var(--z9-ease) var(--z9-delay,0ms) both}
.z9-enter:focus-within{animation:none}
.btn,.primary,.light-button{position:relative;overflow:hidden;isolation:isolate;transition:background .2s,box-shadow .25s,translate .25s var(--z9-ease),border-color .2s}
.z9-ripple{position:absolute;width:240px;height:240px;margin:-120px;pointer-events:none;border-radius:50%;background:#fff;animation:z9-ripple .6s ease-out forwards}
.btn:active,.primary:active,.light-button:active{translate:0 1px}
.track-card,.course-card,.expert-card,.quick-grid a,.attention,.reg-plan,.application-card{transition:box-shadow .3s var(--z9-ease),translate .3s var(--z9-ease),border-color .25s,background .25s}
.hero-photo,.expert-avatar{transition:scale .75s var(--z9-ease)}
.btn svg,.text-link svg,.row-link svg{transition:translate .25s var(--z9-ease)}
input,select,textarea{transition:border-color .2s,box-shadow .2s,background .2s}
.reg-fields-area{animation:z9-route .35s var(--z9-ease)}
[role="dialog"][data-state="open"]{animation:z9-dialog .25s var(--z9-ease)}
[role="tabpanel"][data-state="active"]{animation:z9-route .3s var(--z9-ease)}
.notice,.success,.reg-complete{animation:z9-reveal .4s var(--z9-ease)}
.sidebar nav a{transition:background .2s,color .2s,box-shadow .2s,padding .2s}
.z9-scrolled .account-header,.z9-scrolled .reg-header{box-shadow:0 5px 25px #0f2a5510}
.z9-reading-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,#1677e6,#ff8a00);transform:scaleX(0);transform-origin:right;z-index:110;pointer-events:none}
.z9-back-top{position:fixed;bottom:24px;left:24px;width:44px;height:44px;display:grid;place-items:center;border-radius:14px;border:1px solid #ffffff60;background:#0f2a55;color:white;box-shadow:0 6px 20px #0f2a5526;z-index:40;cursor:pointer;transition:background .2s,translate .2s}
.z9-back-top[hidden]{display:none}.z9-back-top:focus-visible{outline:3px solid #ff8a00;outline-offset:4px}
@media(hover:hover) and (pointer:fine){.btn:hover,.primary:hover{translate:0 -2px;box-shadow:0 7px 19px #1677e626}.btn:hover svg,.text-link:hover svg{translate:-3px 0}.track-card:hover,.course-card:hover,.expert-card:hover{translate:0 -6px;box-shadow:0 18px 38px #0f2a5512;border-color:#a5c8f0}.quick-grid a:hover,.reg-plan:hover{translate:0 -3px;border-color:#8ebff4;box-shadow:0 8px 20px #0f2a550a}.hero-visual:hover .hero-photo{scale:1.035}.expert-card:hover .expert-avatar{scale:1.04}.attention:hover{background:#f4f7fb}.sidebar nav a:hover{padding-right:19px}.z9-back-top:hover{background:#1677e6;translate:0 -3px}tbody tr{transition:background .18s}tbody tr:hover{background:#f4f7fb}}
@media(max-width:600px){.z9-back-top{left:16px;bottom:16px;width:42px;height:42px}.z9-enter{animation-duration:.45s}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.z9-enter{opacity:1;translate:none}.z9-reading-progress{display:none}}
@keyframes z9-auth-reveal{from{opacity:0}to{opacity:1}}.auth-layout.z9-enter{animation-name:z9-auth-reveal}
