.gibous-size-rec{display:block;margin:0 0 16px}
.gibous-size-rec[hidden]{display:none}
.gibous-size-rec__trigger{min-height:64px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px 11px 14px;border:1px solid rgb(var(--text-color)/.32);background:linear-gradient(115deg,rgb(var(--text-color)/.055),transparent 68%);color:inherit;font:inherit;text-align:left;transition:border-color .18s ease,background-color .18s ease}
.gibous-size-rec__trigger:hover{border-color:rgb(var(--text-color)/.62);background-color:rgb(var(--text-color)/.035)}
.gibous-size-rec__trigger:focus-visible{outline:2px solid rgb(var(--text-color));outline-offset:2px}
.gibous-size-rec__trigger-copy{display:block;min-width:0}
.gibous-size-rec__trigger-copy strong,.gibous-size-rec__trigger-copy small{display:block;font-weight:400}
.gibous-size-rec__trigger-copy strong{font-size:13px;letter-spacing:.06em}
.gibous-size-rec__trigger-copy small{margin-top:4px;color:rgb(var(--text-color)/.58);font-size:10px;letter-spacing:.025em}
.gibous-size-rec__trigger-arrow{width:30px;height:30px;display:flex;flex:none;align-items:center;justify-content:center;border:1px solid rgb(var(--text-color)/.3);border-radius:50%}
.gibous-size-rec__trigger-arrow .icon{opacity:.82}
.gibous-size-rec__dialog{width:min(560px,calc(100% - 32px));max-width:none;max-height:min(760px,calc(100dvh - 40px));margin:auto;padding:0;border:1px solid rgb(var(--text-color)/.28);background:rgb(var(--background));color:rgb(var(--text-color));overflow:hidden}
.gibous-size-rec__dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(2px)}
.gibous-size-rec__panel{display:flex;max-height:inherit;flex-direction:column}
.gibous-size-rec__header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 24px 18px;border-bottom:1px solid rgb(var(--text-color)/.18)}
.gibous-size-rec__header h2{margin:2px 0 0;font-size:20px;font-weight:400;letter-spacing:.06em}
.gibous-size-rec__kicker{margin:0;color:rgb(var(--text-color)/.55);font-size:10px;letter-spacing:.22em}
.gibous-size-rec__close{width:44px;height:44px;margin:-10px -10px 0 0;border:0;background:transparent;color:inherit;font-size:28px;font-weight:200;line-height:1}
.gibous-size-rec__body{padding:22px 24px 26px;overflow:auto;overscroll-behavior:contain}
.gibous-size-rec__intro{margin:0 0 20px;color:rgb(var(--text-color)/.72);font-size:13px;line-height:1.75}
.gibous-size-rec__field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gibous-size-rec__field label,.gibous-size-rec__preference legend{display:block;margin:0 0 8px;font-size:13px}
.gibous-size-rec__field label small{margin-left:5px;color:rgb(var(--text-color)/.55);font-size:10px}
.gibous-size-rec__number{display:flex;align-items:center;border:1px solid rgb(var(--text-color)/.34);background:rgb(var(--text-color)/.035)}
.gibous-size-rec__number:focus-within{border-color:rgb(var(--text-color)/.9);outline:1px solid rgb(var(--text-color)/.9)}
.gibous-size-rec__number input{min-width:0;width:auto;flex:1 1 auto;height:48px;padding:0 12px;border:0;background:transparent;color:inherit;font:inherit;font-size:16px;outline:0;appearance:textfield}
.gibous-size-rec__number input::-webkit-inner-spin-button{appearance:none}
.gibous-size-rec__number span{width:46px;height:32px;display:flex;flex:0 0 46px;align-items:center;justify-content:center;border-left:1px solid rgb(var(--text-color)/.18);color:rgb(var(--text-color)/.62);font-size:11px;line-height:1;letter-spacing:.04em;white-space:nowrap}
.gibous-size-rec__preference{margin:20px 0 0;padding:0;border:0}
.gibous-size-rec__choices{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.gibous-size-rec__choices label{position:relative}
.gibous-size-rec__choices input{position:absolute;opacity:0;pointer-events:none}
.gibous-size-rec__choices span{min-height:46px;display:flex;align-items:center;justify-content:center;border:1px solid rgb(var(--text-color)/.34);font-size:12px;cursor:pointer}
.gibous-size-rec__choices input:checked+span{border-color:rgb(var(--text-color));background:rgb(var(--text-color));color:rgb(var(--background))}
.gibous-size-rec__choices input:focus-visible+span{outline:2px solid rgb(var(--text-color));outline-offset:2px}
.gibous-size-rec__waist{margin-top:20px;padding-top:18px;border-top:1px solid rgb(var(--text-color)/.16)}
.gibous-size-rec__waist>p{margin:0 0 10px;color:rgb(var(--text-color)/.65);font-size:11px;line-height:1.65}
.gibous-size-rec__waist .gibous-size-rec__caution{margin:8px 0 0}
.gibous-size-rec__error{margin:6px 0 0;color:#d96b6b;font-size:11px;line-height:1.5}
.gibous-size-rec__storage{margin:18px 0 10px;color:rgb(var(--text-color)/.55);font-size:10px}
.gibous-size-rec__primary{min-height:50px;width:100%;border:1px solid rgb(var(--text-color));background:rgb(var(--text-color));color:rgb(var(--background));font:inherit;font-size:13px;letter-spacing:.04em}
.gibous-size-rec__clear,.gibous-size-rec__change{min-height:44px;width:100%;margin-top:7px;border:0;background:transparent;color:rgb(var(--text-color)/.68);font:inherit;font-size:11px;text-decoration:underline;text-underline-offset:4px}
.gibous-size-rec__result-label{margin:0 0 3px;color:rgb(var(--text-color)/.58);font-size:11px;letter-spacing:.08em}
.gibous-size-rec__result-size{margin:0 0 14px;font-size:30px;letter-spacing:.05em}
.gibous-size-rec__result-reason{margin:0;font-size:14px;line-height:1.8}
.gibous-size-rec__alternative,.gibous-size-rec__soldout,.gibous-size-rec__note{margin:16px 0 0;padding:12px 14px;border-left:2px solid rgb(var(--text-color)/.55);background:rgb(var(--text-color)/.045);font-size:12px;line-height:1.75}
.gibous-size-rec__soldout{border-left-color:#d96b6b}
.gibous-size-rec__note{border:0;background:transparent;padding:0;color:rgb(var(--text-color)/.62);font-size:11px}
.gibous-size-rec__snap{margin:20px 0;padding-top:18px;border-top:1px solid rgb(var(--text-color)/.16)}
.gibous-size-rec__snap-label{margin:0 0 10px;font-size:11px;letter-spacing:.06em}
.gibous-size-rec__snap a{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:14px;color:inherit;text-decoration:none}
.gibous-size-rec__snap img{width:72px;height:90px;object-fit:cover;background:rgb(var(--text-color)/.08)}
.gibous-size-rec__snap strong,.gibous-size-rec__snap small{display:block;font-size:12px;font-weight:400;line-height:1.6}
.gibous-size-rec__snap small{color:rgb(var(--text-color)/.58);font-size:10px}
.gibous-size-rec__result .gibous-size-rec__primary{margin-top:22px}
.gibous-size-rec__size-link{min-height:44px;display:flex;align-items:center;justify-content:center;margin-top:7px;color:inherit;font-size:11px;text-decoration:underline;text-underline-offset:4px}
.gibous-size-rec-modal-open{overflow:hidden}
.gibous-size-rec-modal-open .gibous-pdp__sticky{display:none!important}
@media(max-width:699px){
  .gibous-size-rec__dialog{width:100%;max-height:min(82dvh,760px);margin:auto 0 0;border-width:1px 0 0}
  .gibous-size-rec__panel{max-height:min(82dvh,760px)}
  .gibous-size-rec__header{padding:20px 20px 15px}
  .gibous-size-rec__body{padding:18px 20px calc(22px + env(safe-area-inset-bottom))}
}
@media(max-width:359px){
  .gibous-size-rec__field-grid{grid-template-columns:1fr}
  .gibous-size-rec__choices{gap:5px}
  .gibous-size-rec__choices span{font-size:11px}
}
@media(prefers-reduced-motion:no-preference){
  .gibous-size-rec__dialog[open]{animation:gibous-size-rec-in .18s ease-out}
  @keyframes gibous-size-rec-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
}
