/* Shared site navigation: homepage, checkout, order search and blog. */
.aisz-site-header,
.aisz-site-header * {
  box-sizing: border-box;
}

.aisz-site-header {
  position: sticky;
  top: 0;
  z-index: 1200;
  width: 100%;
  margin: 0;
  border-bottom: 1px solid rgba(231, 231, 238, .92);
  background: rgba(255, 255, 255, .96);
  color: #151b2c;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.aisz-site-header .aisz-header-inner {
  display: flex;
  width: 100%;
  max-width: 1280px;
  min-height: 74px;
  margin: 0 auto;
  padding: 10px 24px;
  align-items: center;
  gap: 24px;
}

.aisz-site-header .aisz-brand {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 10px;
  color: inherit;
  text-decoration: none;
}

.aisz-site-header .aisz-brand-mark {
  display: grid;
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  place-items: center;
  overflow: hidden;
  border-radius: 10px;
  background: #10002f url("/logo-aisz-20261107.webp?v=logo-20261107") center / cover no-repeat;
  box-shadow: 0 5px 13px rgba(105, 73, 225, .22);
  color: transparent;
  font-size: 0;
}

.aisz-site-header .aisz-brand-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  line-height: 1.08;
}

.aisz-site-header .aisz-brand-name {
  color: #5f35e0;
  font-size: 21px;
  font-weight: 850;
  letter-spacing: -.35px;
  white-space: nowrap;
}

.aisz-site-header .aisz-brand-name b {
  color: #8b6cf7;
  font-weight: 850;
}

.aisz-site-header .aisz-brand-sub {
  margin-top: 4px;
  color: #87899a;
  font-size: 11px;
  font-weight: 500;
  white-space: nowrap;
}

.aisz-site-header .aisz-nav {
  position: relative;
  display: flex;
  min-width: 0;
  margin-left: auto;
  align-items: center;
}

.aisz-site-header .aisz-nav-toggle {
  display: none;
  width: 44px;
  height: 44px;
  padding: 0;
  align-items: center;
  justify-content: center;
  border: 1px solid #eee8ff;
  border-radius: 12px;
  background: #fff;
  color: #ef8961;
  cursor: pointer;
}

.aisz-site-header .aisz-nav-toggle svg {
  width: 23px;
  height: 23px;
}

.aisz-site-header .aisz-nav-toggle .aisz-nav-close {
  display: none;
}

.aisz-site-header .aisz-nav.is-open .aisz-nav-toggle .aisz-nav-menu-icon {
  display: none;
}

.aisz-site-header .aisz-nav.is-open .aisz-nav-toggle .aisz-nav-close {
  display: block;
}

.aisz-site-header .aisz-nav-menu {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 2px;
  padding: 5px;
  border: 1px solid #eee8ff;
  border-radius: 14px;
  background: rgba(255, 255, 255, .95);
  box-shadow: 0 12px 34px -27px rgba(65, 45, 130, .75);
  white-space: nowrap;
}

.aisz-site-header .aisz-nav-link,
.aisz-site-header .aisz-nav-action {
  display: inline-flex;
  min-height: 39px;
  padding: 0 10px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #171e31;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition: color .18s ease, background .18s ease;
}

.aisz-site-header .aisz-nav-link svg,
.aisz-site-header .aisz-nav-action svg {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
}

.aisz-site-header .aisz-nav-link.is-home {
  color: #ef8961;
}

.aisz-site-header .aisz-nav-action.is-search {
  border: 1px solid #e8e6ed;
  background: #fff;
}

.aisz-site-header .aisz-nav-link:hover,
.aisz-site-header .aisz-nav-action:hover {
  background: #f7f4ff;
  color: #6a48f0;
  text-decoration: none;
}

.aisz-site-header .aisz-nav-actions {
  display: flex;
  margin-left: 3px;
  align-items: center;
  gap: 6px;
}

.aisz-site-header .aisz-nav-action.is-star {
  width: 39px;
  padding: 0;
  border: 1px solid #e8e6ed;
  border-radius: 50%;
  background: #fff;
  color: #101827;
}

.aisz-site-header .aisz-nav-action.is-star svg {
  fill: currentColor;
  stroke: currentColor;
}

.aisz-site-header .aisz-nav-link:focus-visible,
.aisz-site-header .aisz-nav-action:focus-visible,
.aisz-site-header .aisz-nav-toggle:focus-visible {
  outline: 3px solid rgba(124, 92, 245, .28);
  outline-offset: 2px;
}

.aisz-bookmark-overlay {
  position: fixed;
  inset: 0;
  z-index: 2100;
  display: none;
  padding: 20px;
  align-items: center;
  justify-content: center;
  background: rgba(18, 16, 31, .58);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}

.aisz-bookmark-overlay.is-open {
  display: flex;
}

.aisz-bookmark-dialog {
  position: relative;
  width: min(440px, 100%);
  padding: 28px;
  border: 1px solid rgba(231, 227, 248, .9);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 28px 90px -30px rgba(23, 14, 62, .62);
  color: #23283b;
  text-align: left;
}

.aisz-bookmark-close {
  position: absolute;
  top: 13px;
  right: 13px;
  display: grid;
  width: 34px;
  height: 34px;
  padding: 0;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: #f4f2fa;
  color: #666b7c;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}

.aisz-bookmark-title {
  margin: 0 42px 6px 0;
  color: #181d2d;
  font-size: 22px;
  font-weight: 850;
  line-height: 1.35;
}

.aisz-bookmark-desc {
  margin: 0 0 18px;
  color: #777b8d;
  font-size: 13.5px;
  line-height: 1.7;
}

.aisz-bookmark-shortcut {
  display: flex;
  margin: 0 0 8px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #6e7284;
  font-size: 15px;
}

.aisz-bookmark-shortcut kbd {
  min-width: 48px;
  padding: 8px 11px;
  border: 1px solid #dce9e9;
  border-bottom-width: 3px;
  border-radius: 9px;
  background: #f8fbfc;
  color: #3a4252;
  font-family: inherit;
  font-size: 16px;
  font-weight: 750;
  line-height: 1;
  text-align: center;
}

.aisz-bookmark-tip {
  margin: 0 0 16px;
  color: #8a8e9e;
  font-size: 12.5px;
  line-height: 1.65;
  text-align: center;
}

.aisz-bookmark-guide {
  display: grid;
  margin: 0 0 15px;
  gap: 7px;
  color: #666b7d;
  font-size: 12.5px;
  line-height: 1.55;
}

.aisz-bookmark-guide span {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.aisz-bookmark-guide b {
  display: grid;
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  background: #eee9ff;
  color: #6246d2;
  font-size: 11px;
}

.aisz-bookmark-label {
  display: block;
  margin-bottom: 7px;
  color: #6e7284;
  font-size: 12px;
  font-weight: 700;
}

.aisz-bookmark-row {
  display: flex;
  gap: 8px;
}

.aisz-bookmark-input {
  min-width: 0;
  height: 42px;
  flex: 1;
  padding: 0 12px;
  border: 1px solid #e1e4eb;
  border-radius: 10px;
  background: #f9fafb;
  color: #353a4a;
  font-family: inherit;
  font-size: 13px;
}

.aisz-bookmark-copy {
  height: 42px;
  padding: 0 15px;
  border: 0;
  border-radius: 10px;
  background: #171827;
  color: #fff;
  font-family: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
}

.aisz-bookmark-note {
  margin: 12px 0 0;
  color: #9a9dac;
  font-size: 11.5px;
  line-height: 1.6;
}

@media (max-width: 1100px) {
  .aisz-site-header .aisz-header-inner {
    min-height: 68px;
    padding: 9px 16px;
    gap: 14px;
  }

  .aisz-site-header .aisz-nav-toggle {
    display: inline-flex;
  }

  .aisz-site-header .aisz-nav-menu {
    position: fixed;
    top: 76px;
    right: 14px;
    z-index: 1201;
    display: none;
    width: min(350px, calc(100vw - 28px));
    max-height: calc(100vh - 90px);
    padding: 13px;
    overflow-y: auto;
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .99);
    box-shadow: 0 22px 60px -26px rgba(35, 24, 73, .55);
    transform-origin: top right;
  }

  .aisz-site-header .aisz-nav.is-open .aisz-nav-menu {
    display: flex;
    animation: aiszNavDrop .18s ease-out both;
  }

  .aisz-site-header .aisz-nav-link,
  .aisz-site-header .aisz-nav-action {
    min-height: 50px;
    padding: 0 14px;
    justify-content: flex-start;
    border-radius: 12px;
    font-size: 16px;
  }

  .aisz-site-header .aisz-nav-link svg,
  .aisz-site-header .aisz-nav-action svg {
    width: 21px;
    height: 21px;
  }

  .aisz-site-header .aisz-nav-actions {
    display: contents;
  }

  .aisz-site-header .aisz-nav-action.is-search {
    border-color: #e8e6ed;
  }

  .aisz-site-header .aisz-nav-action.is-star {
    width: auto;
    border-radius: 12px;
  }
}

@media (max-width: 520px) {
  .aisz-site-header .aisz-header-inner {
    padding-right: 12px;
    padding-left: 12px;
  }

  .aisz-site-header .aisz-brand {
    gap: 7px;
  }

  .aisz-site-header .aisz-brand-mark {
    width: 34px;
    height: 34px;
    border-radius: 9px;
  }

  .aisz-site-header .aisz-brand-name {
    font-size: 18px;
  }

  .aisz-site-header .aisz-brand-sub {
    font-size: 10px;
  }

  .aisz-bookmark-dialog {
    padding: 24px 20px 22px;
    border-radius: 19px;
  }

  .aisz-bookmark-title {
    font-size: 20px;
  }
}

@keyframes aiszNavDrop {
  from {
    opacity: 0;
    transform: translateY(-8px) scale(.985);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .aisz-site-header .aisz-nav.is-open .aisz-nav-menu {
    animation: none;
  }
}

.aisz-label-mobile {
  display: none;
}

@media (max-width: 720px) {
  .aisz-site-header .aisz-nav-toggle {
    display: none !important;
  }

  .aisz-site-header .aisz-nav-menu {
    position: static !important;
    display: flex !important;
    width: auto !important;
    max-height: none;
    padding: 0;
    overflow: visible;
    flex-direction: row;
    gap: 6px;
    border: 0;
    background: transparent;
    box-shadow: none;
    animation: none !important;
  }

  .aisz-site-header .aisz-nav-menu > .aisz-nav-link {
    display: none;
  }

  .aisz-site-header .aisz-nav-menu > .aisz-nav-link.is-home {
    display: inline-flex;
  }

  .aisz-site-header .aisz-nav-actions {
    display: flex !important;
    margin-left: 0;
    gap: 0;
  }

  .aisz-site-header .aisz-nav-action.is-star {
    display: none !important;
  }

  .aisz-site-header .aisz-nav-link.is-home,
  .aisz-site-header .aisz-nav-action.is-search {
    min-height: 36px;
    padding: 0 9px;
    font-size: 13px;
  }

  .aisz-site-header .aisz-nav-link.is-home svg,
  .aisz-site-header .aisz-nav-action.is-search svg {
    width: 17px;
    height: 17px;
  }

  .aisz-site-header .aisz-nav-action.is-search .aisz-label-desktop {
    display: none;
  }

  .aisz-site-header .aisz-nav-action.is-search .aisz-label-mobile {
    display: inline;
  }
}
