.ire-product-size-heading > [data-ire-size-guide] { color: #a31e2e; font-size: 14px; font-weight: 600; }
.ire-size-guide { box-sizing: border-box; width: min(560px, calc(100% - 24px)); max-height: calc(100dvh - 32px); padding: 0; border: 0; border-radius: 12px; background: #fff; color: #302b27; box-shadow: 0 20px 80px #0003; overflow: auto; }
.ire-size-guide::backdrop { background: #0007; }
.ire-size-guide__header { position: sticky; top: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 24px; background: #fff; border-bottom: 1px solid #e8e2dc; }
.ire-size-guide__header h2 { margin: 0; font-size: 24px; line-height: 1.25; }
.ire-size-guide__header button { flex-shrink: 0; width: 44px; height: 44px; border: 0; border-radius: 50%; background: #faf9f7; color: #302b27; font-size: 28px; cursor: pointer; }
.ire-size-guide__body { padding: 16px 24px 24px; font-size: 15px; line-height: 1.6; }
.ire-size-guide__body > p:first-child { margin-top: 0; }
.ire-size-guide table { width: 100%; border-collapse: collapse; font-size: 15px; }
.ire-size-guide caption { text-align: left; font-size: 13px; color: #655e56; padding-bottom: 8px; }
.ire-size-guide th, .ire-size-guide td { padding: 9px 12px; text-align: left; border-bottom: 1px solid #eee8e2; }
.ire-size-guide thead { background: #f4f1ed; }
.ire-size-guide tbody th { font-weight: 500; }
.ire-size-guide tbody tr:nth-child(even) { background: #faf9f7; }
.ire-size-guide h3 { font-size: 18px; margin: 24px 0 8px; }
.ire-size-guide a { color: #a31e2e; text-underline-offset: 3px; }
html.ire-size-guide-open { overflow: hidden; }
@media (max-width: 480px) {
	.ire-size-guide__header { padding: 12px 16px; }
	.ire-size-guide__header h2 { font-size: 22px; }
	.ire-size-guide__body { padding: 16px; }
}
