/* phone menus · flooring demos (RWR2026) */

/* fl:begin fp41 */
/* fp41 Swatch sheet · live room floor (flooring) */
.fp41{--acc:#c49a6c;background:#12100e;touch-action:none}
.fp41-app{position:absolute;inset:0;color:#f3ece2;font:14px system-ui,sans-serif}
.fp41-top{position:absolute;left:0;right:0;top:40px;height:46px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;z-index:3}
.fp41-top small{display:block;font:700 9px ui-monospace,monospace;letter-spacing:.18em;text-transform:uppercase;color:var(--acc)}
.fp41-top b{font:800 18px system-ui;letter-spacing:-.02em}
.fp41-cart{position:relative;width:40px;height:40px;border:0;border-radius:14px;background:#ffffff14;color:#f3ece2;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px)}
.fp41-cart svg{width:20px;height:20px}
.fp41-badge{position:absolute;right:-4px;top:-4px;min-width:18px;height:18px;border-radius:9px;background:var(--acc);color:#1a120a;font:800 10px/18px system-ui;font-style:normal;text-align:center;transform:scale(0);transition:transform .35s cubic-bezier(.3,1.8,.5,1)}
.fp41-badge.on{transform:scale(1)}.fp41-badge.bump{animation:fp41b .5s}
@keyframes fp41b{40%{transform:scale(1.5)}}
.fp41-room{position:absolute;left:0;top:0;width:300px;height:550px;display:block}
.fp41-sheet{position:absolute;left:0;right:0;top:0;height:560px;border-radius:26px 26px 0 0;background:rgba(24,20,17,.94);backdrop-filter:blur(16px);box-shadow:0 -10px 30px #0008,inset 0 1px 0 #ffffff14;transform:translateY(var(--sy,322px));z-index:4}
.fp41-grab{height:26px;display:grid;place-items:center;cursor:grab;touch-action:none}
.fp41-grab i{width:40px;height:5px;border-radius:3px;background:#ffffff40}
.fp41-head{display:flex;justify-content:space-between;align-items:baseline;padding:0 18px 8px;touch-action:none}
.fp41-head b{font:800 17px system-ui;letter-spacing:-.02em}
.fp41-n{font:600 11px system-ui;color:#9c9184}
.fp41-cats{display:flex;gap:6px;padding:0 14px 10px;overflow:hidden}
.fp41-cats button{flex:1;border:0;border-radius:999px;padding:7px 0;background:#ffffff0f;color:#cdbfae;font:700 11px system-ui;cursor:pointer;transition:background .25s,color .25s}
.fp41-cats button[aria-selected=true]{background:#f3ece2;color:#1a140e}
.fp41-car{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 104px 12px;scrollbar-width:none;touch-action:pan-x}
.fp41-car::-webkit-scrollbar{display:none}
.fp41-sw{flex:0 0 92px;scroll-snap-align:center;border:0;padding:0;background:none;color:inherit;text-align:center;cursor:pointer;transition:transform .3s cubic-bezier(.3,1.5,.5,1),opacity .3s;opacity:.55}
.fp41-sw i{display:block;width:92px;height:92px;border-radius:18px;background-size:cover;box-shadow:0 8px 16px -6px #000,inset 0 1px 0 #ffffff40;transition:box-shadow .3s}
.fp41-sw span{display:block;margin-top:6px;font:700 11px system-ui;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fp41-sw small{display:block;font:600 10px system-ui;color:#9c9184}
.fp41-sw.on{transform:scale(1.1);opacity:1}
.fp41-sw.on i{box-shadow:0 0 0 2px #12100e,0 0 0 4px var(--acc),0 12px 20px -6px #000}
.fp41-det{padding:6px 18px;display:grid;gap:10px}
.fp41-dt{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.fp41-name{font:800 18px system-ui;letter-spacing:-.02em}
.fp41-price{font:800 15px ui-monospace,monospace;color:var(--acc);white-space:nowrap}
.fp41-tags{display:flex;flex-wrap:wrap;gap:6px}
.fp41-tags i{font-style:normal;font:700 10.5px system-ui;padding:5px 9px;border-radius:999px;background:#ffffff10;color:#d9cdbd}
.fp41-sample{border:0;border-radius:16px;padding:13px;background:var(--acc);color:#1a120a;font:800 14px system-ui;cursor:pointer;box-shadow:inset 0 -3px 0 #0003}
.fp41-sample:active{transform:scale(.98)}
.fp41-note{margin:0;text-align:center;font:600 10.5px system-ui;color:#7d7368}
.fp41-fly{position:absolute;width:44px;height:44px;border-radius:10px;background-size:cover;z-index:9;pointer-events:none;box-shadow:0 8px 16px #0009}
.fp41-app::before{content:"";position:absolute;left:0;right:0;top:0;height:120px;background:linear-gradient(180deg,rgba(14,11,9,.82),rgba(14,11,9,.35) 60%,transparent);z-index:2;pointer-events:none}
/* fl:end fp41 */
/* fl:begin fp42 */
/* fp42 Plank tab bar · sawdust snap (flooring) */
.fp42{background:#100e0c}
.fp42-app{position:absolute;inset:0;color:#f3ece2;font:14px system-ui,sans-serif}
.fp42-view{position:absolute;left:0;right:0;top:40px;bottom:86px;overflow:hidden;touch-action:pan-y}
.fp42-track{display:flex;height:100%;transform:translateX(calc(var(--px,0) * -300px));will-change:transform}
.fp42-pg{flex:0 0 300px;box-sizing:border-box;padding:10px 16px}
.fp42-pg h5{margin:6px 0 12px;font:850 24px system-ui;letter-spacing:-.03em}
.fp42-search{padding:11px 14px;border-radius:14px;background:#ffffff0d;color:#8d8377;font:600 13px system-ui;margin-bottom:12px}
.fp42-cats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fp42-cats i,.fp42-list i{display:block;background-size:cover;border-radius:16px;position:relative;overflow:hidden}
.fp42-cats i{height:150px;box-shadow:inset 0 -60px 40px -20px #000c}
.fp42-cats b{position:absolute;left:10px;bottom:9px;font:800 13px system-ui;font-style:normal}
.fp42-cam{position:relative;height:300px;border-radius:22px;background:linear-gradient(160deg,#2a2622,#171411);display:grid;place-items:center;overflow:hidden}
.fp42-cam i{position:absolute;inset:40px;border:2px dashed #c49a6c99;border-radius:16px}
.fp42-cam i::after{content:"";position:absolute;left:0;right:0;height:2px;background:#c49a6c;box-shadow:0 0 12px #c49a6c;animation:fp42scan 2.4s ease-in-out infinite alternate}
@keyframes fp42scan{from{top:8%}to{top:92%}}
.fp42-cam span{font:700 13px system-ui;color:#d9cbb8}
.fp42-p{color:#9c9184;font:500 13px/1.4 system-ui}
.fp42-list{display:grid;gap:10px}
.fp42-list>div{display:grid;grid-template-columns:56px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:10px;border-radius:16px;background:#ffffff0a}
.fp42-list i{grid-row:span 2;width:56px;height:56px;border-radius:12px}
.fp42-list b{font:800 14px system-ui;align-self:end}.fp42-list small{color:#9c9184;font:600 11.5px system-ui;align-self:start}
.fp42-q{display:grid;gap:4px;padding:18px;border-radius:20px;background:linear-gradient(160deg,#2a2017,#18130f);box-shadow:inset 0 0 0 1px #c49a6c33}
.fp42-q span{color:#a89a88;font:600 12px system-ui}.fp42-q b{font:800 18px system-ui}.fp42-tot{font-size:34px!important;color:#e7c290;letter-spacing:-.03em}.fp42-q small{color:#7d9b6a;font:700 12px system-ui}
.fp42-bar{position:absolute;left:0;right:0;bottom:0;height:86px;padding:8px 8px 26px;box-sizing:border-box;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(22,19,16,.94);border-top:1px solid #ffffff0f;backdrop-filter:blur(14px);touch-action:none}
.fp42-bar button{position:relative;z-index:1;border:0;background:none;color:#8a8076;display:grid;justify-items:center;align-content:center;gap:3px;font:700 10.5px system-ui;cursor:pointer;transition:color .25s;-webkit-tap-highlight-color:transparent}
.fp42-bar svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round;stroke-linecap:round}
.fp42-bar button[aria-selected=true]{color:#3a2412;text-shadow:0 1px 0 rgba(255,236,200,.55)}
.fp42-bar button[aria-selected=true] svg{filter:drop-shadow(0 1px 0 rgba(255,236,200,.55))}
.fp42-plank{position:absolute;top:8px;left:8px;width:calc((100% - 16px) / 4);height:52px;transform:translateX(var(--x,0px)) scaleX(var(--sx,1)) scaleY(var(--sy,1));transform-origin:50% 50%;border-radius:9px;background-size:cover;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),inset 0 -2px 0 rgba(0,0,0,.25),0 4px 10px rgba(0,0,0,.5);overflow:hidden}
.fp42-plank::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 45%,rgba(0,0,0,.18));pointer-events:none}
.fp42-plank .n{position:absolute;top:50%;width:5px;height:5px;margin-top:-2.5px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#d8dde4,#5d646e);box-shadow:0 0 0 1px #0004;transform:scale(var(--nail,1));transition:transform .2s}
.fp42-plank .l{left:6px}.fp42-plank .r{right:6px}
.fp42-stain{position:absolute;inset:0;background-size:cover;clip-path:inset(0 calc(100% - var(--st,0%)) 0 0)}
.fp42-dust{position:absolute;left:0;top:0;width:300px;height:620px;pointer-events:none;z-index:5}
.fp42-toast{position:absolute;left:50%;bottom:98px;translate:-50% 10px;opacity:0;padding:8px 14px;border-radius:999px;background:#f3ece2;color:#1a140e;font:800 12px system-ui;white-space:nowrap;transition:opacity .3s,translate .3s;z-index:6}
.fp42-toast.on{opacity:1;translate:-50% 0}
.fp42.dk .fp42-bar button[aria-selected=true]{color:#f6e7cf;text-shadow:0 -1px 0 rgba(0,0,0,.7)}
.fp42.dk .fp42-bar button[aria-selected=true] svg{filter:drop-shadow(0 -1px 0 rgba(0,0,0,.7))}
/* fl:end fp42 */
/* fl:begin fp43 */
/* fp43 Saw-blade FAB · drag-to-pick radial (flooring) */
.fp43{background:#100e0c}
.fp43-app{position:absolute;inset:0;color:#f3ece2;font:14px system-ui,sans-serif;touch-action:none}
.fp43-head{position:absolute;left:18px;top:52px}
.fp43-head small{display:block;font:700 9px ui-monospace,monospace;letter-spacing:.18em;text-transform:uppercase;color:#c49a6c}
.fp43-head b{font:850 24px system-ui;letter-spacing:-.03em}
.fp43-cards{position:absolute;left:14px;right:14px;top:112px;display:grid;gap:10px}
.fp43-card{display:flex;gap:12px;align-items:center;padding:14px;border-radius:18px;background:#ffffff0a}
.fp43-card i{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#3a2c1f,#5a4330);flex:none}
.fp43-card b{display:block;font:800 14px system-ui}.fp43-card span{font:600 11.5px system-ui;color:#9c9184}
.fp43-scrim{position:absolute;inset:0;background:radial-gradient(circle at 246px 546px,rgba(16,14,12,.5),rgba(16,14,12,.92) 60%);opacity:0;pointer-events:none;transition:opacity .35s}
.fp43.open .fp43-scrim{opacity:1;pointer-events:auto}
.fp43-menu{position:absolute;left:246px;top:546px;width:0;height:0}
.fp43-menu button{position:absolute;left:-26px;top:-26px;width:52px;height:52px;border-radius:50%;border:0;background:#f3ece2;color:#2a1c10;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 18px #0009;transform:rotate(calc(var(--a) * 1deg)) translateX(0) rotate(calc(var(--a) * -1deg)) scale(.3);opacity:0;pointer-events:none;transition:transform .5s cubic-bezier(.3,1.5,.45,1),opacity .25s,background .2s,color .2s;transition-delay:calc(var(--i,0) * 40ms)}
.fp43-menu svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round;stroke-linecap:round}
.fp43-menu span{position:absolute;top:50%;left:50%;transform:translate(calc(-50% + cos(calc(var(--a) * 1deg)) * 62px),calc(-50% + sin(calc(var(--a) * 1deg)) * 44px));padding:3px 7px;border-radius:999px;background:#100e0ccc;font:800 10px system-ui;color:#f3ece2;white-space:nowrap;text-shadow:0 1px 4px #000}
.fp43.open .fp43-menu button{opacity:1;pointer-events:auto;transform:rotate(calc(var(--a) * 1deg)) translateX(150px) rotate(calc(var(--a) * -1deg)) scale(1)}
.fp43.open .fp43-menu button.hot{background:#c49a6c;color:#1a120a;transform:rotate(calc(var(--a) * 1deg)) translateX(158px) rotate(calc(var(--a) * -1deg)) scale(1.22);transition-delay:0s}
.fp43-fab{position:absolute;left:210px;top:510px;width:72px;height:72px;border:0;border-radius:50%;padding:0;background:none;cursor:pointer;filter:drop-shadow(0 10px 16px #000a);z-index:4;touch-action:none}
.fp43-fab svg{width:100%;height:100%;display:block}
.fp43-sp{position:absolute;left:0;top:0;width:300px;height:620px;pointer-events:none;z-index:5}
.fp43-hub{position:absolute;left:112px;top:470px;width:108px;text-align:center;font:900 13px system-ui;letter-spacing:.06em;text-transform:uppercase;color:#c49a6c;opacity:0;transition:opacity .2s;pointer-events:none}
.fp43-hub.on{opacity:1}
.fp43-res{position:absolute;left:12px;right:12px;bottom:18px;padding:16px;border-radius:22px;background:#f3ece2;color:#1a140e;display:grid;gap:4px;transform:translateY(140%);transition:transform .45s cubic-bezier(.3,1.3,.5,1);z-index:6;box-shadow:0 -10px 30px #0008}
.fp43-res.on{transform:none}
.fp43-res b{font:850 17px system-ui;letter-spacing:-.02em}.fp43-res span{font:600 12.5px/1.35 system-ui;color:#5c5145}
.fp43-res button{margin-top:6px;border:0;border-radius:14px;padding:11px;background:#1a140e;color:#f3ece2;font:800 13px system-ui;cursor:pointer}
/* fl:end fp43 */
/* fl:begin fp44 */
/* fp44 Carpet-roll drawer · brushable pile (flooring) */
.fp44{background:#f2ede6}
.fp44-app{position:absolute;inset:0;color:#1f1a15;font:14px system-ui,sans-serif;overflow:hidden}
.fp44-bar{position:absolute;left:0;right:0;top:40px;height:50px;display:flex;align-items:center;justify-content:space-between;padding:0 14px}
.fp44-bar b{font:900 17px system-ui;letter-spacing:-.02em}.fp44-bar span{width:40px}
.fp44-burg{width:40px;height:40px;border:0;border-radius:12px;background:#1f1a15;display:grid;align-content:center;justify-items:center;gap:4px;cursor:pointer;position:relative;z-index:8}
.fp44-burg i{width:18px;height:2px;border-radius:2px;background:#f2ede6;transition:transform .3s,opacity .3s}
.fp44.open .fp44-burg i:nth-child(1){transform:translateY(6px) rotate(45deg)}.fp44.open .fp44-burg i:nth-child(2){opacity:0}.fp44.open .fp44-burg i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.fp44-main{position:absolute;left:14px;right:14px;top:100px;display:grid;gap:10px}
.fp44-hero{height:220px;border-radius:22px;padding:18px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;color:#fff;background:radial-gradient(circle at 70% 20%,#ffffff22,transparent 40%),linear-gradient(160deg,#2f5d5a,#1b3836)}
.fp44-hero small{font:800 9px ui-monospace,monospace;letter-spacing:.18em;text-transform:uppercase;color:#ffd9a3}
.fp44-hero b{font:850 22px/1.1 system-ui;letter-spacing:-.03em}.fp44-hero span{font:600 12px system-ui;color:#d7e6e2}
.fp44-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.fp44-row i{height:120px;border-radius:18px;background:#e2dacd}
.fp44-scrim{position:absolute;inset:0;background:rgba(20,16,12,.5);opacity:0;pointer-events:none;transition:opacity .5s;z-index:5}
.fp44.open .fp44-scrim{opacity:1;pointer-events:auto}
.fp44-dr{position:absolute;left:0;top:0;bottom:0;width:250px;z-index:6;pointer-events:none}
.fp44.open .fp44-dr{pointer-events:auto}
.fp44-carpet{position:absolute;inset:0;clip-path:inset(0 calc(250px - var(--u,0) * 250px) 0 0);box-shadow:inset -3px 0 0 #2a1712,inset -6px 0 0 #d9b98a;touch-action:none}
.fp44-pile,.fp44-nap{position:absolute;left:0;top:0;width:250px;height:620px;display:block}
.fp44-nap{mix-blend-mode:soft-light;opacity:.95}
.fp44-menu{position:absolute;left:22px;right:18px;top:96px;display:grid;gap:4px;pointer-events:none}
.fp44-menu small{font:800 9px ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#e9c993;margin-bottom:10px;opacity:.9}
.fp44-menu a{pointer-events:auto;display:block;padding:11px 0;color:#f6e8d2;text-decoration:none;font:800 18px system-ui;letter-spacing:-.01em;text-shadow:0 1px 0 #0006,0 -1px 0 #ffffff1a;border-bottom:2px dashed #e9c99355;transition:color .2s,padding .3s}
.fp44-menu a:hover,.fp44-menu a:focus-visible{color:#ffd28a;padding-left:6px;outline:none}
.fp44-hint{position:absolute;left:22px;right:14px;bottom:30px;margin:0;font:700 11px system-ui;color:#f6e8d2b0;pointer-events:none}
.fp44-roll{position:absolute;top:-4px;bottom:-4px;left:calc(var(--u,0) * 250px - var(--d,46px) / 2);width:var(--d,46px);border-radius:calc(var(--d,46px) / 2) / 14px;overflow:hidden;opacity:var(--ro,0);box-shadow:6px 0 14px rgba(0,0,0,.55)}
.fp44-roll i{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.65),rgba(0,0,0,.05) 35%,rgba(255,240,220,.28) 52%,rgba(0,0,0,.2) 70%,rgba(0,0,0,.7)),repeating-linear-gradient(180deg,rgba(0,0,0,.18) 0 2px,transparent 2px 6px) 0 var(--spin,0px),var(--tex) center/cover}
.fp44 .sb{color:#1d1813}
/* fl:end fp44 */
/* fl:begin fp45 */
/* fp45 Measure FAB · draw-your-room wizard (flooring) */
.fp45{background:#f4efe7}
.fp45-app{position:absolute;inset:0;color:#1d1813;font:14px system-ui,sans-serif;overflow:hidden}
.fp45-prod{position:absolute;left:0;right:0;top:40px;padding:0 16px;display:grid;gap:3px}
.fp45-img{height:250px;margin:0 -16px 12px;background-size:cover;background-position:center}
.fp45-prod small{font:800 9px ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:#9a6b3c}
.fp45-prod b{font:850 24px system-ui;letter-spacing:-.03em}.fp45-prod>span{font:600 12.5px system-ui;color:#6f6458}
.fp45-sk{display:grid;gap:8px;margin-top:12px}.fp45-sk i{height:14px;border-radius:7px;background:#e6ded2}.fp45-sk i:nth-child(2){width:80%}.fp45-sk i:nth-child(3){width:60%}
.fp45-scrim{position:absolute;inset:0;background:rgba(29,24,19,.45);opacity:0;pointer-events:none;transition:opacity .4s}
.fp45.open .fp45-scrim{opacity:1;pointer-events:auto}
.fp45-fab{position:absolute;right:16px;bottom:22px;width:196px;height:54px;border-radius:27px;background:#1d1813;color:#f4efe7;box-shadow:0 12px 26px -8px #000a;overflow:hidden;transition:width .55s cubic-bezier(.3,1.15,.4,1),height .55s cubic-bezier(.3,1.15,.4,1),right .55s cubic-bezier(.3,1.15,.4,1),bottom .55s cubic-bezier(.3,1.15,.4,1),border-radius .5s;z-index:3}
.fp45.open .fp45-fab{right:8px;bottom:8px;width:284px;height:452px;border-radius:30px}
.fp45-open{position:absolute;inset:0;border:0;background:none;color:inherit;display:flex;align-items:center;justify-content:center;gap:9px;font:800 14px system-ui;cursor:pointer;transition:opacity .2s}
.fp45-open svg{width:20px;height:20px;fill:none;stroke:#e2b97f;stroke-width:1.9;stroke-linejoin:round}
.fp45.open .fp45-open{opacity:0;pointer-events:none}
.fp45-wiz{position:absolute;left:0;top:0;width:284px;height:452px;opacity:0;transition:opacity .3s .2s}
.fp45.open .fp45-wiz{opacity:1}
.fp45-wh{display:flex;align-items:center;justify-content:space-between;padding:12px 12px 0}
.fp45-wh button{width:34px;height:34px;border:0;border-radius:12px;background:#ffffff12;color:#f4efe7;font:700 20px/1 system-ui;cursor:pointer}
.fp45-back{visibility:hidden}.fp45-back.on{visibility:visible}
.fp45-dots{display:flex;gap:6px}.fp45-dots i{width:7px;height:7px;border-radius:4px;background:#ffffff30;transition:width .3s,background .3s}.fp45-dots i.on{width:20px;background:#e2b97f}
.fp45-steps{display:flex;width:852px;transform:translateX(calc(var(--st,0) * -284px));transition:transform .5s cubic-bezier(.3,1.1,.4,1)}
.fp45-s{flex:0 0 284px;box-sizing:border-box;padding:6px 16px 16px;display:flex;flex-direction:column}
.fp45-s h5{margin:6px 0 4px;font:850 21px system-ui;letter-spacing:-.03em}
.fp45-sub{margin:0 0 8px;font:600 11.5px system-ui;color:#a89a88}
.fp45-rooms{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.fp45-rooms button{border:1px solid #ffffff18;border-radius:16px;background:#ffffff08;color:#f4efe7;padding:12px 8px 10px;display:grid;justify-items:center;gap:6px;font:700 12px system-ui;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.fp45-rooms button:hover{background:#ffffff12}.fp45-rooms button.on{border-color:#e2b97f;background:#e2b97f22;transform:scale(.97)}
.fp45-rooms svg{width:54px;height:40px;fill:none;stroke:#e2b97f;stroke-width:1.6}
.fp45-bp{position:relative;height:216px;border-radius:14px;background:linear-gradient(#ffffff10 1px,transparent 1px) 0 0/12px 12px,linear-gradient(90deg,#ffffff10 1px,transparent 1px) 0 0/12px 12px,linear-gradient(#ffffff22 1px,transparent 1px) 0 0/60px 60px,linear-gradient(90deg,#ffffff22 1px,transparent 1px) 0 0/60px 60px,#16324a;overflow:hidden;touch-action:none}
.fp45-rm{position:absolute;left:24px;top:24px;width:calc(var(--w,14) * 12px);height:calc(var(--h,12) * 12px);border:2.5px solid #e9f4ff;box-shadow:0 0 0 1px #0006,inset 0 0 0 1px #0004;background:rgba(160,210,255,.08)}
.fp45-w{position:absolute;left:0;right:0;top:-19px;text-align:center;font:800 11px ui-monospace,monospace;color:#bfe2ff}
.fp45-w::before{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px dashed #bfe2ff66;z-index:-1}
.fp45-h{position:absolute;top:0;bottom:0;left:-22px;writing-mode:vertical-rl;transform:rotate(180deg);text-align:center;font:800 11px ui-monospace,monospace;color:#bfe2ff}
.fp45-hd{position:absolute;right:-13px;bottom:-13px;width:26px;height:26px;border-radius:50%;border:3px solid #16324a;background:#e2b97f;cursor:nwse-resize;box-shadow:0 0 0 6px #e2b97f33;animation:fp45p 1.6s ease-in-out infinite;padding:0}
@keyframes fp45p{50%{box-shadow:0 0 0 11px #e2b97f11}}
.fp45-fill{position:absolute;inset:0;overflow:hidden}
.fp45-fill i{position:absolute;left:0;right:0;background-size:auto 100%;box-shadow:inset 0 -1px 0 #0006;animation:fp45l .45s cubic-bezier(.3,1.4,.5,1) both}
@keyframes fp45l{from{transform:translateX(-105%)}}
.fp45-area{margin:10px 0;text-align:center;font:600 13px system-ui;color:#a89a88}.fp45-area b{font:850 30px system-ui;color:#f4efe7;letter-spacing:-.03em}
.fp45-next,.fp45-book{margin-top:auto;border:0;border-radius:16px;padding:13px;background:#e2b97f;color:#1d1813;font:800 14px system-ui;cursor:pointer}
.fp45-fl{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:6px 0 10px}
.fp45-fl button{border:2px solid transparent;border-radius:12px;padding:0;height:58px;background-size:cover;cursor:pointer;position:relative;overflow:hidden}
.fp45-fl button span{position:absolute;left:0;right:0;bottom:0;padding:2px 0;background:#000a;color:#fff;font:700 8.5px system-ui}
.fp45-fl button.on{border-color:#e2b97f}
.fp45-res{display:grid;gap:6px;padding:12px;border-radius:16px;background:#ffffff0a;margin-bottom:10px}
.fp45-res>div{display:flex;justify-content:space-between;font:600 12px system-ui;color:#a89a88}.fp45-res b{color:#f4efe7;font:800 13px ui-monospace,monospace}
.fp45-res .tot{border-top:1px dashed #ffffff22;padding-top:6px}.fp45-res .tot b{font-size:20px;color:#e2b97f}
.fp45-mini{position:relative;height:96px;border-radius:12px;overflow:hidden;margin-bottom:8px;background:#16324a}
.fp45 .sb{color:#1d1813}
/* fl:end fp45 */

/* 46 Cabinet tab bar · swipe the doors open */
.kh46{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#17120e;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#f4ede3;isolation:isolate}
.kh46::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh46 *{box-sizing:border-box}
.kh46 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#f4ede3}
.kh46-app{position:absolute;inset:0;background:radial-gradient(120% 70% at 50% 0,#3d2e21,#17120e 70%)}
.kh46-top{position:absolute;left:18px;right:18px;top:46px;display:grid;grid-template-columns:1fr auto;align-items:end;row-gap:2px}
.kh46-top small{font:700 9px ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#d8b07a}
.kh46-top b{grid-column:1;font:850 22px system-ui;letter-spacing:-.03em}
.kh46-cart{grid-row:1/3;grid-column:2;padding:6px 10px;border-radius:999px;background:#ffffff12;font:800 11px system-ui;color:#d8b07a}
.kh46-view{position:absolute;left:0;right:0;top:104px;bottom:136px;overflow:hidden}
.kh46-track{display:flex;width:400%;height:100%;transform:translateX(calc(var(--kh46-p,0) * -25%));transition:transform .62s cubic-bezier(.22,1,.36,1)}
.kh46-pg{flex:0 0 25%;padding:4px 16px;opacity:.2;transform:scale(.93) translateY(14px);transform-origin:50% 100%;transition:opacity .45s,transform .62s cubic-bezier(.22,1,.36,1)}
.kh46-pg.kh46-on{opacity:1;transform:none}
.kh46-pg h5{margin:0 0 10px;font:850 17px system-ui;letter-spacing:-.02em}
.kh46-note{margin:10px 0 0;font:600 11px/1.4 system-ui;color:#b9a890}
.kh46-styles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kh46-styles i{font-style:normal;position:relative;height:122px;border-radius:6px;padding:7px;display:flex;flex-direction:column;justify-content:flex-end;background:var(--kh46-wood) center/cover,#dcc9ad;color:#2a1d12;box-shadow:inset 0 0 0 1px #0002,inset 0 1px 0 #fff6,0 10px 18px -10px #000}
.kh46-styles i::before{content:'';position:absolute;inset:11px 12px 44px;border-radius:2px}
.kh46-s1::before{box-shadow:inset 2px 2px 3px #0004,1px 1px 0 #fff7}
.kh46-s3::before{background:linear-gradient(135deg,#fff5,#0000 30%,#0000 70%,#0003);box-shadow:0 0 0 4px #ffffff22,inset 2px 2px 3px #0003,1px 1px 0 #fff7}
.kh46-s4::before{background:repeating-linear-gradient(90deg,#0000 0 9px,#0003 9px 10px,#fff4 10px 11px);box-shadow:inset 2px 2px 3px #0004}
.kh46-styles b{font:850 12.5px system-ui;background:#fffc;border-radius:6px 6px 0 0;padding:4px 7px 0}
.kh46-styles span{font:700 11px system-ui;color:#8a5a26;background:#fffc;border-radius:0 0 6px 6px;padding:0 7px 4px}
.kh46-list{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.kh46-list li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 10px;border-radius:12px;background:#ffffff0c}
.kh46-list i{width:58px;border-radius:3px;background:var(--kh46-wood) center/cover;box-shadow:inset 0 0 0 1px #0003,inset 0 -2px 0 #0002,0 0 0 1.5px #c9b493}
.kh46-d1{height:14px}.kh46-d2{height:22px}.kh46-d3{height:28px}
.kh46-list b{font:800 13px system-ui}.kh46-list span{font:850 14px system-ui;color:#d8b07a}
.kh46-sw{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;justify-items:center}
.kh46-sw i{width:52px;height:52px;border-radius:50%;box-shadow:inset 0 -6px 10px #0004,inset 0 4px 6px #fff4,0 6px 12px -4px #000}
.kh46-sw i:nth-child(1){background:var(--kh46-wood) center/cover}.kh46-sw i:nth-child(2){background:#3c3e42}.kh46-sw i:nth-child(3){background:#9aa98c}.kh46-sw i:nth-child(4){background:#22324a}.kh46-sw i:nth-child(5){background:linear-gradient(120deg,#5b3a22,#7a5134)}.kh46-sw i:nth-child(6){background:#d9cbb6}.kh46-sw i:nth-child(7){background:#f2efe9}.kh46-sw i:nth-child(8){background:#7d4b38}
.kh46-q{display:grid;grid-template-columns:1fr auto;gap:8px 10px;padding:14px;border-radius:14px;background:#f4ede3;color:#2a1d12}
.kh46-q span{font:600 12px system-ui;color:#6c5a46}.kh46-q b{font:850 14px system-ui;text-align:right}
.kh46-ql{border-top:1px dashed #0003;padding-top:8px}.kh46-tot{border-top:1px dashed #0003;padding-top:6px;font-size:20px!important}
.kh46-cta{margin-top:12px;width:100%;border:0;border-radius:14px;padding:13px;background:#d8b07a;color:#2a1d12;font:850 13px system-ui;cursor:pointer;box-shadow:0 8px 20px -8px #d8b07a}
.kh46-cta:focus-visible,.kh46-door:focus-visible{outline:2px solid #ffd79a;outline-offset:3px}
.kh46-hint{position:absolute;left:0;right:0;bottom:114px;margin:0;text-align:center;font:700 9.5px ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:#d8b07a99;transition:opacity .4s}
.kh46-bar{position:absolute;left:10px;right:10px;bottom:14px;height:94px;padding:10px 10px 12px;display:grid;grid-template-columns:repeat(4,1fr);gap:7px;border-radius:14px 14px 26px 26px;background:linear-gradient(#efe4d2,#d3c0a2);box-shadow:inset 0 2px 0 #fff9,inset 0 -3px 0 #0002,0 -12px 30px -12px #000,0 14px 22px -12px #000;touch-action:none}
.kh46-bar.kh46-thud{animation:kh46-thud .2s ease-out}
@keyframes kh46-thud{40%{transform:translateY(1.2px)}}
.kh46-door{position:relative;border:0;padding:0;border-radius:3px;background:linear-gradient(#1c150e,#3b2b1b);box-shadow:inset 0 4px 9px #000d,inset 0 0 0 1px #0006;cursor:pointer;perspective:360px;color:#ffd79a;-webkit-tap-highlight-color:transparent;touch-action:none}
.kh46-in{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:4px;opacity:calc(.2 + var(--kh46-l,0) * .8)}
.kh46-in::before{content:'';position:absolute;left:10%;right:10%;top:3px;height:2px;border-radius:2px;background:#fff3d6;box-shadow:0 0 12px 4px #ffc56a;opacity:var(--kh46-l,0)}
.kh46-in svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 0 5px #ffb84d)}
.kh46-in em{font:800 8.5px system-ui;font-style:normal;letter-spacing:.07em;text-transform:uppercase}
.kh46-door[aria-selected=true] .kh46-in em{color:#fff}
.kh46-leaf{position:absolute;inset:-2px;transform-origin:0 50%;transform:rotateY(calc(var(--kh46-a,0deg) * -1));transform-style:preserve-3d;pointer-events:none}
.kh46-face,.kh46-back{position:absolute;inset:0;border-radius:3px;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.kh46-face{background:var(--kh46-wood) center/cover,#e5d6bd;box-shadow:inset 0 0 0 1px #0003,inset 0 1px 0 #fff8,0 2px 3px #0005}
.kh46-face::before{content:'';position:absolute;inset:7px;border-radius:1px;box-shadow:inset 1.5px 1.5px 2px #0005,1px 1px 0 #fff8}
.kh46-face::after{content:'';position:absolute;inset:0;border-radius:3px;background:linear-gradient(90deg,#0000,#000);opacity:calc(var(--kh46-l,0) * .55)}
.kh46-pull{position:absolute;right:6px;top:50%;width:4px;height:28px;translate:0 -50%;border-radius:3px;background:linear-gradient(90deg,#868b92,#f3f5f7 45%,#6b7078);box-shadow:1px 2px 3px #0007;z-index:1}
.kh46-back{transform:rotateY(180deg);background:linear-gradient(90deg,#f1e9dc,#ddd2c0);box-shadow:inset 0 0 0 1px #0002}
.kh46-back i{position:absolute;right:4px;width:13px;height:13px;border-radius:50%;background:radial-gradient(circle,#c6cbd1 0 32%,#737a83 34% 52%,#dfe3e7 55%);box-shadow:0 0 0 1px #0003,-6px 0 0 -3px #9aa0a8}
.kh46-back i:first-child{top:9px}.kh46-back i:last-child{bottom:9px}
@media (prefers-reduced-motion: reduce){.kh46-track,.kh46-pg,.kh46-hint{transition:none}.kh46-bar.kh46-thud{animation:none}}

/* 47 Door-style sheet · repaint the kitchen */
.kh47{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#ebe5da;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#1f1a15;isolation:isolate}
.kh47::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh47 *{box-sizing:border-box}
.kh47 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#1f1a15}
.kh47-app{position:absolute;inset:0}
.kh47-top{position:absolute;left:16px;top:40px;z-index:2;pointer-events:none}
.kh47-top small{display:block;font:700 8.5px ui-monospace,monospace;letter-spacing:.18em;text-transform:uppercase;color:#8a5a26}
.kh47-top b{font:850 15px system-ui;letter-spacing:-.02em}
.kh47-svg{position:absolute;left:0;top:58px;width:300px;height:350px;display:block;touch-action:none;--kh47-gloss:.14}
.kh47-svg.kh47-g1{--kh47-gloss:.62}
.kh47-sh{opacity:var(--kh47-gloss);mix-blend-mode:screen;pointer-events:none}
.kh47-sheet{position:absolute;left:0;right:0;bottom:0;height:372px;padding:0 14px 16px;border-radius:26px 26px 0 0;background:#fbf8f3;box-shadow:0 -16px 40px -12px #0007,inset 0 1px 0 #fff;transform:translateY(var(--kh47-y,140px));transition:transform .5s cubic-bezier(.2,1.1,.3,1);z-index:5;display:flex;flex-direction:column;gap:10px}
.kh47-sheet.kh47-drag{transition:none}
.kh47-grab{display:block;width:100%;height:24px;border:0;background:none;cursor:grab;touch-action:none;padding:0}
.kh47-grab i{display:block;width:40px;height:5px;margin:9px auto 0;border-radius:3px;background:#cfc6b8}
.kh47-hd{display:flex;justify-content:space-between;align-items:baseline;margin-top:-6px;touch-action:none;cursor:grab}
.kh47-nm{font:850 15px system-ui;letter-spacing:-.02em}
.kh47-pr{font:800 13px system-ui;color:#8a5a26}
.kh47-row{display:flex;gap:6px;justify-content:space-between}
.kh47-st button{flex:1;border:0;border-radius:12px;padding:6px 2px 5px;background:#f0ebe3;display:grid;justify-items:center;gap:3px;cursor:pointer;font:750 9px system-ui;color:#5b4c3c;transition:background .2s,transform .3s cubic-bezier(.3,1.6,.5,1),box-shadow .2s}
.kh47-st svg{width:30px;height:44px;filter:drop-shadow(0 2px 2px #0003)}
.kh47-st button[aria-pressed=true]{background:#1f1a15;color:#f5e3c8;transform:translateY(-3px);box-shadow:0 8px 14px -8px #000}
.kh47-co button{width:34px;height:34px;border-radius:50%;border:0;cursor:pointer;background:var(--kh47-c);background-size:cover;box-shadow:inset 0 -5px 8px #0003,inset 0 3px 5px #fff5,0 0 0 2px #fbf8f3,0 0 0 3px #0001;transition:transform .3s cubic-bezier(.3,1.6,.5,1),box-shadow .2s}
.kh47-co button[aria-pressed=true]{transform:scale(1.14);box-shadow:inset 0 -5px 8px #0003,inset 0 3px 5px #fff5,0 0 0 2px #fbf8f3,0 0 0 4px #8a5a26}
.kh47-fin{display:grid;grid-template-columns:1fr 1fr;padding:3px;border-radius:12px;background:#f0ebe3}
.kh47-fin button{border:0;border-radius:9px;padding:9px;background:none;font:800 12px system-ui;color:#6b5b49;cursor:pointer;transition:background .25s,color .25s}
.kh47-fin button[aria-pressed=true]{background:#fff;color:#1f1a15;box-shadow:0 2px 6px #0002}
.kh47-tot{display:flex;justify-content:space-between;align-items:baseline;padding:12px 2px 0;border-top:1px dashed #0002}
.kh47-tot span{font:650 12px system-ui;color:#6b5b49}.kh47-tot b{font:900 24px system-ui;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.kh47-cta{border:0;border-radius:14px;padding:13px;background:#1f1a15;color:#f5e3c8;font:850 13px system-ui;cursor:pointer}
.kh47 button:focus-visible{outline:2px solid #8a5a26;outline-offset:2px}
@media (prefers-reduced-motion: reduce){.kh47-sheet,.kh47-st button,.kh47-co button,.kh47-fin button{transition:none}}

/* 48 Hinge FAB · double doors unfold */
.kh48{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#f3efe8;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#1f2a1c;isolation:isolate}
.kh48::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh48 *{box-sizing:border-box}
.kh48 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#1f2a1c}
.kh48-app{position:absolute;inset:0;background:radial-gradient(90% 50% at 80% 100%,#dfe6d6,#f3efe8 70%)}
.kh48-home{position:absolute;left:16px;right:16px;top:50px;display:grid;gap:12px}
.kh48-home>small{font:700 9px ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:#6f7f5f}
.kh48-home>b{font:850 24px/1.1 system-ui;letter-spacing:-.03em;margin-top:-6px}
.kh48-card{padding:14px;border-radius:18px;background:#fff;box-shadow:0 10px 24px -14px #3a4a2a66}
.kh48-card p{margin:10px 0 0;font:600 12px/1.45 system-ui;color:#5d6656}
.kh48-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.kh48-steps i{font:800 10px system-ui;font-style:normal;text-align:center;color:#a2a99a;padding-top:12px;position:relative}
.kh48-steps i::before{content:'';position:absolute;left:0;right:0;top:0;height:6px;border-radius:3px;background:#e6e9e1}
.kh48-ok{color:#4f6b3a!important}.kh48-ok::before{background:#7f9a64!important}
.kh48-now{color:#1f2a1c!important}.kh48-now::before{background:linear-gradient(90deg,#7f9a64 50%,#e6e9e1 50%) 0 0/200% 100%!important;animation:kh48-run 1.6s linear infinite}
@keyframes kh48-run{to{background-position:-100% 0}}
.kh48-ship{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:baseline}
.kh48-ship span{font:700 11px system-ui;color:#7d8574}.kh48-ship b{font:850 18px system-ui}.kh48-ship em{grid-column:1/3;font:700 11px system-ui;font-style:normal;color:#4f6b3a}
.kh48-hint{margin:6px 0 0;text-align:right;font:700 10px ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:#6f7f5f;transition:opacity .3s}
.kh48.kh48-big .kh48-hint{opacity:0}
.kh48-scrim{position:absolute;inset:0;background:#141a12cc;backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .45s}
.kh48.kh48-big .kh48-scrim{opacity:1;pointer-events:auto}
.kh48-cab{position:absolute;left:22px;top:104px;width:256px;height:404px;transform-origin:0 0;transform:translate(196px,392px) scale(.25);transition:transform .6s cubic-bezier(.3,1.2,.4,1);perspective:1100px;z-index:6;filter:drop-shadow(0 30px 30px #0008);--kh48-l:0}
.kh48.kh48-big .kh48-cab{transform:none}
.kh48-cab.kh48-thud{animation:kh48-thud .22s ease-out}
@keyframes kh48-thud{40%{translate:0 2px}}
.kh48-box{position:absolute;inset:0;border-radius:4px;background:linear-gradient(90deg,#00000038,#0000 14%,#0000 86%,#00000038),linear-gradient(#e9e2d6,#d7cdbd);box-shadow:inset 0 0 0 9px #c9bda9,inset 0 0 0 10px #0002,inset 0 14px 18px -6px #0006;padding:22px 16px 16px;display:grid;grid-template-rows:repeat(3,1fr)}
.kh48-box::before{content:'';position:absolute;left:12px;right:12px;top:10px;height:3px;border-radius:2px;background:#fff6dc;box-shadow:0 0 18px 6px #ffd27a;opacity:var(--kh48-l)}
.kh48-box::after{content:'';position:absolute;inset:10px;background:radial-gradient(80% 60% at 50% 0,#ffdf9a55,#0000 70%);opacity:var(--kh48-l);pointer-events:none}
.kh48-shelf{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end;padding-bottom:12px}
.kh48-shelf::after{content:'';position:absolute;left:-7px;right:-7px;bottom:0;height:9px;background:linear-gradient(#f4eee4,#d8ccb8);box-shadow:0 1px 0 #fff8 inset,0 8px 10px -4px #0006;border-radius:1px;z-index:-0}
.kh48-item{position:relative;z-index:1;border:0;background:none;padding:0 0 2px;display:grid;justify-items:center;gap:2px;cursor:pointer;color:#2c2418;opacity:0;transform:translateY(-16px) rotate(var(--kh48-r,0deg));transition:opacity .3s,transform .5s cubic-bezier(.3,1.7,.5,1);transition-delay:calc(var(--kh48-i,0) * 55ms)}
.kh48.kh48-lit .kh48-item{opacity:1;transform:none}
.kh48-item svg{width:52px;height:52px;filter:drop-shadow(0 4px 3px #0005);transition:transform .3s cubic-bezier(.3,1.7,.5,1)}
.kh48-item:hover svg,.kh48-item:focus-visible svg{transform:translateY(-4px) rotate(-4deg)}
.kh48-item:active svg{transform:scale(.92)}
.kh48-item span{padding:2px 6px;border-radius:2px;background:#fffdf6;box-shadow:0 1px 2px #0003;font:800 9.5px system-ui;letter-spacing:.02em;white-space:nowrap}
.kh48-item:focus-visible{outline:2px solid #4f6b3a;outline-offset:2px}
.kh48-leaf{position:absolute;top:0;bottom:0;width:50%;transform-style:preserve-3d;z-index:2;pointer-events:none;touch-action:none;cursor:grab}
.kh48.kh48-big .kh48-leaf{pointer-events:auto}
.kh48-dl{left:0;transform-origin:0 50%}.kh48-dr{right:0;transform-origin:100% 50%}
.kh48-face,.kh48-back{position:absolute;inset:0;border-radius:4px;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.kh48-face{background:linear-gradient(115deg,#ffffff1f,#0000 40%),#9aa98c;box-shadow:inset 0 0 0 1px #0003,inset 0 0 0 20px #9aa98c,inset 0 0 0 21px #0002,inset 22px 22px 0 -1px #ffffff14,inset 2px 2px 0 #fff3}
.kh48-face::before{content:'';position:absolute;inset:20px;border-radius:2px;box-shadow:inset 3px 3px 5px #0003,1px 1px 0 #fff4}
.kh48-face::after{content:'';position:absolute;inset:0;border-radius:4px;background:#000;opacity:calc(var(--kh48-s,0) * .4)}
.kh48-knob{position:absolute;top:50%;width:16px;height:16px;margin-top:-8px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#b9bec4 45%,#6c727a);box-shadow:0 3px 4px #0006;z-index:1}
.kh48-dl .kh48-knob{right:9px}.kh48-dr .kh48-knob{left:9px}
.kh48-back{transform:rotateY(180deg);background:linear-gradient(90deg,#f6f2ea,#e6dfd2);box-shadow:inset 0 0 0 1px #0002}
.kh48-back i{position:absolute;width:26px;height:26px;border-radius:50%;background:radial-gradient(circle,#c8cdd2 0 30%,#757c85 33% 50%,#dfe3e7 53%);box-shadow:0 0 0 1px #0003}
.kh48-back i::after{content:'';position:absolute;top:8px;width:30px;height:10px;border-radius:3px;background:linear-gradient(#cfd3d8,#9aa0a8)}
.kh48-dl .kh48-back i{right:10px}.kh48-dl .kh48-back i::after{left:22px}
.kh48-dr .kh48-back i{left:10px}.kh48-dr .kh48-back i::after{right:22px}
.kh48-back i:first-child{top:44px}.kh48-back i:nth-child(2){bottom:44px}
.kh48-back em{position:absolute;left:0;right:0;top:50%;text-align:center;font:700 9px ui-monospace,monospace;font-style:normal;color:#a39883;letter-spacing:.06em;transform:rotate(-90deg)}
.kh48-fab{position:absolute;left:218px;top:496px;width:64px;height:101px;border:0;border-radius:8px;background:none;cursor:pointer;z-index:7;animation:kh48-bob 3s ease-in-out infinite}
.kh48.kh48-big .kh48-fab{pointer-events:none;animation:none}
@keyframes kh48-bob{50%{box-shadow:0 0 0 6px #9aa98c44}}
.kh48-fab:focus-visible,.kh48-x:focus-visible{outline:2px solid #fff;outline-offset:3px}
.kh48-x{position:absolute;left:50%;top:520px;width:44px;height:44px;margin-left:-22px;border-radius:50%;border:0;background:#f3efe8;color:#1f2a1c;font:600 26px/1 system-ui;cursor:pointer;z-index:8;opacity:0;transform:scale(.4);pointer-events:none;transition:opacity .3s,transform .4s cubic-bezier(.3,1.6,.5,1)}
.kh48.kh48-big .kh48-x{opacity:1;transform:none;pointer-events:auto;transition-delay:.35s}
.kh48-toast{position:absolute;left:14px;right:14px;bottom:18px;padding:12px 14px;border-radius:16px;background:#1f2a1c;color:#eef3e6;font:700 12.5px/1.35 system-ui;z-index:9;transform:translateY(calc(100% + 40px));transition:transform .45s cubic-bezier(.3,1.3,.5,1)}
.kh48-toast.kh48-on{transform:none}
@media (prefers-reduced-motion: reduce){.kh48-cab,.kh48-item,.kh48-scrim,.kh48-x,.kh48-toast{transition:none}.kh48-now::before,.kh48-fab,.kh48-cab.kh48-thud{animation:none}}

/* 49 Drawer-stack nav · pull to open */
.kh49{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#e9e4dc;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#1d1e20;isolation:isolate}
.kh49::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh49 *{box-sizing:border-box}
.kh49 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#1d1e20}
.kh49-app{position:absolute;inset:0;background:linear-gradient(#f2eee8,#ddd6cb);overflow:hidden}
.kh49-hd{position:absolute;left:18px;right:18px;top:52px;display:grid;gap:2px;transform:translateY(calc(var(--kh49-e,0) * -60px));opacity:calc(1 - var(--kh49-e,0) * 1.3)}
.kh49-hd small{font:700 9px ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#8a6a45}
.kh49-hd b{font:850 26px/1.05 system-ui;letter-spacing:-.035em}
.kh49-hd span{font:650 12px system-ui;color:#7b746a}
.kh49-stack{position:absolute;inset:0;touch-action:none}
.kh49-dw{display:contents}
.kh49-top{position:absolute;left:0;right:0;top:0;height:22px;background:linear-gradient(#fdfcfa,#e6e2dc 55%,#bdb6ac);box-shadow:0 6px 12px -4px #0007;z-index:6;will-change:transform}
.kh49-top::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(100deg,#0000 0 23px,#00000006 23px 24px,#0000 24px 47px);}
.kh49-in{position:absolute;left:4px;right:4px;top:0;height:170px;z-index:1;background:linear-gradient(#0b0a09,#1f1b17 60%,#2c2620);box-shadow:inset 0 10px 14px -4px #000;will-change:transform,clip-path;clip-path:inset(170px 0 0 0)}
.kh49-tray{position:absolute;left:5px;right:5px;bottom:0;height:170px;transform:perspective(520px) rotateX(26deg);transform-origin:50% 100%;background:linear-gradient(90deg,#c9ab82,#e7cfa8 12%,#ecd6b2 50%,#e7cfa8 88%,#c9ab82);border-radius:4px 4px 0 0;box-shadow:inset 0 28px 24px -16px #0009,inset 0 0 0 7px #d8bb90,inset 0 0 0 8px #0002;padding:16px 16px 10px}
.kh49-rail{position:absolute;top:10px;bottom:6px;left:-5px;width:6px;border-radius:2px;background:radial-gradient(circle,#f1f3f5 0 1.6px,#0000 2px) 0 var(--kh49-b,0px)/6px 8px repeat-y,linear-gradient(90deg,#7c838c,#d4d8dc 50%,#7c838c)}
.kh49-rr{left:auto;right:-5px}
.kh49-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;height:100%}
.kh49-grid button{border:0;border-radius:4px;padding:8px;display:grid;align-content:end;gap:1px;text-align:left;cursor:pointer;background:radial-gradient(120% 90% at 50% 0,#2e3b4d,#1d2633);color:#f1ece4;box-shadow:inset 0 4px 8px #000b,0 0 0 3px #e3c89e,0 0 0 4px #0002;transition:transform .2s,background .2s}
.kh49-grid button b{font:800 12px system-ui}.kh49-grid button span{font:650 10px system-ui;color:#c7b394}
.kh49-grid button:active{transform:scale(.96)}
.kh49-grid button:focus-visible{outline:2px solid #ffcf7a;outline-offset:2px}
.kh49-front{position:absolute;left:4px;right:4px;top:0;height:92px;border:0;border-radius:3px;padding:0 0 0 18px;display:flex;align-items:flex-end;text-align:left;cursor:grab;z-index:3;will-change:transform;color:#c9c4bb;background:var(--kh49-tex,none) center/cover,#2f3134;box-shadow:inset 0 1px 0 #ffffff2a,inset 0 0 0 1px #0007,inset 0 -2px 0 #ffffff12,0 2px 2px #0004,0 calc(4px + var(--kh49-x,0) * 22px) calc(6px + var(--kh49-x,0) * 22px) calc(var(--kh49-x,0) * -4px) #000a;touch-action:none;-webkit-tap-highlight-color:transparent}
.kh49-front::before{content:'';position:absolute;inset:0;border-radius:3px;background:linear-gradient(170deg,#ffffff14,#0000 40%);pointer-events:none}
.kh49-front em{font:800 11px ui-monospace,monospace;font-style:normal;letter-spacing:.2em;text-transform:uppercase;padding-bottom:14px;text-shadow:0 -1px 0 #000a,0 1px 0 #ffffff14}
.kh49-front:focus-visible{outline:2px solid #ffcf7a;outline-offset:-4px}
.kh49-pull{position:absolute;left:22%;right:22%;top:22px;height:8px;border-radius:4px;background:linear-gradient(#f6f7f8,#a9afb6 55%,#e4e7ea);box-shadow:0 5px 6px -2px #000c,inset 0 -1px 0 #0003}
.kh49-pull::before,.kh49-pull::after{content:'';position:absolute;top:6px;width:6px;height:6px;background:#8d939a;border-radius:0 0 2px 2px}
.kh49-pull::before{left:10%}.kh49-pull::after{right:10%}
.kh49-front.kh49-click{animation:kh49-click .22s ease-out}
@keyframes kh49-click{35%{translate:0 2.5px}70%{translate:0 -.5px}}
.kh49-kick{position:absolute;left:0;right:0;top:0;height:40px;background:#1c1b1a;z-index:2;will-change:transform}
.kh49-toast{position:absolute;left:50%;top:44px;max-width:270px;padding:9px 14px;border-radius:999px;background:#1d1e20;color:#f3eee6;font:750 12px system-ui;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transform:translate(-50%,-90px);transition:transform .45s cubic-bezier(.3,1.4,.5,1);z-index:30}
.kh49-toast.kh49-on{transform:translate(-50%,0)}
@media (prefers-reduced-motion: reduce){.kh49-toast{transition:none}.kh49-front.kh49-click{animation:none}}

/* 50 Laminate wheel · spin to repaint */
.kh50{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#141414;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#f1ede6;isolation:isolate}
.kh50::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh50 *{box-sizing:border-box}
.kh50 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#f1ede6}
.kh50-app{position:absolute;inset:0;background:radial-gradient(70% 45% at 50% 32%,#3a3632,#141414 75%)}
.kh50-hd{position:absolute;left:18px;top:44px}
.kh50-hd small{display:block;font:700 8.5px ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#c8a77a}
.kh50-hd b{font:850 18px system-ui;letter-spacing:-.02em}
.kh50-door{position:absolute;left:66px;top:90px;width:168px;height:252px;border-radius:6px;box-shadow:0 30px 40px -18px #000,0 0 0 1px #0006;touch-action:none;cursor:crosshair}
.kh50-tip{position:absolute;left:0;right:0;top:348px;margin:0;text-align:center;font:700 8.5px ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:#ffffff4d}
.kh50-info{position:absolute;left:20px;right:20px;top:370px;display:flex;justify-content:space-between;align-items:end}
.kh50-nm{display:block;font:850 20px system-ui;letter-spacing:-.03em}
.kh50-cd{font:700 10.5px ui-monospace,monospace;color:#b9ad9c;letter-spacing:.04em}
.kh50-pr{font:900 24px system-ui;color:#e6c08c;letter-spacing:-.03em}.kh50-pr small{font:700 11px system-ui;color:#b9ad9c;margin-left:3px}
.kh50-notch{position:absolute;left:50%;top:446px;width:0;height:0;margin-left:-8px;border:8px solid transparent;border-top:12px solid #e6c08c;filter:drop-shadow(0 3px 3px #000);z-index:3;transition:transform .12s}
.kh50-notch.kh50-tk{transform:translateY(-3px) scaleX(.85)}
.kh50-wheel{position:absolute;left:-140px;top:462px;width:580px;height:580px;border-radius:50%;touch-action:none;cursor:grab;background:radial-gradient(circle,#0000 0 196px,#1d1b19 197px 268px,#2b2825 269px 280px,#141312 281px),conic-gradient(from -1deg,#ffffff1c 0 2deg,#0000 2deg 24deg);background-blend-mode:normal;box-shadow:inset 0 0 0 1px #ffffff14,0 -12px 30px #000a}
.kh50-wheel:focus-visible{outline:2px solid #e6c08c;outline-offset:-6px}
.kh50-rot{position:absolute;inset:0;transform:rotate(var(--kh50-a,0deg))}
.kh50-chip{position:absolute;left:50%;top:50%;width:58px;height:86px;margin:-43px 0 0 -29px;border-radius:7px;transform:rotate(var(--kh50-r)) translateY(-232px);background:var(--kh50-t) center/cover;box-shadow:0 8px 14px -6px #000,inset 0 0 0 1px #0004,inset 0 1px 0 #fff4;overflow:hidden;cursor:pointer;border:0;padding:0}
.kh50-chip::after{content:attr(data-n);position:absolute;left:0;right:0;bottom:0;padding:3px 3px 4px;background:#f6f2ebee;color:#2a241c;font:800 7.5px/1.1 system-ui;text-align:center}
.kh50-chip.kh50-on{box-shadow:0 0 0 2px #e6c08c,0 12px 18px -6px #000}
.kh50-hub{position:absolute;left:50%;top:50%;width:150px;height:150px;margin:-75px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#4a4540,#1a1816);box-shadow:inset 0 2px 0 #ffffff1a}
@media (prefers-reduced-motion: reduce){.kh50-notch{transition:none}}

/* 51 Hanger carousel · slide the rod */
.kh51{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#efe8de;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#2a2219;isolation:isolate}
.kh51::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh51 *{box-sizing:border-box}
.kh51 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#2a2219}
.kh51-app{position:absolute;inset:0;background:repeating-linear-gradient(90deg,#0000 0 49px,#0000000a 49px 50px),linear-gradient(#f6f1ea,#e4d9ca)}
.kh51-hd{position:absolute;left:18px;top:44px}
.kh51-hd small{display:block;font:700 9px ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#a0703c}
.kh51-hd b{font:850 18px system-ui;letter-spacing:-.02em}
.kh51-card{position:absolute;left:14px;right:14px;top:96px;height:236px;padding:16px;border-radius:20px;background:#fffdf9;box-shadow:0 14px 30px -18px #5a3d1f88,inset 0 0 0 1px #0000000a;overflow:hidden}
.kh51-card>div{animation:kh51-in .45s cubic-bezier(.2,1,.3,1) both}
@keyframes kh51-in{from{opacity:0;transform:translateX(calc(var(--kh51-d,1) * 26px))}}
.kh51-card h4{margin:0;font:900 22px/1.05 system-ui;letter-spacing:-.035em}
.kh51-card p{margin:6px 0 10px;font:600 12.5px/1.4 system-ui;color:#76675a}
.kh51-card ul{margin:0 0 12px;padding:0;list-style:none;display:grid;gap:5px}
.kh51-card li{font:700 12px system-ui;padding-left:18px;position:relative}
.kh51-card li::before{content:'';position:absolute;left:2px;top:3px;width:9px;height:5px;border:solid #a0703c;border-width:0 0 2px 2px;transform:rotate(-45deg)}
.kh51-row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.kh51-pr{font:900 15px system-ui;color:#a0703c}
.kh51-cta{border:0;border-radius:12px;padding:10px 13px;background:#2a2219;color:#f6e7cf;font:800 12px system-ui;cursor:pointer}
.kh51-cta:focus-visible,.kh51-h:focus-visible{outline:2px solid #a0703c;outline-offset:2px}
.kh51-rail{position:absolute;left:0;right:0;top:340px;bottom:0;touch-action:none;cursor:grab}
.kh51-defs{position:absolute}
.kh51-rod{position:absolute;left:-4px;right:-4px;top:16px;height:9px;border-radius:5px;background:linear-gradient(#6f757d,#f6f8fa 35%,#a9afb6 60%,#5b6168);box-shadow:0 5px 8px -3px #0006;z-index:1}
.kh51-rod i{position:absolute;top:-7px;width:10px;height:23px;border-radius:3px;background:linear-gradient(90deg,#8b9199,#eef1f3,#7b8189)}
.kh51-rod i:first-child{left:6px}.kh51-rod i:last-child{right:6px}
.kh51-h{position:absolute;left:0;top:10px;width:80px;height:210px;padding:0;border:0;background:none;cursor:pointer;transform-origin:40px 6px;z-index:2;-webkit-tap-highlight-color:transparent;filter:drop-shadow(0 calc(4px + var(--kh51-k,0) * 10px) calc(4px + var(--kh51-k,0) * 8px) #3b2a1a55)}
.kh51-h svg{width:80px;height:210px;display:block;overflow:visible}
.kh51-h span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.kh51-hook{fill:none;stroke:#b4bac2;stroke-width:2.2;stroke-linecap:round}
.kh51-bar{fill:none;stroke:#8a5a2e;stroke-width:5;stroke-linecap:round}
.kh51-tag rect{fill:#fffaf0;stroke:#0002}.kh51-tag text{font:800 7px system-ui;text-anchor:middle;fill:#6b4a26}
.kh51-rail.kh51-bump .kh51-rod{animation:kh51-bump .25s}
@keyframes kh51-bump{40%{transform:translateY(1.5px)}}
@media (prefers-reduced-motion: reduce){.kh51-card>div{animation:none}.kh51-rail.kh51-bump .kh51-rod{animation:none}}

/* 52 Mirror pocket doors · part to open */
.kh52{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#2a241e;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#2b241c;isolation:isolate;--kh52-f:0}
.kh52::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh52 *{box-sizing:border-box}
.kh52 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#f2ede6;text-shadow:0 1px 2px #0008}
.kh52-app{position:absolute;inset:0;background:#d9d4cc}
.kh52-in{position:absolute;left:0;right:0;top:0;bottom:0;background:linear-gradient(90deg,#0000 0 74px,#00000026 74px 76px,#0000 76px 149px,#00000026 149px 151px,#0000 151px 224px,#00000026 224px 226px,#0000 226px),linear-gradient(#e7dccb,#d8c8b0)}
.kh52-led{position:absolute;left:6px;right:6px;top:46px;height:3px;border-radius:2px;background:#fff7e2;box-shadow:0 0 16px 5px #ffd48a,0 30px 80px 20px #ffd48a55;opacity:var(--kh52-f)}
.kh52-col,.kh52-shoes{position:absolute;border:0;padding:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.kh52-col{top:52px;width:75px;height:390px}
.kh52-c1{left:0}.kh52-c2{left:75px}.kh52-c3{left:150px}.kh52-c4{left:225px}
.kh52-col em,.kh52-shoes em{position:absolute;left:50%;bottom:6px;translate:-50% 0;padding:3px 7px;border-radius:999px;background:#2b241cdd;color:#f6ead6;font:800 9px system-ui;font-style:normal;white-space:nowrap;opacity:var(--kh52-f);transition:transform .2s}
.kh52-col:hover em,.kh52-col:focus-visible em,.kh52-shoes:hover em{transform:scale(1.1)}
.kh52-col:focus-visible,.kh52-shoes:focus-visible,.kh52-part:focus-visible,.kh52-add:focus-visible{outline:2px solid #ffd48a;outline-offset:-3px}
.kh52-rod{position:absolute;left:5px;right:5px;top:18px;height:5px;border-radius:3px;background:linear-gradient(#7b8189,#f2f4f6 40%,#8d939b)}
.kh52-r2{top:200px}
.kh52-gs{position:absolute;left:8px;right:8px;top:20px;display:flex;justify-content:space-around}
.kh52-gs i{width:13px;height:var(--kh52-h,250px);border-radius:3px 3px 6px 6px;background:linear-gradient(90deg,#fff3,#0000 40%,#0003);box-shadow:0 4px 6px #0003;transform:rotate(var(--kh52-r,0deg));transform-origin:50% 0}
.kh52-c1 .kh52-gs i:nth-child(1){background-color:#2f3a4f;--kh52-h:270px}.kh52-c1 .kh52-gs i:nth-child(2){background-color:#8e2f45;--kh52-h:300px;--kh52-r:2deg}.kh52-c1 .kh52-gs i:nth-child(3){background-color:#c2a878;--kh52-h:310px}.kh52-c1 .kh52-gs i:nth-child(4){background-color:#4a5a44;--kh52-h:260px;--kh52-r:-2deg}
.kh52-sh i{--kh52-h:120px}
.kh52-g2{top:202px}
.kh52-c2 .kh52-gs i:nth-child(1){background-color:#9fc0e4}.kh52-c2 .kh52-gs i:nth-child(2){background-color:#f1efe9;--kh52-r:1.5deg}.kh52-c2 .kh52-gs i:nth-child(3){background-color:#3d4148}
.kh52-c2 .kh52-g2 i:nth-child(1){background-color:#d9a63c;--kh52-h:96px}.kh52-c2 .kh52-g2 i:nth-child(2){background-color:#7a8ca3;--kh52-h:104px}.kh52-c2 .kh52-g2 i:nth-child(3){background-color:#c46a52;--kh52-h:96px}
.kh52-shelf{position:absolute;left:4px;right:4px;height:86px;display:flex;align-items:flex-end;justify-content:center;gap:4px;padding-bottom:6px;border-bottom:6px solid #f4ede2;box-shadow:0 7px 6px -4px #0004}
.kh52-shelf:nth-child(1){top:0}.kh52-shelf:nth-child(2){top:90px}.kh52-shelf:nth-child(3){top:180px}.kh52-shelf:nth-child(4){top:270px}
.kh52-shelf i{width:20px;height:var(--kh52-h,34px);border-radius:3px;background:repeating-linear-gradient(#0000 0 6px,#00000026 6px 7px),var(--kh52-c,#7a8ca3);box-shadow:inset 0 1px 0 #fff4}
.kh52-shelf:nth-child(1) i{--kh52-c:#d6c8b1}.kh52-shelf:nth-child(2) i{--kh52-c:#9aa98c;--kh52-h:28px}.kh52-shelf:nth-child(3) i{--kh52-c:#c46a52;--kh52-h:40px}.kh52-shelf:nth-child(4) i{--kh52-c:#3d4148;--kh52-h:30px}
.kh52-tray{position:absolute;left:5px;right:5px;top:150px;height:30px;border-radius:2px;background:repeating-linear-gradient(90deg,#3a2433 0 14px,#d9c39c 14px 16px);box-shadow:inset 0 3px 5px #000a}
.kh52-dr{position:absolute;left:4px;right:4px;height:46px;border-radius:2px;background:linear-gradient(#f6f1e8,#e5dccd);box-shadow:inset 0 0 0 1px #0002,0 2px 2px #0002}
.kh52-dr::after{content:'';position:absolute;left:35%;right:35%;top:12px;height:4px;border-radius:2px;background:linear-gradient(#f8f9fa,#9aa0a7)}
.kh52-c4 .kh52-dr:nth-child(2){top:186px}.kh52-c4 .kh52-dr:nth-child(3){top:236px}.kh52-c4 .kh52-dr:nth-child(4){top:286px}.kh52-c4 .kh52-dr:nth-child(5){top:336px}
.kh52-shoes{left:0;right:0;top:448px;height:100px;display:flex;align-items:flex-end;justify-content:space-around;padding:0 10px 30px;background:linear-gradient(#0000 70%,#f4ede2 70% 76%,#0000 76%)}
.kh52-shoes i{width:34px;height:15px;border-radius:12px 16px 3px 3px;background:var(--kh52-c,#8e2f45);box-shadow:-6px -3px 0 -1px var(--kh52-c,#8e2f45),0 3px 3px #0004;transform:skewX(-8deg)}
.kh52-shoes i:nth-child(2){--kh52-c:#2b2b2e}.kh52-shoes i:nth-child(3){--kh52-c:#f1efe9}.kh52-shoes i:nth-child(4){--kh52-c:#a0703c}.kh52-shoes i:nth-child(5){--kh52-c:#4a5a44}.kh52-shoes i:nth-child(6){--kh52-c:#c2a878}
.kh52-dark{position:absolute;inset:0;background:radial-gradient(80% 60% at 50% 10%,#0000,#000 90%),#000;opacity:calc(.82 - var(--kh52-f) * .82);pointer-events:none}
.kh52-track{position:absolute;left:0;right:0;top:36px;height:10px;background:linear-gradient(#5b6168,#c9ced3 50%,#6b7178);z-index:3}
.kh52-tb{top:auto;bottom:0;height:8px}
.kh52-door{position:absolute;top:44px;bottom:6px;width:154px;padding:5px;background:linear-gradient(90deg,#8d939a,#eef1f3 30%,#a8aeb5 60%,#e3e6e9);box-shadow:0 0 0 1px #0005,0 10px 30px #0008;z-index:4;touch-action:none;cursor:grab;will-change:transform}
.kh52-dl{left:0;transform:translateX(var(--kh52-xl,0px))}
.kh52-dr2{right:0;transform:translateX(var(--kh52-xr,0px));z-index:5}
.kh52-mir{position:relative;width:100%;height:100%;overflow:hidden;background:radial-gradient(60% 22% at var(--kh52-wx,40%) 30%,#fffef9 0 30%,#fff0 70%),linear-gradient(180deg,#b8c4cc 0%,#dfe7ec 30%,#c6d0d7 58%,#8b7a68 66%,#a08b74 100%);background-size:200% 100%,100% 100%;background-position:var(--kh52-p,50%) 0,0 0;box-shadow:inset 0 0 0 1px #0003,inset 0 0 30px #0002}
.kh52-mir::before{content:'';position:absolute;inset:-20%;background:linear-gradient(115deg,#0000 30%,#ffffff8c 42%,#ffffff1a 47%,#0000 55%,#0000 62%,#ffffff4d 65%,#0000 69%);transform:translateX(var(--kh52-s,0px))}
.kh52-mir::after{content:'';position:absolute;left:18%;top:20%;width:30%;height:28%;border:3px solid #ffffffa0;border-top-width:6px;box-shadow:0 0 22px #fff;opacity:.55;transform:translateX(var(--kh52-s,0px)) skewY(-3deg)}
.kh52-etch{position:absolute;left:0;right:0;top:46%;text-align:center;font:italic 800 17px Georgia,serif;letter-spacing:.06em;color:#ffffff6e;text-shadow:0 1px 0 #0002}
.kh52-band{position:absolute;left:0;right:0;top:44%;height:42px;background:repeating-linear-gradient(90deg,#ffffff38 0 2px,#ffffff10 2px 5px);backdrop-filter:blur(2px)}
.kh52-grip{position:absolute;top:44%;width:6px;height:70px;border-radius:3px;background:linear-gradient(90deg,#5a6067,#d9dde1 50%,#5a6067);box-shadow:inset 0 0 0 1px #0004}
.kh52-dl .kh52-grip{right:12px}.kh52-dr2 .kh52-grip{left:12px}
.kh52-part{position:absolute;left:50%;bottom:24px;translate:-50% 0;z-index:6;border:0;border-radius:999px;padding:10px 16px;background:#1f1b17e6;color:#f6ead6;font:800 12px system-ui;cursor:pointer;box-shadow:0 8px 18px -6px #000;transition:opacity .3s}
.kh52.kh52-o .kh52-part{opacity:.0;pointer-events:none}
.kh52-sheet{position:absolute;left:10px;right:10px;bottom:12px;padding:14px;border-radius:20px;background:#fffaf2;z-index:7;box-shadow:0 -10px 30px -8px #0009;transform:translateY(calc(100% + 30px));transition:transform .45s cubic-bezier(.3,1.3,.5,1)}
.kh52-sheet.kh52-on{transform:none}
.kh52-sheet b{font:900 18px system-ui;letter-spacing:-.02em}.kh52-sheet p{margin:4px 0 10px;font:600 12px/1.4 system-ui;color:#76675a}
.kh52-sheet div{display:flex;justify-content:space-between;align-items:center}.kh52-sheet span{font:900 15px system-ui;color:#a0703c}
.kh52-add{border:0;border-radius:12px;padding:10px 12px;background:#2b241c;color:#f6ead6;font:800 12px system-ui;cursor:pointer}
@media (prefers-reduced-motion: reduce){.kh52-sheet,.kh52-part,.kh52-col em{transition:none}}

/* 53 Shoe-cubby launcher · pick up a pair */
.kh53{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#3a2a1d;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#f6ead6;isolation:isolate}
.kh53::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh53 *{box-sizing:border-box}
.kh53 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#f6ead6}
.kh53-app{position:absolute;inset:0;background:radial-gradient(90% 50% at 50% 0,#5a4130,#2a1e15 80%)}
.kh53-hd{position:absolute;left:18px;right:16px;top:44px;display:flex;justify-content:space-between;align-items:center}
.kh53-hd small{display:block;font:700 9px ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#e0b47a}
.kh53-hd b{font:850 18px system-ui;letter-spacing:-.02em}
.kh53-done{border:0;border-radius:999px;padding:7px 14px;background:#e0b47a;color:#2a1e15;font:850 12px system-ui;cursor:pointer}
.kh53-defs{position:absolute}
.kh53-wall{position:absolute;left:10px;right:10px;top:94px;height:480px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(4,1fr);padding:6px;gap:6px;border-radius:6px;background:linear-gradient(90deg,#c9a679,#e2c497 30%,#d6b685 70%,#c09c6e);box-shadow:inset 0 0 0 1px #0003,0 20px 30px -12px #000}
.kh53-cub{position:relative;border-radius:2px;background:linear-gradient(#2c1f15,#4a3523 60%,#5a4130);box-shadow:inset 0 10px 14px -4px #000c,inset 6px 0 8px -6px #0009,inset -6px 0 8px -6px #0009}
.kh53-cub.kh53-tgt{box-shadow:inset 0 0 0 2px #e0b47a,inset 0 10px 14px -4px #000c}
.kh53-a{position:absolute;inset:0;border:0;padding:0;background:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;color:inherit;touch-action:none;-webkit-tap-highlight-color:transparent;transition:transform .28s cubic-bezier(.3,1.5,.5,1),filter .28s}
.kh53-a svg{width:74px;height:44px;margin-bottom:8px;filter:drop-shadow(0 5px 3px #000a);transition:transform .3s cubic-bezier(.3,1.6,.5,1)}
.kh53-a span{margin-bottom:-3px;padding:2px 6px 3px;border-radius:2px;background:linear-gradient(#e9cf8f,#b88f45);color:#3a2a10;font:850 8.5px system-ui;letter-spacing:.03em;box-shadow:0 1px 0 #fff6 inset,0 2px 3px #0006;white-space:nowrap}
.kh53-a:hover svg,.kh53-a:focus-visible svg{transform:translateY(-3px)}
.kh53-a:focus-visible{outline:2px solid #e0b47a;outline-offset:-2px}
.kh53-a.kh53-pull{transform:translateY(8px) scale(1.18);z-index:5;filter:drop-shadow(0 16px 12px #000c)}
.kh53-edit .kh53-a{animation:kh53-wig .32s ease-in-out infinite alternate;animation-delay:calc(var(--kh53-i,0) * -70ms);cursor:grab}
@keyframes kh53-wig{from{transform:rotate(-2.2deg)}to{transform:rotate(2.2deg)}}
.kh53-a.kh53-drag{animation:none!important;transition:none;z-index:20;filter:drop-shadow(0 22px 16px #000d);cursor:grabbing}
.kh53-hint{position:absolute;left:0;right:0;bottom:16px;margin:0;text-align:center;font:700 9px ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:#e0b47a99}
.kh53-panel{position:absolute;inset:36px 0 0;padding:16px 20px;background:linear-gradient(#f7efe2,#eadbc3);color:#2a1e15;z-index:30;transform-origin:0 0;border-radius:24px 24px 0 0}
.kh53-back{border:0;background:none;padding:6px 0;font:800 14px system-ui;color:#a0703c;cursor:pointer}
.kh53-pshoe{height:170px;margin:12px -20px 6px;display:grid;place-items:center;background:radial-gradient(50% 30% at 50% 82%,#0003,#0000 70%)}
.kh53-pshoe svg{width:220px;height:130px;filter:drop-shadow(0 12px 8px #0005);animation:kh53-float 3s ease-in-out infinite}
@keyframes kh53-float{50%{transform:translateY(-6px) rotate(-2deg)}}
.kh53-panel h4{margin:0;font:900 26px system-ui;letter-spacing:-.035em}
.kh53-panel p{margin:8px 0 18px;font:600 13px/1.45 system-ui;color:#76675a}
.kh53-go{width:100%;border:0;border-radius:14px;padding:14px;background:#2a1e15;color:#f6ead6;font:850 14px system-ui;cursor:pointer}
.kh53-back:focus-visible,.kh53-go:focus-visible,.kh53-done:focus-visible{outline:2px solid #a0703c;outline-offset:2px}
@media (prefers-reduced-motion: reduce){.kh53-edit .kh53-a,.kh53-pshoe svg{animation:none}.kh53-a,.kh53-a svg{transition:none}}

/* 54 Outfit-planner sheet · dress the week */
.kh54{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#f1ebe2;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#2a2219;isolation:isolate}
.kh54::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh54 *{box-sizing:border-box}
.kh54 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#2a2219}
.kh54-app{position:absolute;inset:0;background:linear-gradient(#f7f2eb,#e9dfd1)}
.kh54-defs{position:absolute}
.kh54-hd{position:absolute;left:18px;top:44px;display:grid}
.kh54-hd small{font:700 9px ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#a0703c}
.kh54-hd b{font:850 22px system-ui;letter-spacing:-.03em}
.kh54-hd span{font:600 11.5px system-ui;color:#86786a}
.kh54-rail{position:absolute;left:0;right:0;top:118px;height:180px;display:flex;justify-content:space-around;padding:0 4px}
.kh54-rod{position:absolute;left:-4px;right:-4px;top:12px;height:8px;border-radius:4px;background:linear-gradient(#6f757d,#f6f8fa 35%,#a9afb6 60%,#5b6168);box-shadow:0 5px 7px -3px #0006}
.kh54-g{position:relative;width:48px;height:150px;border:0;padding:0;background:none;cursor:grab;touch-action:none;transform-origin:24px 6px;-webkit-tap-highlight-color:transparent;transition:opacity .2s;animation:kh54-sway 4s ease-in-out infinite alternate;animation-delay:calc(var(--kh54-i) * -.7s)}
@keyframes kh54-sway{from{transform:rotate(-1.4deg)}to{transform:rotate(1.4deg)}}
.kh54-g svg,.kh54-fly svg,.kh54-slot svg{width:100%;height:100%;display:block;overflow:visible;filter:drop-shadow(0 6px 5px #3b2a1a40)}
.kh54-g.kh54-lift{opacity:.35}
.kh54-g:focus-visible{outline:2px solid #a0703c;outline-offset:2px}
.kh54-sheet{position:absolute;left:0;right:0;top:312px;bottom:-80px;padding:0 14px 94px;border-radius:26px 26px 0 0;background:#fffdf9;box-shadow:0 -14px 34px -14px #5a3d1f88;transition:transform .45s cubic-bezier(.3,1.3,.5,1),box-shadow .3s}
.kh54.kh54-drag .kh54-sheet{transform:translateY(-10px);box-shadow:0 -18px 40px -10px #a0703c99}
.kh54.kh54-full .kh54-sheet{transform:translateY(-60px)}
.kh54-grab{width:40px;height:5px;margin:9px auto 8px;border-radius:3px;background:#d9cfc2}
.kh54-sh{display:flex;justify-content:space-between;align-items:baseline}
.kh54-sh b{font:850 16px system-ui}.kh54-ct{font:800 12px system-ui;color:#a0703c}
.kh54-valet{position:relative;margin-top:10px;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;height:170px}
.kh54-vbar{position:absolute;left:0;right:0;top:30px;height:6px;border-radius:3px;background:linear-gradient(#7b8189,#f2f4f6 40%,#8d939b);box-shadow:0 4px 5px -2px #0005}
.kh54-slot{position:relative;border:0;padding:0;background:none;cursor:pointer;display:grid;grid-template-rows:24px 1fr;justify-items:center;border-radius:12px;transition:background .2s}
.kh54-slot>small{font:800 10px system-ui;color:#86786a;line-height:1.1;text-align:center}.kh54-slot>small i{display:block;font-style:normal;font-weight:650;font-size:9px;color:#b3a594}
.kh54-slot .kh54-ph{width:46px;height:120px;margin-top:6px;border:2px dashed #d9cfc2;border-radius:10px 10px 14px 14px}
.kh54-slot .kh54-m{width:48px;height:132px;margin-top:4px;transform-origin:24px 6px}
.kh54-slot.kh54-hot{background:#a0703c1f}
.kh54-slot.kh54-hot .kh54-ph{border-color:#a0703c}
.kh54-slot:focus-visible{outline:2px solid #a0703c}
.kh54-up{display:flex;gap:10px;align-items:center;margin-top:8px;padding:12px;border-radius:16px;background:#2a2219;color:#f6ead6;opacity:0;transform:translateY(20px);transition:opacity .35s,transform .45s cubic-bezier(.3,1.4,.5,1)}
.kh54.kh54-full .kh54-up{opacity:1;transform:none}
.kh54-vr{width:30px;height:30px;flex:none;border-radius:8px;background:linear-gradient(#eef1f3,#9aa0a7);position:relative}
.kh54-vr::after{content:'';position:absolute;left:4px;right:-12px;top:13px;height:4px;border-radius:2px;background:#5b6168}
.kh54-up div{flex:1;display:grid}.kh54-up b{font:850 13px system-ui}.kh54-up span{font:600 11px system-ui;color:#cdb998}
.kh54-add{border:0;border-radius:10px;padding:9px 12px;background:#e0b47a;color:#2a1e15;font:850 12px system-ui;cursor:pointer}
.kh54-fly{position:absolute;left:0;top:0;width:48px;height:150px;pointer-events:none;z-index:20;display:none;transform-origin:24px 6px}
.kh54-conf{position:absolute;width:14px;height:8px;border-top:2.5px solid #a0703c;border-radius:50% 50% 0 0;z-index:21;pointer-events:none}
@media (prefers-reduced-motion: reduce){.kh54-g{animation:none}.kh54-sheet,.kh54-up{transition:none}}

/* 55 Pull-down rod · gesture menu */
.kh55{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#e9dfd0;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#2a2219;isolation:isolate}
.kh55::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh55 *{box-sizing:border-box}
.kh55 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#2a2219}
.kh55-app{position:absolute;inset:0;touch-action:none;cursor:ns-resize;user-select:none;-webkit-user-select:none}
.kh55-mech{position:absolute;inset:0;width:300px;height:620px;display:block}
.kh55-hd{position:absolute;left:22px;right:22px;top:290px;display:grid;justify-items:center;text-align:center;opacity:calc(1 - var(--kh55-t,0) * 2.2);transform:translateY(calc(var(--kh55-t,0) * 40px));pointer-events:none}
.kh55-hd small{font:700 9px ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#a0703c}
.kh55-hd b{font:900 24px system-ui;letter-spacing:-.03em}
.kh55-tip{margin-top:4px;padding:6px 12px;border-radius:999px;background:#2a2219;color:#f6ead6;font:800 11.5px system-ui;animation:kh55-nudge 1.6s ease-in-out infinite}
@keyframes kh55-nudge{50%{transform:translateY(5px)}}
.kh55-items{position:absolute;left:0;top:0;width:300px;height:0}
.kh55-it{position:absolute;left:0;top:0;width:60px;height:150px;border:0;padding:0;background:none;cursor:pointer;transform-origin:30px 4px;pointer-events:none;-webkit-tap-highlight-color:transparent}
.kh55.kh55-down .kh55-it{pointer-events:auto}
.kh55-it svg{width:60px;height:120px;display:block;overflow:visible;filter:drop-shadow(0 6px 5px #3b2a1a55)}
.kh55-it span{display:block;margin:2px auto 0;width:62px;padding:3px 4px;border-radius:6px;background:#fffaf2;box-shadow:0 2px 6px #0003;font:800 8px/1.15 system-ui;text-align:center;color:#2a2219;opacity:var(--kh55-lb,0);translate:-1px 0}
.kh55-it span em{display:block;font-style:normal;color:#a0703c}
.kh55-it:focus-visible{outline:2px solid #a0703c;outline-offset:2px}
.kh55-handle{position:absolute;left:0;top:0;width:44px;height:52px;margin-left:-22px;border:0;padding:0;background:none;cursor:pointer;z-index:5}
.kh55-handle i{position:absolute;left:12px;top:0;width:20px;height:40px;border:4px solid #9aa0a7;border-top-width:0;border-radius:0 0 12px 12px;box-shadow:0 4px 5px -2px #0005}
.kh55-handle i::after{content:'';position:absolute;left:-4px;right:-4px;bottom:-4px;height:8px;border-radius:4px;background:#2c2f33}
.kh55-handle:focus-visible{outline:2px solid #a0703c;outline-offset:2px;border-radius:8px}
.kh55-toast{position:absolute;left:14px;right:14px;bottom:16px;padding:12px 14px;border-radius:16px;background:#2a2219;color:#f6ead6;font:700 12.5px/1.35 system-ui;z-index:9;transform:translateY(calc(100% + 30px));transition:transform .45s cubic-bezier(.3,1.3,.5,1)}
.kh55-toast.kh55-on{transform:none}
@media (prefers-reduced-motion: reduce){.kh55-tip{animation:none}.kh55-toast{transition:none}}

/* 56 Door-style deck · swipe to a quote */
.kh56{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#14161b;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#f3efe8;isolation:isolate}
.kh56::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh56 *{box-sizing:border-box}
.kh56 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#f3efe8}
.kh56-app{position:absolute;inset:0;background:radial-gradient(80% 50% at 50% 45%,#2b2f38,#14161b 75%)}
.kh56-hd{position:absolute;left:16px;right:14px;top:42px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.kh56-hd small{display:block;font:700 8.5px ui-monospace,monospace;letter-spacing:.18em;text-transform:uppercase;color:#f0b35a}
.kh56-hd b{font:850 18px system-ui;letter-spacing:-.02em}
.kh56-tray{display:flex;flex-direction:row-reverse;min-width:40px;height:36px;align-items:center}
.kh56-tray i{width:22px;height:32px;margin-left:-8px;border-radius:3px;box-shadow:0 0 0 2px #14161b,0 4px 6px #0008;background:var(--kh56-c);position:relative;animation:kh56-pop .4s cubic-bezier(.3,1.8,.5,1)}
.kh56-tray i::after{content:'';position:absolute;inset:4px;border-radius:1px;box-shadow:inset 1px 1px 1px #0005,1px 1px 0 #fff5}
@keyframes kh56-pop{from{transform:scale(0)}}
.kh56-deck{position:absolute;left:30px;right:30px;top:100px;height:360px}
.kh56-card{position:absolute;inset:0;border-radius:22px;background:linear-gradient(#f7f3ec,#e8e0d3);color:#211c16;box-shadow:0 24px 40px -18px #000,inset 0 1px 0 #fff;overflow:hidden;touch-action:none;cursor:grab;transform-origin:50% 120%;transition:transform .35s cubic-bezier(.3,1.3,.5,1);user-select:none;-webkit-user-select:none}
.kh56-card.kh56-g{transition:none}
.kh56-card svg{position:absolute;left:50%;top:18px;width:150px;height:230px;margin-left:-75px;filter:drop-shadow(0 14px 12px #0004)}
.kh56-card .kh56-meta{position:absolute;left:16px;right:16px;bottom:14px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:2px 8px}
.kh56-meta b{font:900 20px system-ui;letter-spacing:-.03em}.kh56-meta span{font:900 18px system-ui;color:#b5651d}.kh56-meta em{grid-column:1/3;font:600 11.5px system-ui;font-style:normal;color:#7a6c5c}
.kh56-st{position:absolute;top:26px;padding:4px 10px;border:4px solid;border-radius:8px;font:900 26px/1 system-ui;letter-spacing:.06em;opacity:0;mix-blend-mode:multiply}
.kh56-st1{left:14px;color:#2e9a52;transform:rotate(-16deg)}.kh56-st2{right:14px;color:#d23c3c;transform:rotate(14deg)}.kh56-st3{left:50%;top:auto;bottom:90px;margin-left:-56px;color:#2f6fd6;transform:rotate(-6deg)}
.kh56-acts{position:absolute;left:0;right:0;bottom:30px;display:flex;justify-content:center;gap:18px}
.kh56-acts button{width:58px;height:58px;border-radius:50%;border:0;cursor:pointer;font:900 22px system-ui;background:#23262e;box-shadow:0 10px 20px -8px #000,inset 0 1px 0 #ffffff1a;transition:transform .2s cubic-bezier(.3,1.8,.5,1)}
.kh56-acts button:active{transform:scale(.88)}
.kh56-no{color:#ff6b6b}.kh56-love{color:#6aa3ff;width:46px!important;height:46px!important;align-self:center;font-size:18px!important}.kh56-yes{color:#4cd07d}
.kh56-acts button:focus-visible,.kh56-quote button:focus-visible{outline:2px solid #f0b35a;outline-offset:3px}
.kh56.kh56-done .kh56-acts{opacity:0;pointer-events:none}
.kh56-quote{position:absolute;left:16px;right:16px;top:92px;padding:16px;border-radius:22px;background:#f7f3ec;color:#211c16;box-shadow:0 24px 40px -18px #000;animation:kh56-q .6s cubic-bezier(.3,1.3,.5,1)}
@keyframes kh56-q{from{transform:translateY(40px) scale(.9);opacity:0}}
.kh56-quote small{font:700 9px ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:#b5651d}
.kh56-picks{display:flex;gap:6px;margin:10px 0 12px;min-height:44px}
.kh56-picks i{width:30px;height:44px;border-radius:3px;background:var(--kh56-c);box-shadow:0 4px 6px #0004;position:relative}
.kh56-picks i::after{content:'';position:absolute;inset:5px;box-shadow:inset 1px 1px 1px #0005,1px 1px 0 #fff5}
.kh56-ln{display:flex;justify-content:space-between;align-items:baseline;padding:6px 0;border-top:1px dashed #0002;font:650 12.5px system-ui}
.kh56-sum{font:900 20px system-ui}.kh56-bb span{color:#7a6c5c}.kh56-big{color:#a0938a;font:800 14px system-ui}
.kh56-save{margin:6px 0;padding:10px 12px;border-radius:12px;background:#e3f4e6;color:#1d6b38;font:800 13px system-ui}.kh56-sv{font-size:22px;font-variant-numeric:tabular-nums}
.kh56-quote p{margin:6px 0 12px;font:600 11.5px/1.4 system-ui;color:#7a6c5c}
.kh56-lock{width:100%;border:0;border-radius:14px;padding:13px;background:#211c16;color:#f7f3ec;font:850 13px system-ui;cursor:pointer}
.kh56-again{width:100%;margin-top:6px;border:0;background:none;padding:8px;font:750 12px system-ui;color:#7a6c5c;cursor:pointer}
@media (prefers-reduced-motion: reduce){.kh56-card,.kh56-acts button{transition:none}.kh56-quote,.kh56-tray i{animation:none}}

/* 57 Chat salesperson · menu as a conversation */
.kh57{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#f4efe7;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#1f1b16;isolation:isolate}
.kh57::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh57 *{box-sizing:border-box}
.kh57 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#1f1b16}
.kh57-app{position:absolute;inset:0;background:linear-gradient(#f8f4ee,#ece4d8)}
.kh57-page{position:absolute;left:18px;right:18px;top:48px;display:grid;gap:6px}
.kh57-page small{font:700 9px ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#b5651d}
.kh57-page b{font:900 28px/1.02 system-ui;letter-spacing:-.04em}
.kh57-page p{margin:0;font:600 12.5px/1.45 system-ui;color:#76675a}
.kh57-hero{display:flex;gap:8px;margin:10px 0 4px}
.kh57-hero i{flex:1;height:150px;border-radius:4px;background:#efebe4;box-shadow:inset 0 0 0 1px #0002,inset 0 0 0 12px #efebe4,inset 0 0 0 13px #0002,inset 14px 14px 0 -1px #0000,0 10px 16px -8px #0006}
.kh57-hero i:nth-child(2){background:#9aa98c;box-shadow:inset 0 0 0 1px #0002,inset 0 0 0 12px #9aa98c,inset 0 0 0 13px #0003,0 10px 16px -8px #0006}
.kh57-hero i:nth-child(3){background:#26364f;box-shadow:inset 0 0 0 1px #0002,inset 0 0 0 12px #26364f,inset 0 0 0 13px #fff2,0 10px 16px -8px #0006}
.kh57-rate{font:800 13px system-ui;color:#e3a008}.kh57-rate span{color:#76675a;font-weight:650;font-size:11.5px}
.kh57-tease{position:absolute;right:84px;bottom:44px;max-width:150px;padding:9px 12px;border-radius:16px 16px 4px 16px;background:#fff;box-shadow:0 10px 20px -8px #0005;font:750 12px/1.3 system-ui;animation:kh57-tease 4s ease-in-out infinite;transform-origin:100% 100%}
@keyframes kh57-tease{0%,8%{transform:scale(0)}14%,86%{transform:scale(1)}94%,100%{transform:scale(0)}}
.kh57.kh57-open .kh57-tease{display:none}
.kh57-fab{position:absolute;right:18px;bottom:24px;width:58px;height:58px;border:0;border-radius:50%;padding:0;cursor:pointer;background:radial-gradient(circle at 35% 30%,#ffb76b,#b5651d);color:#fff;font:900 22px system-ui;box-shadow:0 12px 24px -8px #b5651d,inset 0 2px 0 #fff5;z-index:5}
.kh57-fab i{position:absolute;right:2px;bottom:3px;width:14px;height:14px;border-radius:50%;background:#34c759;border:3px solid #f4efe7}
.kh57-fab::after{content:'';position:absolute;inset:-6px;border-radius:50%;border:2px solid #b5651d;opacity:0;animation:kh57-ping 2.4s ease-out infinite}
@keyframes kh57-ping{0%{opacity:.7;transform:scale(.9)}100%{opacity:0;transform:scale(1.4)}}
.kh57-fab:focus-visible,.kh57-x:focus-visible,.kh57-chips button:focus-visible,.kh57-b button:focus-visible{outline:2px solid #1f6feb;outline-offset:2px}
.kh57-chat{position:absolute;inset:36px 0 0;display:flex;flex-direction:column;background:#fbf8f3;z-index:8;clip-path:circle(0 at 253px 531px);transition:clip-path .55s cubic-bezier(.6,0,.2,1)}
.kh57.kh57-open .kh57-chat{clip-path:circle(150% at 253px 531px)}
.kh57-ch{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid #0000000f;background:#fffdf9}
.kh57-av{width:36px;height:36px;flex:none;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#ffb76b,#b5651d);color:#fff;font:900 15px system-ui}
.kh57-ch div{flex:1;display:grid}.kh57-ch b{font:850 14px system-ui}.kh57-ch small{font:650 10.5px system-ui;color:#34a853}
.kh57-x{width:34px;height:34px;border:0;border-radius:50%;background:#f0ebe3;font:600 22px/1 system-ui;cursor:pointer;color:#1f1b16}
.kh57-thread{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px 12px 8px;display:flex;flex-direction:column;gap:8px;touch-action:pan-y;--kh57-x:0px}
.kh57-m{position:relative;width:100%;display:flex;transform:translateX(var(--kh57-x));transition:transform .35s cubic-bezier(.3,1.3,.5,1);animation:kh57-in .4s cubic-bezier(.3,1.5,.5,1)}
.kh57-thread.kh57-sw .kh57-m{transition:none}
@keyframes kh57-in{from{transform:translateY(12px) scale(.9);opacity:0}}
.kh57-m time{position:absolute;right:-58px;top:50%;translate:0 -50%;font:650 9.5px system-ui;color:#a0938a;width:44px}
.kh57-me{justify-content:flex-end}
.kh57-b{max-width:82%;padding:9px 12px;border-radius:18px 18px 18px 5px;background:#fff;box-shadow:0 2px 6px #0000000f;font:600 13px/1.4 system-ui}
.kh57-me .kh57-b{border-radius:18px 18px 5px 18px;background:#1f6feb;color:#fff}
.kh57-typing{display:flex;gap:4px;padding:12px 14px}
.kh57-typing i{width:7px;height:7px;border-radius:50%;background:#b8aea2;animation:kh57-dot 1s infinite}
.kh57-typing i:nth-child(2){animation-delay:.15s}.kh57-typing i:nth-child(3){animation-delay:.3s}
@keyframes kh57-dot{30%{transform:translateY(-5px);background:#7a6c5c}}
.kh57-b label{display:grid;gap:4px;margin:8px 0 4px;font:750 11.5px system-ui;color:#76675a}
.kh57-b input{width:100%;accent-color:#b5651d}
.kh57-px{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.kh57-px b{font:900 22px system-ui;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.kh57-px s{color:#a0938a;font:750 12px system-ui}
.kh57-sv{margin-top:4px;font:800 11.5px system-ui;color:#1d6b38}
.kh57-tl{display:grid;grid-template-columns:repeat(4,1fr);margin-top:8px}
.kh57-tl i{position:relative;font:750 9.5px system-ui;font-style:normal;text-align:center;padding-top:14px;color:#76675a}
.kh57-tl i::before{content:'';position:absolute;left:50%;top:0;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:#e2d9cc;animation:kh57-tl .3s forwards;animation-delay:calc(var(--kh57-i) * .35s)}
.kh57-tl i::after{content:'';position:absolute;left:calc(50% + 6px);right:calc(-50% + 6px);top:4px;height:2px;background:#e2d9cc}
.kh57-tl i:last-child::after{display:none}
@keyframes kh57-tl{to{background:#34a853;box-shadow:0 0 0 3px #34a85333}}
.kh57-q{margin-top:8px;padding:9px 10px;border-radius:12px;background:#f6f1e9;font:600 12px/1.4 system-ui}.kh57-q b{display:block;color:#e3a008;letter-spacing:.1em}.kh57-q small{color:#76675a;font-weight:750}
.kh57-b button{margin-top:8px;width:100%;border:0;border-radius:12px;padding:10px;background:#1f1b16;color:#fff;font:800 12.5px system-ui;cursor:pointer}
.kh57-chips{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px 14px;justify-content:flex-end;min-height:56px}
.kh57-chips button{border:1.5px solid #1f6feb;border-radius:999px;padding:8px 12px;background:#fff;color:#1f6feb;font:750 12px system-ui;cursor:pointer;animation:kh57-chip .45s cubic-bezier(.3,1.7,.5,1) both;animation-delay:calc(var(--kh57-i) * 70ms)}
@keyframes kh57-chip{from{transform:translateY(16px) scale(.6);opacity:0}}
.kh57-chips button:active{transform:scale(.94)}
@media (prefers-reduced-motion: reduce){.kh57-chat,.kh57-m{transition:none}.kh57-tease,.kh57-fab::after,.kh57-m,.kh57-chips button,.kh57-typing i{animation:none}.kh57-tl i::before{animation-duration:.01s;animation-delay:0s}}
.kh57-chat[hidden]{display:none}

/* 58 Ringing call FAB · hold to talk */
.kh58{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#f3efe9;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#1d1a16;isolation:isolate}
.kh58::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh58 *{box-sizing:border-box}
.kh58 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#1d1a16}
.kh58.kh58-on .sb{color:#fff}
.kh58-app{position:absolute;inset:0;background:radial-gradient(90% 40% at 50% 100%,#d9f0dd,#f3efe9 70%)}
.kh58-page{position:absolute;left:18px;right:18px;top:48px;display:grid;gap:8px}
.kh58-page small{font:700 9px ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#c0392b}
.kh58-page b{font:900 27px/1.04 system-ui;letter-spacing:-.04em}
.kh58-page p{margin:0 0 6px;font:600 12.5px/1.45 system-ui;color:#76675a}
.kh58-deal{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:baseline;padding:12px 14px;border-radius:14px;background:#fff;box-shadow:0 8px 18px -12px #0006;font:700 12.5px system-ui}
.kh58-deal s{color:#a0938a;font-weight:650}.kh58-deal b{font:900 17px system-ui;color:#c0392b;letter-spacing:-.02em}
.kh58-pick{display:flex;align-items:center;gap:8px;margin-top:4px;font:700 12px system-ui;color:#1f7a3a}.kh58-pick i{width:9px;height:9px;border-radius:50%;background:#34c759;box-shadow:0 0 0 4px #34c75933;animation:kh58-live 1.6s ease-in-out infinite}
@keyframes kh58-live{50%{box-shadow:0 0 0 7px #34c75911}}
.kh58-rings{position:absolute;left:0;bottom:0;width:300px;height:280px;pointer-events:none}
.kh58-cue{position:absolute;left:0;right:0;bottom:118px;margin:0;text-align:center;font:800 12px system-ui;color:#1f7a3a}
.kh58-fab{position:absolute;left:50%;bottom:34px;width:74px;height:74px;margin-left:-37px;border:0;border-radius:50%;padding:0;cursor:pointer;background:radial-gradient(circle at 35% 30%,#5be38a,#1f9d4c);box-shadow:0 14px 26px -10px #1f9d4c,inset 0 2px 0 #fff6;touch-action:none;z-index:4;-webkit-tap-highlight-color:transparent;transition:transform .2s}
.kh58-fab.kh58-shake{animation:kh58-shake .9s ease-in-out}
@keyframes kh58-shake{0%,100%{transform:rotate(0)}10%,30%,50%,70%{transform:rotate(-14deg)}20%,40%,60%,80%{transform:rotate(14deg)}}
.kh58-fab.kh58-press{transform:scale(.92)}
.kh58-ico{position:absolute;left:50%;top:50%;width:32px;height:32px;margin:-16px;fill:#fff}
.kh58-prog{position:absolute;inset:-8px;width:90px;height:90px;transform:rotate(-90deg)}
.kh58-prog circle{fill:none;stroke:#1f7a3a;stroke-width:5;stroke-linecap:round;stroke-dasharray:289;stroke-dashoffset:var(--kh58-o,289)}
.kh58-fab:focus-visible,.kh58-keys button:focus-visible,.kh58-thumb:focus-visible{outline:3px solid #7dd3fc;outline-offset:4px}
.kh58-call{position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;align-items:center;padding:70px 20px 26px;color:#fff;background:radial-gradient(90% 60% at 50% 20%,#24543a,#0f1a14 70%);clip-path:circle(0 at 150px 549px);transition:clip-path .6s cubic-bezier(.6,0,.2,1)}
.kh58.kh58-on .kh58-call{clip-path:circle(160% at 150px 549px)}
.kh58-who{display:grid;justify-items:center;gap:4px}
.kh58-av{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#ffb76b,#b5651d);font:900 34px system-ui;box-shadow:0 0 0 calc(4px + var(--kh58-v,0) * 14px) #5be38a33}
.kh58-who b{margin-top:8px;font:850 18px system-ui}.kh58-st{font:650 12.5px system-ui;color:#a7d9b7;font-variant-numeric:tabular-nums}
.kh58-wave{width:260px;height:60px;margin:14px 0 4px}
.kh58-cap{min-height:58px;margin:0 0 12px;text-align:center;font:600 13px/1.45 system-ui;color:#e3f3e8}
.kh58-keys{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
.kh58-keys button{border:0;border-radius:16px;padding:14px 8px;background:#ffffff14;color:#fff;font:750 12.5px system-ui;cursor:pointer;backdrop-filter:blur(6px);transition:background .2s,transform .15s}
.kh58-keys button:active{transform:scale(.95);background:#ffffff2a}
.kh58-hang{position:relative;margin-top:auto;width:100%;height:60px;border-radius:30px;background:#ffffff14;display:grid;place-items:center;font:700 12px system-ui;color:#ffffff99;overflow:hidden}
.kh58-hang span{background:linear-gradient(90deg,#fff6 0,#fff 40%,#fff6 60%) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:kh58-sh 2s linear infinite;padding-left:40px}
@keyframes kh58-sh{to{background-position:-200% 0}}
.kh58-thumb{position:absolute;left:5px;top:5px;width:50px;height:50px;border:0;border-radius:50%;background:#ff3b30;cursor:grab;touch-action:none;display:grid;place-items:center;transform:translateX(var(--kh58-x,0px));box-shadow:0 6px 14px #0007}
.kh58-thumb svg{width:26px;height:26px;fill:#fff}
.kh58-thumb.kh58-back{transition:transform .4s cubic-bezier(.3,1.5,.5,1)}
.kh58-toast{position:absolute;left:50%;top:44px;padding:9px 14px;border-radius:999px;background:#1d1a16;color:#fff;font:750 12px system-ui;white-space:nowrap;transform:translate(-50%,-90px);transition:transform .45s cubic-bezier(.3,1.4,.5,1);z-index:9}
.kh58-toast.kh58-t{transform:translate(-50%,0)}
@media (prefers-reduced-motion: reduce){.kh58-call,.kh58-toast,.kh58-fab{transition:none}.kh58-fab.kh58-shake,.kh58-hang span,.kh58-pick i{animation:none}}
.kh58-call[hidden]{display:none}

/* 59 Share-the-deal sheet · tear and send */
.kh59{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#1e2a24;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#f2f6f1;isolation:isolate}
.kh59::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh59 *{box-sizing:border-box}
.kh59 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#f2f6f1}
.kh59-app{position:absolute;inset:0;background:radial-gradient(90% 50% at 30% 10%,#2f5a44,#15201b 75%)}
.kh59-page{position:absolute;left:18px;right:18px;top:50px;display:grid;gap:4px}
.kh59-ok{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#34c759;color:#fff;font:900 18px system-ui;margin-bottom:6px;box-shadow:0 0 0 6px #34c75933}
.kh59-page small{font:700 9px ui-monospace,monospace;letter-spacing:.18em;text-transform:uppercase;color:#9fd8b0}
.kh59-page b{font:900 24px/1.05 system-ui;letter-spacing:-.035em}
.kh59-page p{margin:2px 0 0;font:600 12px/1.45 system-ui;color:#b5c8bc}
.kh59-sheet{position:absolute;left:0;right:0;top:232px;bottom:0;padding:0 14px 16px;user-select:none;-webkit-user-select:none;border-radius:26px 26px 0 0;background:#fbf8f3;color:#1d1a16;box-shadow:0 -14px 34px -12px #000a}
.kh59-grab{width:40px;height:5px;margin:9px auto 10px;border-radius:3px;background:#d9cfc2}
.kh59-hd{display:flex;justify-content:space-between;align-items:baseline}
.kh59-hd>b{font:900 18px system-ui;letter-spacing:-.02em}
.kh59-cr{font:700 12px system-ui;color:#76675a}.kh59-amt{display:inline-block;font:900 18px system-ui;color:#1d7a43;font-variant-numeric:tabular-nums}
.kh59-amt.kh59-bump{animation:kh59-bump .5s cubic-bezier(.3,1.8,.5,1)}
@keyframes kh59-bump{40%{transform:scale(1.35) translateY(-3px)}}
.kh59-ticket{position:relative;margin:12px 0 6px;height:108px;display:flex;filter:drop-shadow(0 8px 10px #5a3d1f40);z-index:5}
.kh59-main{flex:1;padding:12px 14px;border-radius:14px 0 0 14px;background:radial-gradient(circle at 0 0,#0000 0,#0000 0),linear-gradient(135deg,#ffe3a6,#f7c35c);display:grid;align-content:center;gap:2px;clip-path:var(--kh59-cm)}
.kh59-main small{font:700 8.5px ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:#8a5a12}
.kh59-main b{font:900 20px system-ui;letter-spacing:-.03em}
.kh59-main span{font:600 10.5px system-ui;color:#6b4a14}.kh59-main code{font:800 11px ui-monospace,monospace;padding:1px 4px;border-radius:4px;background:#fff8}
.kh59-perf{position:absolute;right:88px;top:6px;bottom:6px;width:2px;background:radial-gradient(circle,#8a5a12 1px,#0000 1.5px) 0 0/2px 7px repeat-y;opacity:.55}
.kh59-stub{position:relative;width:88px;border-radius:0 14px 14px 0;background:linear-gradient(135deg,#f7c35c,#e9a93a);display:grid;place-items:center;align-content:center;gap:2px;touch-action:none;cursor:grab;clip-path:var(--kh59-cs);transform-origin:0 100%;user-select:none;-webkit-user-select:none}
.kh59-stub b{font:900 26px system-ui;letter-spacing:-.04em;color:#5a3a08}
.kh59-stub span{font:800 9.5px system-ui;color:#7a5212;animation:kh59-wig 1.8s ease-in-out infinite}
@keyframes kh59-wig{50%{transform:translateY(3px)}}
.kh59-stub.kh59-free{cursor:grabbing;z-index:20}
.kh59-stub.kh59-grow{animation:kh59-grow .5s cubic-bezier(.3,1.5,.5,1)}
@keyframes kh59-grow{from{transform:scaleX(0);opacity:0}}
.kh59-hint{margin:6px 0 12px;font:650 11px system-ui;color:#86786a;text-align:center}
.kh59-ppl{display:flex;justify-content:space-between;gap:6px}
.kh59-p{position:relative;width:48px;border:0;padding:0;background:none;cursor:pointer;display:grid;justify-items:center;gap:5px;font:750 10.5px system-ui;color:#1d1a16}
.kh59-p i{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font:900 18px system-ui;font-style:normal;color:#fff;background:var(--kh59-c);box-shadow:0 6px 12px -6px #0008;transition:transform .25s cubic-bezier(.3,1.8,.5,1),box-shadow .2s}
.kh59-p.kh59-hot i{transform:scale(1.18);box-shadow:0 0 0 4px #f7c35c,0 10px 18px -6px #0008}
.kh59-p.kh59-sent i::after{content:'✓';position:absolute;right:-2px;top:-2px;width:20px;height:20px;border-radius:50%;background:#34c759;border:2px solid #fbf8f3;font:900 11px/16px system-ui;text-align:center}
.kh59-p:focus-visible,.kh59-copy:focus-visible{outline:2px solid #1d7a43;outline-offset:3px;border-radius:12px}
.kh59-copy{margin-top:14px;width:100%;border:1.5px dashed #c9bfb1;border-radius:14px;padding:12px;background:#fff;font:750 12.5px system-ui;color:#1d1a16;cursor:pointer}
.kh59-bit{position:absolute;width:6px;height:5px;background:#f7c35c;clip-path:polygon(0 0,100% 30%,40% 100%);z-index:30;pointer-events:none}
.kh59-toast{position:absolute;left:12px;right:12px;top:44px;padding:11px 14px;border-radius:16px;background:#fbf8f3;color:#1d1a16;font:700 12px/1.35 system-ui;box-shadow:0 10px 24px -8px #000a;transform:translateY(-120px);transition:transform .45s cubic-bezier(.3,1.4,.5,1);z-index:40}
.kh59-toast.kh59-on{transform:none}
@media (prefers-reduced-motion: reduce){.kh59-stub span,.kh59-amt.kh59-bump,.kh59-stub.kh59-grow{animation:none}.kh59-toast,.kh59-p i{transition:none}}

/* 60 Slide-to-order · door packs the box */
.kh60{position:relative;box-sizing:border-box;width:320px;height:640px;border-radius:46px;background:#f4efe8;border:10px solid #1c1c1f;box-shadow:0 0 0 2px #2a2a2e,0 40px 80px -30px #000;overflow:hidden;font:14px system-ui,-apple-system,sans-serif;color:#1d1a16;isolation:isolate}
.kh60::before{content:'';position:absolute;top:8px;left:50%;translate:-50% 0;width:96px;height:26px;border-radius:20px;background:#000;z-index:50}
.kh60 *{box-sizing:border-box}
.kh60 .sb{display:flex;justify-content:space-between;padding:12px 26px 6px;font:600 12px system-ui;position:relative;z-index:40;color:#1d1a16}
.kh60-app{position:absolute;inset:0;background:linear-gradient(#f8f4ee,#ebe2d5);--kh60-wood:#d9bf94}
.kh60-hd{position:absolute;left:18px;top:46px}
.kh60-hd small{display:block;font:700 9px ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#b5651d}
.kh60-hd b{font:900 26px system-ui;letter-spacing:-.04em}
.kh60-sum{position:absolute;left:14px;right:14px;top:104px;padding:6px 14px 12px;border-radius:20px;background:#fff;box-shadow:0 14px 30px -18px #5a3d1f88}
.kh60-ln{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #0000000d;font:750 13px system-ui}
.kh60-ln span{flex:1;display:grid}.kh60-ln em{font:600 10.5px system-ui;font-style:normal;color:#8a7c6c}
.kh60-free{font-weight:650;color:#5d6656}.kh60-free b{color:#1d7a43}
.kh60-sw{width:22px;height:30px;border-radius:2px;background:var(--kh60-tex,var(--kh60-wood)) center/cover;box-shadow:inset 0 0 0 3px #0000,inset 0 0 0 1px #0003,0 2px 4px #0003;position:relative}
.kh60-sw::after{content:'';position:absolute;inset:4px;box-shadow:inset 1px 1px 1px #0005,1px 1px 0 #fff6}
.kh60-dw{height:14px}
.kh60-tot{display:flex;justify-content:space-between;align-items:baseline;padding-top:10px}
.kh60-tot span{font:800 13px system-ui}.kh60-tot b{font:900 28px system-ui;letter-spacing:-.04em}
.kh60-note{margin:4px 0 0;font:600 10.5px/1.4 system-ui;color:#8a7c6c}
.kh60-track{position:absolute;left:14px;right:14px;bottom:34px;height:78px;border-radius:39px;background:linear-gradient(#2a241e,#1d1a16);box-shadow:inset 0 3px 8px #000a,0 10px 24px -12px #000;transition:opacity .4s,transform .5s cubic-bezier(.3,1.2,.5,1)}
.kh60-lbl{position:absolute;left:70px;right:84px;top:50%;translate:0 -50%;font:800 12.5px system-ui;letter-spacing:.02em;text-align:center;background:linear-gradient(90deg,#ffffff55 0,#fff 45%,#ffffff55 60%) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:kh60-sh 2.2s linear infinite;opacity:calc(1 - var(--kh60-p,0) * 1.6)}
@keyframes kh60-sh{to{background-position:-200% 0}}
.kh60-door{position:absolute;left:10px;top:9px;width:46px;height:60px;border:0;padding:0;border-radius:3px;cursor:grab;touch-action:none;background:var(--kh60-tex,var(--kh60-wood)) center/cover;box-shadow:inset 0 0 0 1px #0004,0 6px 10px #000a;transform:translateX(var(--kh60-x,0px)) rotate(var(--kh60-r,0deg));z-index:3;-webkit-tap-highlight-color:transparent}
.kh60-door::before{content:'';position:absolute;inset:6px;border-radius:1px;box-shadow:inset 1.5px 1.5px 2px #0005,1px 1px 0 #fff7}
.kh60-door i{position:absolute;right:5px;top:22px;width:3px;height:16px;border-radius:2px;background:linear-gradient(90deg,#868b92,#f3f5f7,#6b7078)}
.kh60-door.kh60-back{transition:transform .5s cubic-bezier(.3,1.6,.5,1)}
.kh60-door:focus-visible,.kh60-again:focus-visible{outline:2px solid #f0b35a;outline-offset:3px}
.kh60-box{position:absolute;right:12px;bottom:10px;width:70px;height:46px}
.kh60-bk{position:absolute;inset:0;z-index:1;background:#9c7444;border-radius:2px}
.kh60-fr{position:absolute;left:0;right:0;bottom:0;height:46px;background:linear-gradient(#d2a86a,#b98c50);border-radius:2px;box-shadow:inset 0 2px 0 #ffffff33,inset 0 -3px 0 #0002;z-index:4;overflow:hidden}
.kh60-fl{position:absolute;top:0;width:35px;height:8px;background:linear-gradient(#c99d60,#b48749);border-radius:1px;z-index:5;transition:transform .35s cubic-bezier(.3,1.5,.5,1)}
.kh60-fll{left:0;transform-origin:0 50%;transform:rotate(calc(-70deg - var(--kh60-p,0) * 55deg))}
.kh60-flr{right:0;transform-origin:100% 50%;transform:rotate(calc(70deg + var(--kh60-p,0) * 55deg))}
.kh60.kh60-shut .kh60-fll{transform:rotate(0)}.kh60.kh60-shut .kh60-flr{transform:rotate(0);transition-delay:.12s}
.kh60-tape{position:absolute;left:0;right:0;top:0;height:9px;background:linear-gradient(#e9dcc2cc,#d8c7a5cc);transform:scaleX(0);transform-origin:0 50%;transition:transform .35s ease-out .35s}
.kh60.kh60-shut .kh60-tape{transform:scaleX(1)}
.kh60-label{position:absolute;left:8px;right:8px;top:16px;padding:3px 2px;background:#fff;font:900 6.5px/1.25 system-ui;letter-spacing:.06em;text-align:center;color:#1d1a16;transform:scale(0) rotate(-12deg);transition:transform .35s cubic-bezier(.3,2,.5,1) .7s}
.kh60.kh60-shut .kh60-label{transform:rotate(-3deg)}
.kh60.kh60-ship .kh60-track{transform:translateX(120%);opacity:0;transition-delay:1.4s}
.kh60-done{position:absolute;left:14px;right:14px;bottom:24px;padding:16px;border-radius:22px;background:#1d1a16;color:#f8f4ee;display:grid;gap:4px;justify-items:start;animation:kh60-up .6s cubic-bezier(.3,1.3,.5,1)}
@keyframes kh60-up{from{transform:translateY(40px);opacity:0}}
.kh60-ck{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#34c759;font:900 18px system-ui;margin-bottom:4px}
.kh60-done b{font:900 18px system-ui}.kh60-done p{margin:0 0 6px;font:600 12px/1.45 system-ui;color:#cdbfae}
.kh60-again{border:0;border-radius:12px;padding:10px 14px;background:#f0b35a;color:#1d1a16;font:850 12.5px system-ui;cursor:pointer}
@media (prefers-reduced-motion: reduce){.kh60-lbl,.kh60-done{animation:none}.kh60-track,.kh60-fl,.kh60-tape,.kh60-label,.kh60-door.kh60-back{transition:none}}
.kh60-done[hidden]{display:none}
