.typography{margin:0;padding:0}.text-color-primary{color:var(--color-text-primary)}.text-color-secondary{color:var(--color-text-secondary)}.text-color-tertiary{color:var(--color-text-tertiary)}.text-color-muted{color:var(--color-text-muted)}.text-color-accent{color:var(--color-accent-blue)}.text-color-success{color:var(--color-success)}.text-color-warning{color:var(--color-warning)}.text-color-error{color:var(--color-error)}
.btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-primary);font-weight:var(--font-weight-medium);white-space:nowrap;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-colors),var(--transition-transform);border:1px solid #0000;text-decoration:none;display:inline-flex}.btn:focus-visible{box-shadow:var(--focus-ring);outline:none}@media (hover:hover) and (pointer:fine){.btn:hover:not(:disabled){transform:translateY(-1px)}}.btn:active:not(:disabled){transform:translateY(0)}.btn--sm{height:var(--button-height-sm);padding:0 var(--space-3);font-size:var(--font-size-sm)}.btn--md{height:var(--button-height-md);padding:0 var(--space-4);font-size:var(--font-size-base)}.btn--lg{height:var(--button-height-lg);padding:0 var(--space-6);font-size:var(--font-size-lg)}.btn--primary{background-color:var(--color-text-primary);color:var(--color-bg-primary);border-color:var(--color-text-primary)}.btn--primary:hover:not(:disabled){background-color:var(--color-text-secondary);border-color:var(--color-text-secondary)}.btn--secondary{color:var(--color-text-primary);border-color:var(--color-border-primary);background-color:#0000}.btn--secondary:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:var(--color-border-accent)}.btn--outline{color:var(--color-text-primary);border-color:var(--color-text-primary);background-color:#0000}.btn--outline:hover:not(:disabled){background-color:var(--color-text-primary);color:var(--color-bg-primary)}.btn--ghost{color:var(--color-text-secondary);background-color:#0000;border-color:#0000}.btn--ghost:hover:not(:disabled){background-color:var(--color-bg-hover);color:var(--color-text-primary)}.btn--accent{background-color:var(--color-accent-blue);color:var(--color-text-primary);border-color:var(--color-accent-blue)}.btn--accent:hover:not(:disabled){background-color:var(--color-accent-blue-hover);border-color:var(--color-accent-blue-hover)}.btn--disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn--disabled:hover{transform:none!important}
.navbar{z-index:var(--z-sticky);-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:1px solid #0000;transition:background-color .4s cubic-bezier(.25,.46,.45,.94),-webkit-backdrop-filter .4s cubic-bezier(.25,.46,.45,.94),backdrop-filter .4s cubic-bezier(.25,.46,.45,.94),border-color .4s cubic-bezier(.25,.46,.45,.94),box-shadow .4s cubic-bezier(.25,.46,.45,.94);position:fixed;top:0;left:0;right:0}.navbar--scrolled{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0a0acc;border-bottom:1px solid #ffffff1a;box-shadow:0 4px 16px #0003}.navbar--scrolled.navbar--mobile-menu-open{border-bottom:1px solid #0000}.navbar__content{height:var(--nav-height);z-index:2;justify-content:space-between;align-items:center;display:flex;position:relative}.navbar__logo{cursor:pointer;transition:var(--transition-colors);background:0 0;border:none;padding:0}@media (hover:hover) and (pointer:fine){.navbar__logo:hover .navbar__logo-text{color:var(--color-accent-blue)}}.navbar__logo-text{font-family:var(--font-brand);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight)}.navbar__nav--desktop{align-items:center;gap:var(--space-2);display:flex}.navbar__link{transition:var(--transition-colors)}@media (hover:hover) and (pointer:fine){.navbar__link:hover{color:var(--color-text-primary);background:0 0!important}}.navbar__mobile-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:44px;height:44px;padding:0;display:none}.navbar__mobile-toggle-line{background:var(--color-text-primary);width:20px;height:2px;transition:var(--transition-all);transform-origin:50%}.navbar__mobile-toggle--open .navbar__mobile-toggle-line:first-child{transform:rotate(45deg)translate(4px,3px)}.navbar__mobile-toggle--open .navbar__mobile-toggle-line:nth-child(2){opacity:0}.navbar__mobile-toggle--open .navbar__mobile-toggle-line:nth-child(3){transform:rotate(-45deg)translate(4px,-3px)}.navbar__mobile-menu{max-height:0;transition:max-height var(--duration-slow)var(--ease-out);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0a0af2;display:none;overflow:hidden}.navbar__mobile-menu--open{border-bottom:1px solid #ffffff1a;max-height:300px}.navbar__mobile-nav{gap:var(--space-2);padding:var(--space-4)0;border-top:1px solid #ffffff26;flex-direction:column;display:flex}.navbar__mobile-link{width:100%;font-weight:var(--font-weight-medium);justify-content:flex-start}@media (max-width:768px){.navbar__content{height:var(--nav-height-mobile);justify-content:space-between}.navbar__nav--desktop{display:none}.navbar__mobile-toggle{display:flex}.navbar__mobile-menu{display:block}.navbar__logo{display:flex}.navbar__logo-text{font-size:var(--font-size-lg)}}.navbar__logo:focus-visible,.navbar__mobile-toggle:focus-visible{outline:2px solid var(--color-accent-blue);outline-offset:2px;border-radius:var(--radius-sm)}
