#kabooki-size-guide{box-sizing:border-box;padding:0;border:0;background:#fff;color:#000;font-family:inherit;max-width:none}#kabooki-size-guide::backdrop{background:#0007}#kabooki-size-guide.quick-guide::backdrop{background:transparent}#kabooki-size-guide *{box-sizing:border-box}#kabooki-size-guide button{font-family:inherit;cursor:pointer}#kabooki-size-guide button:disabled{cursor:not-allowed}#kabooki-size-guide button:focus-visible,.ig-toggle:focus-visible{outline:2px solid #3e382d;outline-offset:2px}
/* Integrated reference layout: measurements above a persistent size selector. */
.ig-toggle{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:2px 0;font:inherit;font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px;color:#000}
.ig-tape{width:25px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;flex-shrink:0}
.ig-entry-tab{display:flex;justify-content:flex-end;margin-top:-12px;margin-bottom:10px}
.ig-entry-tab .ig-toggle{background:white;border:1px solid #e5e5e1;border-bottom:0;padding:5px 9px;margin-top:-27px;position:relative}
.quick-purchase__guide,.replica-mobile-guide-row{padding:0 0 8px}
#kabooki-size-guide.integrated-guide{display:none;padding:0;overflow:hidden;position:fixed;font-family:inherit;color:#000}
#kabooki-size-guide.integrated-guide[open]{display:flex;flex-direction:column}
#kabooki-size-guide.integrated-guide .ig-close{position:absolute;top:14px;right:14px;z-index:2;width:32px;height:32px;border:0;background:white;font-size:24px;cursor:pointer;line-height:1}
.ig-content{padding:24px 16px 8px;overflow:auto;flex:1 1 auto;min-height:0;overscroll-behavior:contain}
.ig-overview{display:grid;grid-template-columns:42% 1fr;gap:12px;align-items:start}
.ig-person{position:relative;width:100%;aspect-ratio:180/420;overflow:hidden;justify-self:center;align-self:center}
.ig-person img{display:block;position:static;width:100%;max-width:100%;height:auto}
#kabooki-size-guide .ig-measurements h2{font-size:23px;line-height:1.1;margin:0 24px 4px 0;text-transform:uppercase}
#kabooki-size-guide .ig-age{margin:0 0 16px;font-size:11px;line-height:1.2;text-transform:uppercase;letter-spacing:.5px;color:#555}
.ig-measurements dl{margin:0;border:1px solid #eeede9;border-radius:10px;overflow:hidden}
.ig-measurements dl>div{display:grid;grid-template-columns:1.35fr 1fr;align-items:center;min-height:51px;border-bottom:1px solid #eeede9}
.ig-measurements dl>div:last-child{border-bottom:0}
.ig-measurements dt{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;padding:8px}
.ig-measurements dt span{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#000;color:white;font-size:11px;flex-shrink:0}
.ig-measurements dd{margin:0;padding:4px 6px;text-align:center;border-left:1px solid #eeede9;white-space:nowrap}
.ig-measurements dd strong{font-size:16px}.ig-measurements dd small{font-size:11px}
.ig-instruction{display:flex;align-items:center;gap:16px;background:#f6f6f5;border-radius:12px;padding:14px;margin-top:14px}
.ig-instruction>.ig-tape{width:40px;height:36px}
.ig-instruction strong{font-size:11px;text-transform:uppercase}
#kabooki-size-guide .ig-instruction p{font-size:12px;line-height:1.4;margin:4px 0 0}
#kabooki-size-guide .ig-demo{font-size:9px;color:#828282;margin:7px 0 0}
.ig-picker{flex:0 0 auto;padding:12px 15px;background:#fff}
.ig-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:16px;font-weight:500}
#kabooki-size-guide .ig-sizes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));max-width:none;width:100%;padding:10px 0 0;margin:0}
#kabooki-size-guide .ig-sizes .add-to-basket__btn{height:44px;min-width:0;font-size:16px}
.ig-add-row{display:flex;justify-content:flex-end;align-items:center;min-height:40px;margin-top:8px}
#kabooki-size-guide .ig-add{border:0;background:#e8af5a;color:#fff;text-transform:uppercase;padding:10px 17px;font-size:13px;line-height:1;cursor:pointer;min-height:36px}
.ig-prompt{font-size:11px;color:#828282}
.ig-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(min-width:985px){#kabooki-size-guide.integrated-guide{width:min(560px,46vw);margin:0 0 0 auto;height:100dvh;max-height:100dvh;border-radius:0}.ig-content{padding:30px 24px 12px}.ig-measurements dl>div{min-height:62px}.ig-measurements dt{font-size:13px}.ig-measurements dd strong{font-size:18px}}
@media(max-width:984px){#kabooki-size-guide.integrated-guide,#kabooki-size-guide.integrated-guide.quick-guide{margin:0;top:auto;right:0;bottom:62px;left:0;width:100%;height:calc(100dvh - 106px);max-height:calc(100dvh - 106px);border-radius:18px 18px 0 0}.ig-measurements dt{gap:5px;padding:7px 5px;font-size:10px}.ig-content{padding-top:24px}.ig-measurements dl>div{min-height:48px}#kabooki-size-guide .ig-measurements h2{font-size:21px}}
@media(max-width:984px) and (max-height:800px){.ig-measurements dl>div{min-height:40px}#kabooki-size-guide .ig-age{margin-bottom:10px}.ig-content{padding-top:20px}.ig-instruction{padding:10px;margin-top:10px}}
/* No suggested/default size: measurements appear only after an explicit choice. */
#kabooki-size-guide.integrated-guide.ig-awaiting-size{height:auto}
#kabooki-size-guide .ig-empty{text-align:center;padding:18px 8px 22px}
#kabooki-size-guide .ig-empty>.ig-tape{width:42px;height:36px;margin-bottom:12px}
#kabooki-size-guide .ig-empty h2{font-size:23px;margin:0 0 12px}
#kabooki-size-guide .ig-empty p{font-size:15px;line-height:1.5;margin:0;color:#555}
#kabooki-size-guide .ig-chosen{margin-right:auto;font-size:12px;color:#555}
#kabooki-size-guide.ig-awaiting-size .ig-add-row{min-height:0;margin-top:0}
@media(min-width:985px){#kabooki-size-guide.integrated-guide.ig-awaiting-size{height:100dvh}.ig-awaiting-size .ig-content{display:grid;place-items:center}}
/* Fit the guide to its content and reveal the product above it. */
#kabooki-size-guide.integrated-guide,
#kabooki-size-guide.integrated-guide.ig-awaiting-size{height:auto;top:auto;bottom:0;margin:0 0 0 auto;max-height:calc(100dvh - 48px);border-radius:18px 18px 0 0}
#kabooki-size-guide.integrated-guide .ig-content{flex:0 1 auto;display:block}
@media(max-width:984px){#kabooki-size-guide.integrated-guide,#kabooki-size-guide.integrated-guide.quick-guide,#kabooki-size-guide.integrated-guide.ig-awaiting-size{bottom:62px;max-height:calc(100dvh - 106px);margin:0}}
.ig-matrix-action{display:flex;align-items:center;justify-content:flex-end;min-height:44px;padding-left:8px}
/* Keep the backdrop alive until the existing quick-add slide-out finishes. */
.product-quick-add{transition:visibility 0s linear .35s}
.product-quick-add.product-quick-add--open{transition-delay:0s}
.ig-sizes .add-to-basket__btn,.quick-purchase .add-to-basket__btn{transition:background-color .18s,color .18s,box-shadow .18s}
#js-product-slider .swiper-wrapper{transition:transform .3s ease}
@media(prefers-reduced-motion:reduce){.product-quick-add,.product-quick-add *,.add-to-basket__sticky,.add-to-basket__sticky *,#kabooki-size-guide,#kabooki-size-guide *,#js-product-slider .swiper-wrapper{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Attach the guide tab exactly to the top edge of the mobile purchase panel. */
@media(max-width:984px){
  .add-to-basket__sticky > .ig-entry-tab{position:absolute;right:15px;bottom:100%;margin:0;}
  .add-to-basket__sticky > .ig-entry-tab .ig-toggle{margin:0;}
}
/* Keep the mobile navigation outside the guide's dimmed backdrop. */
@media(max-width:984px){
  #kabooki-size-guide::backdrop{bottom:calc(62px + env(safe-area-inset-bottom,0px));}
}
/* Align the quick-add guide tab with the purchase layer on both screen sizes. */
.quick-purchase > .ig-entry-tab{position:absolute;right:15px;bottom:100%;margin:0;}
.quick-purchase > .ig-entry-tab .ig-toggle{margin:0;}
.product-quick-add__description--preview .product-quick-add__description-content{max-height:none}
.product-quick-add__description--preview:not(.product-quick-add__description--open) .product-quick-add__description-content > :not(:first-child){display:none}
.product-quick-add__description-toggle[hidden]{display:none}
/* Match the normal purchase-step typography while keeping the compact, price-free button. */
#kabooki-size-guide .ig-add{font-family:inherit;font-size:18px;font-weight:500;line-height:18px;color:#fff;text-transform:uppercase;white-space:nowrap}
/* Cast the guide's top shadow only within the quick-add sidebar width. */
#kabooki-size-guide.integrated-guide.quick-guide{
  box-shadow:0 -6px 18px rgba(62,56,45,.08);
  clip-path:inset(-24px 0 0 0);
}
#kabooki-size-guide.desktop-size-guide{position:fixed;inset:0;margin:auto;width:min(980px,94vw);height:fit-content;max-height:90dvh;border-radius:16px;overflow:auto;box-shadow:0 15px 60px #0002}
.dg-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 28px 18px;border-bottom:1px solid #e5e5e1;position:sticky;top:0;background:white;z-index:2}
#kabooki-size-guide .dg-header h2{margin:6px 0;font-size:28px}#kabooki-size-guide .dg-header p{margin:0;font-size:13px}.dg-style{color:#777}
.dg-close{border:0;background:white;font-size:28px;width:36px;height:36px;cursor:pointer}
.dg-body{padding:20px 28px 28px}.dg-intro{display:flex;align-items:center;gap:24px;margin-bottom:18px}.dg-intro img{width:78px;height:180px;object-fit:contain}.dg-intro>div{max-width:650px}
#kabooki-size-guide .dg-intro h3{font-size:18px;margin-bottom:8px}#kabooki-size-guide .dg-intro p{font-size:14px}
.dg-controls{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-bottom:10px}.dg-controls button{background:white;border:1px solid #e5e5e1;padding:6px 12px;cursor:pointer}.dg-controls button[aria-pressed=true]{background:#3e382d;color:white}
.dg-table{overflow:auto}.dg-table table{width:100%;border-collapse:collapse;text-align:center;font-size:14px;white-space:nowrap}.dg-table caption{text-align:left;font-size:11px;color:#777;padding-bottom:10px}.dg-table th,.dg-table td{padding:10px 12px;border-bottom:1px solid #e5e5e1}.dg-table thead{background:#f8f6f1}.dg-table tbody th{text-align:left}.dg-table tr.dg-selected{background:#f5f0e3}
#kabooki-size-guide .dg-close{font-size:28px;line-height:1}
/* Desktop overview shares the visual language of the single-size guide. */
#kabooki-size-guide.desktop-size-guide{width:min(1160px,95vw);border-radius:18px;background:#fff}
#kabooki-size-guide.desktop-size-guide .dg-close{position:absolute;right:16px;top:16px;z-index:3;font-size:24px}
.dg-body.dg-matching{display:grid;grid-template-columns:190px minmax(0,1fr);gap:20px 26px;padding:28px 24px 24px}
.dg-figure{padding-top:4px}.dg-figure img{display:block;width:100%;height:auto;border-radius:18px}
#kabooki-size-guide .dg-measurements h2{font-size:25px;line-height:1.1;margin:0 30px 6px 0}
#kabooki-size-guide .dg-measurements .dg-style{font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin:0 0 16px;color:#555}
.dg-measurements .dg-controls{font-size:12px;margin-bottom:12px}.dg-measurements .dg-controls button{font-size:12px}
.dg-measurements .dg-table{border:1px solid #eeede9;border-radius:10px;overflow:auto}
#kabooki-size-guide .dg-table table{font-size:13px}.dg-table thead{background:#fff}
#kabooki-size-guide .dg-table th,#kabooki-size-guide .dg-table td{padding:10px 8px;border-bottom:1px solid #eeede9;color:#000}
#kabooki-size-guide .dg-table thead th{font-size:10px;font-weight:700;white-space:normal;vertical-align:top;text-align:center;max-width:100px}
#kabooki-size-guide .dg-table tbody td+td{border-left:1px solid #f3f2ef;font-weight:700}
#kabooki-size-guide .dg-table tbody td:nth-child(2){font-weight:400;color:#666}
#kabooki-size-guide .dg-table tbody tr:last-child>*{border-bottom:0}
.dg-marker{display:flex;align-items:center;justify-content:center;width:18px;height:18px;margin:0 auto 6px;border-radius:50%;background:#000;color:white;font-size:11px}
.dg-table-caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.dg-instruction{grid-column:1/-1;margin-top:0}.dg-instruction .ig-tape{width:40px;height:36px}
@media(max-width:1100px){.dg-body.dg-matching{grid-template-columns:140px minmax(0,1fr);gap:18px;padding:24px 18px}.dg-measurements .dg-table{overflow:auto}}
/* Full-height illustration beside the table and its matching-width instruction. */
.dg-body.dg-matching{grid-template-columns:260px minmax(0,1fr);grid-template-rows:auto auto}
.dg-matching .dg-figure{grid-column:1;grid-row:1 / 3;position:relative;align-self:stretch;padding:0;background:#f8f6f1;border-radius:18px;overflow:hidden}
.dg-matching .dg-figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;border-radius:0}
.dg-matching .dg-measurements{grid-column:2;grid-row:1;min-width:0}
.dg-matching .dg-instruction{grid-column:2;grid-row:2;width:100%;box-sizing:border-box}
#kabooki-size-guide .dg-table table{table-layout:fixed;width:100%}
#kabooki-size-guide .dg-table th,#kabooki-size-guide .dg-table td,#kabooki-size-guide .dg-table thead th,#kabooki-size-guide .dg-table tbody th{width:auto;max-width:none;text-align:center;vertical-align:middle;white-space:normal;overflow-wrap:anywhere}
@media(max-width:1100px){.dg-body.dg-matching{grid-template-columns:210px minmax(0,1fr)}}
/* Keep the page width unchanged while a modal locks background scrolling. */
html{scrollbar-gutter:stable}

/* Supplied photographs include their own measurement markers. */
.dg-matching .dg-figure{background:#fff}

.guide-load-error{position:fixed;top:0;left:0;right:0;z-index:1000000;background:#fff3db;color:#302f27;padding:12px 20px;margin:0;font:14px Arial,sans-serif}
#kabooki-size-guide .dg-table tbody td{font-weight:700;color:#000;border-left:1px solid #f3f2ef}
#kabooki-size-guide .dg-table tbody td.dg-age{font-weight:400;color:#666}

.add-to-basket__variant-header > .ig-toggle{margin-left:auto;font-size:13px}
.sg-quick-panel{display:flex!important;flex-direction:column;overflow:hidden!important;padding:0!important}
.sg-quick-panel .sg-quick-scroll{flex:1;min-height:0;overflow:auto;scrollbar-gutter:stable}
.quick-purchase{flex:none;position:relative;z-index:4;padding:12px 15px;background:#fff;border-top:1px solid #e5e5e1;box-shadow:0 -6px 18px #3e382d14}
.quick-purchase button{font-family:inherit;cursor:pointer}.quick-purchase .sg-primary{width:100%;background:#fff;border:1px solid #e8af5a;padding:16px;font-size:18px;color:#000}
.quick-purchase .sg-actions{display:flex;gap:10px}.quick-purchase .sg-back{background:#fff;border:1px solid #e5e5e1;min-width:80px;font-size:18px}.quick-purchase .product-quick-add__submit{margin:0;flex:1;font-size:18px;color:#fff}
.quick-purchase .sg-native-sizes{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:10px 0 0}.quick-purchase .sg-native-sizes button{height:44px;border:1px solid #e5e5e1;margin:-1px 0 0 -1px}
.quick-purchase[data-step=choose] > :not(.sg-choose):not(.ig-entry-tab),.quick-purchase[data-step=sizes] > .sg-choose,.quick-purchase[data-step=sizes] > .sg-actions,.quick-purchase[data-step=cart] > .sg-choose,.quick-purchase[data-step=cart] > .ig-picker-heading,.quick-purchase[data-step=cart] > .sg-native-sizes{display:none}
.sg-collapse{background:none;border:0;padding:0 4px;font-size:22px}.sg-quick-panel .product-quick-add__body{padding-bottom:42px}
@media(max-width:984px){.add-to-basket__sticky{box-shadow:0 -6px 18px #3e382d14}#kabooki-size-guide.integrated-guide{bottom:calc(62px + env(safe-area-inset-bottom,0px))}}
.sg-quick-panel > .product-quick-add__scroll{flex:1;min-height:0;overflow:auto}.sg-quick-panel .sg-quick-scroll{overflow:visible}

/* Keep the fixed navigation painted while the native modal changes compositing. */
@media(max-width:984px){body:has(#kabooki-size-guide[open]) .mobile-dock{contain:paint}}

/* Let the mobile figure use the outer gutter without narrowing the measurements. */
@media(max-width:984px){.ig-person{width:calc(100% + 16px);margin-left:-16px;justify-self:start}}

.quick-purchase .sg-back{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;white-space:nowrap}.quick-purchase .sg-back svg{display:block;flex-shrink:0}
.ig-add-price{display:none}
@media(min-width:985px){#kabooki-size-guide .ig-matrix-action{grid-column:1 / -1!important;grid-row:auto!important;padding:12px 0 0}#kabooki-size-guide .ig-matrix-action .ig-add{width:100%;min-height:54px;display:flex;align-items:center;justify-content:center;gap:12px}#kabooki-size-guide .ig-add-price{display:inline}}

.quick-purchase > .ig-picker-heading{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.quick-purchase > .ig-picker-heading > span:first-child{grid-column:2;grid-row:1;text-align:center}.quick-purchase > .ig-picker-heading > span:nth-child(2){grid-column:1;grid-row:1;justify-self:start}.quick-purchase > .ig-picker-heading > .sg-collapse{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0}.sg-collapse svg{display:block}

.quick-purchase .product-quick-add__submit{display:flex;align-items:center;justify-content:center;gap:12px}.sg-purchase-price{white-space:nowrap}
.product-quick-add__dialog:has(.cart-notice__content){display:flex;flex-direction:column}.product-quick-add__dialog:has(.cart-notice__content) > .product-quick-add__scroll{display:flex;flex-direction:column;flex:1;min-height:0;overflow:auto}.product-quick-add__content:has(> .cart-notice__content){flex:none;margin-top:auto;width:100%}

@media(max-width:984px){.quick-purchase .product-quick-add__submit{flex-direction:row;justify-content:space-between;text-align:left;gap:8px;padding:12px;min-width:0;font-size:16px}.quick-purchase .sg-purchase-price{font-size:14px}}

/* Match the mobile quick panel: retain scrolling without a visible scrollbar track. */
@media(max-width:984px){#kabooki-size-guide .ig-content{scrollbar-width:none;background:#fff}#kabooki-size-guide .ig-content::-webkit-scrollbar{display:none}}
