*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg: #ffffff;--text: #1a1a1a;--text-dim: rgba(26, 26, 26, .45);--accent: #8a7560;--transition-smooth: cubic-bezier(.22, 1, .36, 1);--notch-panel-h: 340px;--notch-tab-h: 44px}html,body{width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,sans-serif;font-weight:300;-webkit-font-smoothing:antialiased;touch-action:none;-webkit-user-select:none;user-select:none}.canvas{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;overflow:hidden;cursor:grab;transition:transform .5s var(--transition-smooth)}.canvas:active{cursor:grabbing}.grid{position:absolute;top:0;left:0;width:100%;height:100%}body.notch-open .canvas,body.notch-open .detail,body.notch-open .hint{transform:translateY(calc(-1 * var(--notch-panel-h)))}.cell{position:absolute;top:0;left:0;width:var(--cell-w, 200px);height:var(--cell-h, 280px);overflow:hidden;cursor:pointer;background:var(--bg);will-change:transform}.cell img{width:100%;height:100%;object-fit:contain;object-position:center;display:block;background:var(--bg);pointer-events:none}.detail{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none;opacity:0;visibility:hidden;cursor:pointer;transition:transform .5s var(--transition-smooth)}.detail-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff59;backdrop-filter:blur(8px) saturate(1.1);-webkit-backdrop-filter:blur(8px) saturate(1.1)}.detail-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding-bottom:60px;pointer-events:none}.detail-carousel{position:relative;width:min(80vw,700px);height:75vh;display:flex;align-items:center;justify-content:center;pointer-events:auto;cursor:grab;perspective:1200px}.detail-carousel:active{cursor:grabbing}.detail-carousel-ring{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.detail-carousel-item{position:absolute;height:100%;display:flex;align-items:center;justify-content:center;will-change:transform,filter;transition:filter .5s var(--transition-smooth)}.detail-carousel-item img{max-height:92%;max-width:min(65vw,650px);width:auto;height:auto;object-fit:contain;display:block;pointer-events:none;-webkit-user-select:none;user-select:none}.detail-info{text-align:center;max-width:500px;pointer-events:auto;background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:16px 28px;border-radius:10px;box-shadow:0 2px 20px #0000000a}.detail-brand{font-size:18px;font-weight:500;letter-spacing:1px;text-transform:uppercase;color:var(--text);margin-bottom:4px;cursor:pointer;transition:opacity .2s ease}.detail-brand:hover{opacity:.6}.detail-desc{font-size:13px;font-weight:300;line-height:1.4;color:var(--text-dim);margin-bottom:6px}.detail-price-row{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:10px}.detail-price{font-size:14px;font-weight:400;letter-spacing:.5px;color:var(--text)}.detail-price-divider{color:#00000026;font-weight:300}.detail-wishlist{background:none;border:none;padding:0;color:#0000004d;cursor:pointer;display:flex;align-items:center;transition:color .2s ease}.detail-wishlist:hover{color:var(--text)}.detail-wishlist.active svg{fill:var(--text);color:var(--text)}.detail-tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.detail-tag{font-size:11px;color:var(--text);font-weight:400;letter-spacing:.3px;padding:5px 14px;border-radius:20px;border:1px solid rgba(0,0,0,.25);background:#fff9;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease;white-space:nowrap}.detail-tag:hover{background:var(--text);color:#fff;border-color:var(--text)}.detail-add-bag{font-family:Inter,sans-serif;font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;padding:12px 36px;border-radius:30px;border:1px solid var(--text);background:var(--text);color:#fff;cursor:pointer;margin-top:14px;transition:background .2s ease,color .2s ease}.detail-add-bag:hover{background:transparent;color:var(--text)}.detail-close-hint{position:absolute;top:28px;right:32px;width:36px;height:36px;border-radius:50%;background:#0000000a;display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto;transition:background .2s ease;z-index:101}.detail-close-hint:hover{background:#00000014}.detail-close-hint svg{width:16px;height:16px;stroke:var(--text-dim);stroke-width:2}.hint{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:50;display:flex;flex-direction:column;align-items:center;gap:10px;opacity:.5;pointer-events:none;transition:transform .5s var(--transition-smooth)}.hint span{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--text-dim)}.hint-icon{animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.canvas.blurred .cell{filter:blur(4px);opacity:.6;transition:filter .5s ease,opacity .5s ease}@media(max-width:768px){.detail-carousel{height:70vh}.detail-carousel-item img{max-width:80vw;max-height:85%}.detail-close-hint{top:16px;right:16px}:root{--notch-panel-h: 380px}}.splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--bg);display:flex;align-items:center;justify-content:center}.splash-inner{display:flex;flex-direction:column;align-items:center;gap:40px;max-width:480px;padding:0 20px}.splash-logo{width:100px;height:100px;object-fit:contain}.splash-size-group{display:flex;flex-direction:column;align-items:center;gap:10px}.splash-size-label{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--text-dim)}.splash-size-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.splash-pill{font-family:Inter,sans-serif;font-size:12px;font-weight:400;letter-spacing:.3px;padding:8px 16px;border-radius:30px;border:1px solid rgba(0,0,0,.2);background:transparent;color:var(--text);cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .15s ease;-webkit-tap-highlight-color:transparent}.splash-pill:hover{border-color:var(--text)}.splash-pill:active{transform:scale(.96)}.splash-pill.selected{background:var(--text);color:#fff;border-color:var(--text)}.splash-explore{font-family:Inter,sans-serif;font-size:12px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--text);background:none;border:none;cursor:pointer;padding:12px 28px;transition:opacity .2s ease}.splash-explore:hover{opacity:.6}.splash.exiting{opacity:0;transition:opacity .6s ease;pointer-events:none}.splash.hidden{display:none}.notch{position:fixed;bottom:0;left:0;right:0;z-index:150;display:flex;flex-direction:column;align-items:center;transform:translateY(var(--notch-panel-h));transition:transform .5s var(--transition-smooth);opacity:0;pointer-events:none}.notch.visible{opacity:1;pointer-events:none}.notch.visible .notch-tab,.notch.visible .notch-base,.notch.visible .notch-panel{pointer-events:auto}body.notch-open .notch{transform:translateY(0)}.notch-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:149;display:none}body.notch-open .notch-backdrop{display:block}.notch-tab{position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent;z-index:2;background:var(--text);clip-path:polygon(0% 100%,8px 92%,20px 72%,35px 42%,48px 18%,58px 5%,68px 0%,calc(100% - 68px) 0%,calc(100% - 58px) 5%,calc(100% - 48px) 18%,calc(100% - 35px) 42%,calc(100% - 20px) 72%,calc(100% - 8px) 92%,100% 100%)}.notch-tab-bg{display:none}.notch-tab-content{position:relative;z-index:1;padding:8px 76px;display:flex;align-items:center;justify-content:center;gap:12px;color:#fff;min-height:var(--notch-tab-h)}.notch-base{width:100%;height:4px;background:var(--text);flex-shrink:0;position:relative;z-index:1}.notch-home{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notch-home img{width:32px;height:32px;object-fit:contain;filter:invert(1)}.notch-chips{display:flex;align-items:center;gap:10px;flex-wrap:nowrap}.notch-chips:empty{display:none}.notch-chip{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:400;letter-spacing:.5px;color:#ffffffd9;white-space:nowrap}.notch-chip-x{background:none;border:none;color:#fff6;font-size:14px;cursor:pointer;padding:0 2px;line-height:1;transition:color .15s ease}.notch-chip-x:hover{color:#fff}.notch-panel{width:100%;height:var(--notch-panel-h);background:var(--text);padding:28px 24px 20px;display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;position:relative}.notch-panel:before{content:"";position:absolute;top:-4px;left:0;right:0;height:5px;background:var(--text)}.notch-panel-sizes{display:flex;flex-direction:column;gap:20px;margin-bottom:20px}.notch-panel-group{display:flex;flex-direction:column;align-items:center;gap:10px}.notch-panel-label{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:#ffffff73}.notch-panel-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.notch-pill{font-family:Inter,sans-serif;font-size:12px;font-weight:400;letter-spacing:.3px;padding:8px 16px;border-radius:30px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fffc;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .15s ease;-webkit-tap-highlight-color:transparent}.notch-pill:hover{border-color:#fff9}.notch-pill:active{transform:scale(.96)}.notch-pill.selected{background:#fff;color:var(--text);border-color:#fff}.notch-panel-actions{display:flex;justify-content:center;margin-bottom:20px}.notch-panel-explore{font-family:Inter,sans-serif;font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;padding:10px 32px;border-radius:30px;border:1px solid #fff;background:transparent;color:#fff;cursor:pointer;transition:background .2s ease,color .2s ease}.notch-panel-explore:hover{background:#fff;color:var(--text)}.notch-panel-divider{height:1px;background:#ffffff1a;margin-bottom:16px;flex-shrink:0}.notch-panel-cart{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.notch-panel-cart-empty{font-size:12px;color:#fff6;letter-spacing:.5px}.notch-panel-checkout{font-family:Inter,sans-serif;font-size:11px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;padding:10px 24px;border-radius:30px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#ffffff4d;cursor:not-allowed}.notch-panel-checkout:enabled{border-color:#fff;color:#fff;cursor:pointer}.notch-panel-checkout:enabled:hover{background:#fff;color:var(--text)}@media(max-width:480px){.splash-pill,.notch-pill{padding:7px 12px;font-size:11px}}
