.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-stagger>*{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}.reveal-stagger.is-visible>:first-child{transition-delay:0s;opacity:1;transform:none}.reveal-stagger.is-visible>:nth-child(2){transition-delay:80ms;opacity:1;transform:none}.reveal-stagger.is-visible>:nth-child(3){transition-delay:.16s;opacity:1;transform:none}.reveal-stagger.is-visible>:nth-child(4){transition-delay:.24s;opacity:1;transform:none}.reveal-stagger.is-visible>:nth-child(5){transition-delay:.32s;opacity:1;transform:none}.reveal-stagger.is-visible>:nth-child(6){transition-delay:.4s;opacity:1;transform:none}.reveal--left{transform:translateX(-24px)}.reveal--left.is-visible{transform:translateX(0)}.reveal--scale{transform:scale(.96)}.reveal--scale.is-visible{transform:scale(1)}.hero-reveal{overflow:hidden;display:block}.hero-reveal__inner{display:block;animation:heroTextIn .9s cubic-bezier(.22,1,.36,1) both}.hero-reveal__inner--delay-1{animation-delay:.1s}.hero-reveal__inner--delay-2{animation-delay:.25s}.hero-reveal__inner--delay-3{animation-delay:.4s}.hero-reveal__inner--delay-4{animation-delay:.55s}.hero-reveal__inner--delay-5{animation-delay:.7s}@keyframes heroTextIn{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.line-reveal{-webkit-clip-path:inset(0 100% 0 0);clip-path:inset(0 100% 0 0);animation:lineReveal .8s cubic-bezier(.77,0,.175,1) forwards}@keyframes lineReveal{to{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}}.reading-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--color-accent),rgba(var(--color-accent-rgb),.5));z-index:9999;transition:width .1s linear;border-radius:0 2px 2px 0;pointer-events:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.section-heading-animated{position:relative;display:inline-block}.section-heading-animated:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--color-accent);transition:width .6s cubic-bezier(.22,1,.36,1)}.section-heading-animated.is-visible:after{width:100%}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.theme-toggle.is-transitioning .theme-toggle__icon{animation:spin .3s ease}.nav__item--has-children:focus-within>.nav__dropdown,.nav__item--has-children:hover>.nav__dropdown{animation:dropdownIn .18s ease both}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-6px) scaleY(.97)}to{opacity:1;transform:translateY(0) scaleY(1)}}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}@keyframes overlayOut{0%{opacity:1}to{opacity:0}}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}.skeleton{background:var(--color-bg-subtle);border-radius:var(--radius-sm);animation:skeleton-pulse 1.6s ease-in-out infinite}@keyframes scrollBounce{0%,to{transform:translateY(0);opacity:.6}50%{transform:translateY(6px);opacity:1}}.scroll-indicator{animation:scrollBounce 2s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.hero-reveal__inner,.line-reveal,.reading-progress,.reveal,.reveal-stagger>*,.section-heading-animated:after{transition:none;animation:none}.reveal,.reveal-stagger>*{opacity:1;transform:none}.line-reveal{-webkit-clip-path:none;clip-path:none}.section-heading-animated:after{width:100%}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-bg-subtle) 0,var(--color-bg) 100%);position:relative;overflow:hidden}.auth-page:after,.auth-page:before{content:"";position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;z-index:0;pointer-events:none}.auth-page:before{width:500px;height:500px;background:var(--color-accent-light);top:-100px;left:-100px}.auth-page:after{width:600px;height:600px;background:rgba(91,109,158,.1);bottom:-150px;right:-100px}[data-theme=dark] .auth-page:before{background:var(--color-accent-glow);opacity:.2}[data-theme=dark] .auth-page:after{background:rgba(114,188,240,.15);opacity:.2}.auth-container{width:100%;max-width:440px;padding:var(--space-xl);position:relative;z-index:1}.auth-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-2xl);box-shadow:0 12px 48px var(--color-shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.auth-header{text-align:center;margin-bottom:var(--space-xl)}.auth-logo{display:flex;justify-content:center;margin-bottom:var(--space-lg)}.auth-logo img{height:48px;width:auto}.auth-title{font-family:var(--font-serif);font-size:1.75rem;font-weight:700;color:var(--color-heading);margin:0 0 var(--space-xs)}.auth-subtitle{font-family:var(--font-ui);font-size:.95rem;color:var(--color-text-muted);margin:0}.auth-form{gap:var(--space-lg)}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:var(--space-xs)}.form-label{font-family:var(--font-ui);font-size:.85rem;font-weight:600;color:var(--color-text)}.form-input-wrapper{position:relative;display:flex;align-items:center}.form-input-icon{position:absolute;left:14px;color:var(--color-text-faint);display:flex;align-items:center;pointer-events:none}.form-input{width:100%;padding:.75rem 1rem .75rem 2.5rem;font-family:var(--font-ui);font-size:.95rem;color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);outline:none}.form-input:focus{border-color:var(--color-accent);background:var(--color-bg-card);box-shadow:0 0 0 3px var(--color-accent-light)}.form-input::placeholder{color:var(--color-text-faint)}.form-actions{justify-content:space-between;margin-top:-.5rem}.form-actions,.form-checkbox{display:flex;align-items:center}.form-checkbox{gap:.5rem;cursor:pointer}.form-checkbox input{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer}.form-checkbox label{color:var(--color-text-muted);cursor:pointer}.form-checkbox label,.form-link{font-family:var(--font-ui);font-size:.85rem}.form-link{font-weight:600;color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}.form-link:hover{color:var(--color-accent-hover);text-decoration:underline}.auth-submit-btn{width:100%;justify-content:center;padding:.85rem;font-size:1rem;margin-top:var(--space-sm)}.auth-footer{text-align:center;margin-top:var(--space-xl);font-family:var(--font-ui);font-size:.9rem;color:var(--color-text-muted)}.auth-footer a{font-weight:600;color:var(--color-accent);text-decoration:none}.auth-footer a:hover{color:var(--color-accent-hover);text-decoration:underline}@media (max-width:480px){.auth-container{padding:var(--space-md)}.auth-card{padding:var(--space-xl) var(--space-lg)}}.dashboard-layout{display:flex;min-height:125vh;background:var(--color-bg);zoom:.8}.dashboard-sidebar{width:260px;background:var(--color-bg-card);border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:125vh;z-index:40;transition:transform var(--transition-base)}.dashboard-sidebar__header{padding:var(--space-xl) var(--space-lg);display:flex;align-items:center;border-bottom:1px solid var(--color-border-light)}.dashboard-sidebar__logo{display:flex;align-items:center;gap:var(--space-sm);text-decoration:none}.dashboard-sidebar__logo img{height:32px;width:auto}.dashboard-sidebar__nav{flex:1 1;padding:var(--space-lg);overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-sm)}.dashboard-nav-section{margin-bottom:var(--space-md)}.dashboard-nav-title{font-family:var(--font-ui);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-faint);margin:0 0 var(--space-sm) var(--space-sm)}.dashboard-nav-item{display:flex;align-items:center;gap:var(--space-sm);padding:.75rem 1rem;border-radius:var(--radius-md);font-family:var(--font-ui);font-size:.9rem;font-weight:600;color:var(--color-text-muted);text-decoration:none;transition:all var(--transition-fast)}.dashboard-nav-item svg{width:18px;height:18px;opacity:.7;transition:opacity var(--transition-fast)}.dashboard-nav-item:hover{background:var(--color-bg-subtle);color:var(--color-heading)}.dashboard-nav-item:hover svg{opacity:1;color:var(--color-accent)}.dashboard-nav-item.is-active{background:linear-gradient(to right,var(--color-accent-light) 0,transparent 100%);color:var(--color-accent);border-left:3px solid var(--color-accent);padding-left:calc(1rem - 3px)}.dashboard-nav-item.is-active svg{opacity:1;color:var(--color-accent)}.dashboard-sidebar__footer{padding:var(--space-lg);border-top:1px solid var(--color-border-light)}.dashboard-user-profile{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.dashboard-user-profile:hover{background:var(--color-bg-subtle)}.dashboard-user-avatar{width:40px;height:40px;border-radius:50%;background:var(--color-accent-light);display:flex;align-items:center;justify-content:center;color:var(--color-accent);font-weight:700;font-size:1.1rem;flex-shrink:0}.dashboard-user-info{display:flex;flex-direction:column;overflow:hidden}.dashboard-user-name{font-family:var(--font-ui);font-size:.9rem;font-weight:700;color:var(--color-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-user-role{font-family:var(--font-ui);font-size:.75rem;color:var(--color-text-faint)}.dashboard-main{flex:1 1;display:flex;flex-direction:column;min-width:0;height:125vh;overflow-y:auto}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) var(--space-xl);background:hsla(0,0%,100%,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);position:-webkit-sticky;position:sticky;top:0;z-index:30}.dashboard-header__title{font-family:var(--font-serif);font-size:1.5rem;font-weight:700;color:var(--color-heading);margin:0}.dashboard-header__actions{display:flex;align-items:center;gap:var(--space-md)}.dashboard-content{padding:var(--space-2xl);flex:1 1}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:var(--space-xl);gap:var(--space-xl);margin-bottom:var(--space-xl)}.dashboard-grid--split{grid-template-columns:2fr 1fr}@media (max-width:992px){.dashboard-grid--split{grid-template-columns:1fr}}.stat-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);display:flex;align-items:flex-start;justify-content:space-between;box-shadow:0 4px 16px var(--color-shadow);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.stat-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px var(--color-shadow-md);border-color:var(--color-accent-light)}.stat-card__info{display:flex;flex-direction:column;gap:var(--space-xs)}.stat-card__label{font-family:var(--font-ui);font-size:.85rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.stat-card__value{font-family:var(--font-serif);font-size:2.5rem;font-weight:800;color:var(--color-heading);line-height:1}.stat-card__icon{width:48px;height:48px;border-radius:var(--radius-md);background:var(--color-accent-light);color:var(--color-accent);display:flex;align-items:center;justify-content:center}.stat-card__icon svg{width:24px;height:24px}.dashboard-mobile-toggle{display:none;background:transparent;border:none;color:var(--color-text);padding:var(--space-xs);cursor:pointer}@media (max-width:1024px){.dashboard-sidebar{position:fixed;left:0;transform:translateX(-100%)}.dashboard-sidebar.is-open{transform:translateX(0);box-shadow:4px 0 24px var(--color-shadow-md)}.dashboard-mobile-toggle{display:block}.dashboard-header{padding:var(--space-md) var(--space-lg)}.dashboard-content{padding:var(--space-lg)}}