/* ==========================================================================
   Size Guide — "Size Guide" link + header row above the size buttons,
   model info line below them, and the slide-in "Find Your Size" drawer.
   ========================================================================== */

.omh-size-head{
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 0.5rem;
}
.omh-size-head .omh-size-label{
  font-size: 0.68rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--color-ink-soft);
}
.omh-size-guide-link{
  background: none; border: none; padding: 0; cursor: pointer;
  font-family: var(--font-ui); font-size: 0.72rem; color: var(--color-ink);
  text-decoration: underline; text-underline-offset: 2px;
}
.omh-size-guide-link:hover{ color: var(--color-ink-soft); }

.omh-model-info{
  font-size: 0.76rem; color: var(--color-ink-soft); margin-top: 0.6rem; font-style: italic;
}

/* Drawer */
.omh-size-drawer{ position: fixed; inset: 0; z-index: 9999; visibility: hidden; pointer-events: none; }
.omh-size-drawer.is-open{ visibility: visible; pointer-events: auto; }

.omh-size-drawer-overlay{
  position: absolute; inset: 0; background: rgba(26,26,24,0.4);
  opacity: 0; transition: opacity 0.3s var(--ease);
}
.omh-size-drawer.is-open .omh-size-drawer-overlay{ opacity: 1; }

.omh-size-drawer-panel{
  position: absolute; top: 0; right: 0; bottom: 0; width: 100%; max-width: 420px;
  background: var(--color-bg); padding: 2.5rem 2rem; overflow-y: auto;
  transform: translateX(100%); transition: transform 0.35s var(--ease);
  box-shadow: -20px 0 50px rgba(20,19,17,0.15);
}
.omh-size-drawer.is-open .omh-size-drawer-panel{ transform: translateX(0); }

.omh-size-drawer-close{
  position: absolute; top: 1.5rem; right: 1.5rem; background: none; border: none;
  font-size: 1.6rem; line-height: 1; cursor: pointer; color: var(--color-ink); padding: 0.3rem;
}
.omh-size-drawer-title{
  font-family: var(--font-display); font-weight: 400; font-size: 1.2rem;
  letter-spacing: 0.04em; margin: 0 0 1.8rem;
}
.omh-size-table{ width: 100%; border-collapse: collapse; }
.omh-size-table th, .omh-size-table td{
  padding: 0.7rem 0.5rem; text-align: left; font-size: 0.85rem; border-bottom: 1px solid var(--color-line);
}
.omh-size-table th{ font-size: 0.64rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--color-ink-soft); font-weight: 500; }

@media (max-width: 480px){
  .omh-size-drawer-panel{ max-width: 100%; padding: 2rem 1.4rem; }
}
