:root{--ink:#29494c;--muted:#667b7a;--paper:#f8f5ed;--line:#d7dcd2;--blue:#517b8a;--rack-angle:-18deg;color-scheme:light;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 85% 45%,#e3eae3aa,transparent 55%),#f8f5ed}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #477b8c;outline-offset:5px}button{touch-action:manipulation}a{color:inherit}button[hidden],[hidden]{display:none!important}.site-header{max-width:1360px;margin:0 auto;min-height:110px;padding:22px 56px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7dcd280;gap:24px}.brand{display:flex;align-items:center;gap:15px;text-decoration:none}.brand img{width:66px;height:66px;object-fit:contain}.brand>span{font-size:10px;letter-spacing:1.9px;font-weight:600}.brand small{display:block;margin-top:8px;font:italic 14px Georgia,serif;letter-spacing:.1px;font-weight:400;color:#667b7a}.preview-label{font-size:9px;letter-spacing:1.7px;color:#82908a;text-align:right}.experience{max-width:1230px;margin:0 auto;display:grid;grid-template-columns:minmax(290px,400px) minmax(460px,1fr);gap:38px;align-items:center;padding:18px 48px 10px}.intro{padding:25px 0 55px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;display:flex;align-items:center;gap:10px;margin:0 0 27px;color:#6b8583}.eyebrow>span{height:1px;width:28px;background:#8ba4a0}h1{font:400 clamp(48px,4.5vw,66px)/1.07 Georgia,"Times New Roman",serif;letter-spacing:-2px;margin:0 0 26px}h1 em{font-weight:400;color:#648784}.lede{font-size:15px;line-height:1.9;max-width:330px;color:#617675;margin:0}.small-rule{height:1px;width:45px;background:#bdcbc1;margin:32px 0 24px}.gentle-note{font:italic 20px/1.55 Georgia,serif;color:#718984;margin:0 0 36px}.legend{display:flex;flex-wrap:wrap;gap:19px;font-size:10px;color:#71827a}.legend>span{display:flex;align-items:center;gap:7px}.dot{width:6px;height:6px;border-radius:50%;display:inline-block}.affirmation{background:#be9276}.grounding{background:#6f9d96}.browse-area{position:relative;text-align:center;min-width:0}.rack-caption{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 auto;max-width:475px;font-size:10px;color:#889388}.rack-label{font-size:9px;letter-spacing:2px;color:#62786d}.rack-stage{height:603px;position:relative;perspective:1200px;perspective-origin:50% 42%;touch-action:pan-y;user-select:none;cursor:grab}.rack-stage.dragging{cursor:grabbing}.light-wash{position:absolute;width:420px;height:480px;max-width:100%;top:62px;left:50%;transform:translateX(-50%);background:radial-gradient(ellipse,#f2d9ad66,transparent 69%);pointer-events:none}.rack-shadow{position:absolute;width:280px;height:43px;border-radius:50%;left:50%;bottom:31px;transform:translateX(-50%);background:#7d7a5c22;filter:blur(13px)}.rack-base{position:absolute;left:50%;bottom:43px;width:185px;height:17px;border-radius:50%;transform:translateX(-50%);background:linear-gradient(#c1b79b,#8e8a78 68%,#dfd8c0 80%,#a5a08c);box-shadow:0 5px 5px #5a60432a}.rack-base span{display:block;position:absolute;left:50%;top:-33px;width:7px;height:36px;background:linear-gradient(90deg,#999685,#e1dbc4 45%,#9b9887);border-radius:2px}.rack{position:absolute;top:18px;left:50%;width:202px;height:519px;transform:translateX(-50%) rotateX(-4deg) rotateY(var(--rack-angle));transform-style:preserve-3d;transition:transform .58s cubic-bezier(.18,.75,.28,1);will-change:transform}.dragging .rack{transition:none}.spindle{position:absolute;width:7px;height:556px;left:98px;top:-11px;background:linear-gradient(90deg,#a5a18e,#e4dfca 48%,#9a9785);border-radius:5px;transform:translateZ(0)}.rack-top{position:absolute;left:92px;top:-20px;width:19px;height:19px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ebe6cf,#9b9885);box-shadow:0 2px 2px #716f5c33}.face{position:absolute;inset:0;height:522px;transform-style:preserve-3d;transform:rotateY(var(--face-angle)) translateZ(109px);backface-visibility:hidden;pointer-events:none}.face:before,.face:after{content:"";position:absolute;top:-1px;bottom:3px;width:2px;background:linear-gradient(90deg,#9e9a86,#f3eed7,#b3ad95);box-shadow:1px 0 1px #6d715733}.face:before{left:0}.face:after{right:0}.pocket{position:absolute;top:calc(var(--level)*174px);width:202px;height:174px;transform-style:preserve-3d}.pocket:before{content:"";position:absolute;left:0;right:0;top:8px;height:1.5px;background:#b7b29d}.postcard{position:absolute;left:38px;top:1px;width:126px;height:165px;padding:0;border:none;border-radius:2px;background:#fffaf0;transform:translateZ(2px);box-shadow:0 4px 7px #36494138,1px 0 1px #fff8df;transition:transform .2s,box-shadow .2s;pointer-events:auto}.postcard img{display:block;width:100%;height:100%;object-fit:contain;border-radius:2px;pointer-events:none}.face.available .postcard:hover{transform:translateY(-6px) translateZ(7px);box-shadow:0 9px 13px #334d4930}.pocket-wire{position:absolute;left:-1px;right:-1px;top:137px;height:35px;border:1.5px solid #aba58e;border-top-color:#dcd5bd;border-radius:0 0 8px 8px;transform:translateZ(9px);pointer-events:none;box-shadow:0 1px 1px #fff9dc88,inset 0 -1px 0 #eae3c7}.pocket-wire:after{content:"";position:absolute;left:17px;right:17px;top:8px;height:1.5px;background:linear-gradient(90deg,#b2ab93,#f6edd1 55%,#b4ad93);box-shadow:0 1px #85897525}.pocket-wire:before{content:"";position:absolute;top:0;left:16px;width:1px;height:33px;background:#bbb39b;box-shadow:167px 0 #bbb39b}.drag-hint{position:absolute;left:0;right:0;bottom:1px;font-size:10px;letter-spacing:.5px;color:#829187;pointer-events:none}.drag-hint span{font-size:18px;margin-right:5px;vertical-align:-1px}.rack-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin:8px 0 12px}.rack-controls p{font-size:10px;min-width:76px;color:#798b80;letter-spacing:.3px}.round-button{height:44px;width:44px;border:1px solid #ced7cb;background:#ffffff55;border-radius:50%;font-size:20px;transition:background .2s}.round-button:hover{background:#fff}.view-toggle{border:0;padding:9px 12px;background:transparent;font-size:10px;color:#7a8c82;text-decoration:underline;text-underline-offset:4px;min-height:44px}.view-toggle span{font-size:13px;margin-right:5px}.page-footer{text-align:center;max-width:1100px;margin:15px auto 0;padding:24px 25px 30px;border-top:1px solid #d7dcd290;color:#859087}.page-footer p:first-child{font:italic 16px Georgia,serif;color:#728479;margin:0 0 9px}.page-footer p:nth-child(2){font-size:10px;line-height:1.7;margin:0}.page-footer small{display:block;font-size:9px;margin-top:18px;color:#a3aaa0}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px;padding:30px 5px 10px;max-height:603px;overflow:auto}.grid-card{border:0;padding:0;background:transparent;min-width:0;transition:transform .2s}.grid-card:hover{transform:translateY(-4px)}.grid-card img{width:100%;display:block;box-shadow:0 6px 12px #4a625021}.grid-card>span{display:block;font-size:9px;color:#7b8b81;margin-top:8px}.grid-mode .rack-controls{display:none}.grid-mode .view-toggle{margin-top:15px}dialog{border:0;background:transparent;padding:0;color:var(--ink);overflow:visible;max-width:calc(100vw - 24px);max-height:calc(100dvh - 22px)}dialog::backdrop{background:#243e4275;backdrop-filter:blur(8px)}.dialog-shell{width:440px;max-width:calc(100vw - 24px);background:#f8f5ed;border-radius:16px;padding:25px 32px 22px;position:relative;text-align:center;box-shadow:0 24px 100px #192b3a44;overflow:auto;max-height:calc(100dvh - 22px)}.close-card{position:absolute;right:9px;top:7px;border:none;background:transparent;width:44px;height:44px;font-size:27px;font-weight:300;color:#6b807b;z-index:5}.dialog-eyebrow{font-size:9px;letter-spacing:2px;color:#8c998b;margin:3px 0 20px}.selected-card{width:276px;height:361px;max-width:100%;margin:0 auto;perspective:1400px}.selected-card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .75s cubic-bezier(.2,.65,.2,1)}.selected-card.flipped .selected-card-inner{transform:rotateY(180deg)}.selected-front,.selected-back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#fff9ee;border-radius:3px;box-shadow:0 8px 20px #42544a26;overflow:hidden}.selected-front>img{width:100%;height:100%;display:block;object-fit:cover}.flip-whisper{position:absolute;bottom:7px;left:0;right:0;font:italic 8px Georgia,serif;color:#819085;opacity:0}.selected-back{transform:rotateY(180deg);display:flex;align-items:center;flex-direction:column;justify-content:center;padding:27px 23px}.kind-badge{font-size:8px;letter-spacing:1.6px;text-transform:uppercase;color:#82958a;margin-bottom:19px}.kind-badge.grounding-kind{color:#56847f}.selected-back h2{font:400 26px/1.15 Georgia,serif;letter-spacing:-.6px;margin:0 0 19px}.card-message{font:400 16px/1.65 Georgia,serif;margin:0;color:#425e5b}.card-note{font-size:10px;line-height:1.6;color:#88978a;margin:18px 0 0}.back-logo{width:40px;height:40px;object-fit:contain;margin:18px 0 0;opacity:.8}.flip-button{border:1px solid #acbfb3;border-radius:999px;background:#456d74;color:white;padding:12px 19px;min-height:44px;font-size:12px;min-width:180px;margin:22px 0 5px}.flip-button span{font-size:16px;margin-left:14px}.return-button{display:block;margin:0 auto;border:0;background:transparent;font-size:10px;color:#788d80;text-decoration:underline;text-underline-offset:4px;min-height:44px;padding:8px}.dialog-shell:focus{outline:none}
#faces{position:absolute;inset:0;transform-style:preserve-3d;pointer-events:none}
.rack-stage{z-index:0}.rack-controls,.view-toggle{position:relative;z-index:2}
@media(min-width:1400px){.experience{gap:80px}.rack-stage{height:623px}.rack{top:29px}.rack-base{bottom:53px}.rack-shadow{bottom:42px}.drag-hint{bottom:9px}}
@media(max-width:850px){.site-header{padding:17px 25px;min-height:88px}.brand img{width:50px;height:50px}.brand>span{font-size:8px;letter-spacing:1.2px}.brand small{font-size:12px}.preview-label{font-size:7px;letter-spacing:1px;max-width:95px}.experience{grid-template-columns:1fr;max-width:640px;gap:0;padding:34px 24px 10px}.intro{text-align:center;padding:0 0 32px}.eyebrow{justify-content:center;font-size:8px;margin-bottom:19px}h1{font-size:49px;letter-spacing:-1.7px;margin-bottom:16px}h1 br{display:none}.lede{font-size:13px;line-height:1.8;max-width:370px;margin:0 auto}.small-rule,.gentle-note{display:none}.legend{justify-content:center;margin-top:20px;font-size:9px}.rack-caption{margin:0 5px;font-size:8px}.rack-label{font-size:8px;letter-spacing:1.5px}.rack-stage{height:570px;perspective:1300px}.rack{top:15px;transform:translateX(-50%) scale(.92) rotateX(-4deg) rotateY(var(--rack-angle));transform-origin:center top}.rack-base{bottom:46px;width:165px}.rack-shadow{bottom:34px;width:240px}.rack-controls{margin-top:0;margin-bottom:2px}.page-footer{margin-top:12px;padding-top:20px}.card-grid{gap:12px;max-height:none;padding-top:25px}.grid-mode .rack-controls{display:none}}
@media(max-width:390px){.site-header{padding:14px 17px;gap:10px}.brand{gap:8px}.brand>span{font-size:7px;letter-spacing:1px}.brand small{font-size:11px}.brand img{width:44px;height:44px}.preview-label{max-width:70px;font-size:6px}.experience{padding-left:16px;padding-right:16px}h1{font-size:44px}.rack{transform:translateX(-50%) scale(.87) rotateX(-4deg) rotateY(var(--rack-angle))}.rack-stage{height:545px}.rack-base{bottom:45px}.dialog-shell{padding:24px 18px 15px}.selected-card{width:256px;height:335px}.selected-back{padding:20px}.selected-back h2{font-size:24px;margin-bottom:13px}.card-message{font-size:15px;line-height:1.6}.card-note{margin-top:13px}.back-logo{width:32px;height:32px;margin-top:12px}}
.face:not(.available) .postcard{visibility:hidden}
.postcard,.pocket-wire{backface-visibility:hidden;-webkit-backface-visibility:hidden}
.selected-card{width:300px;height:400px}.selected-front>img{object-fit:contain}.selected-back h2{font-size:25px}.card-message{font-size:14.5px;line-height:1.6}.card-note{margin-top:14px}.back-logo{height:34px;width:34px;margin-top:14px}
@media(max-width:390px){.selected-card{width:256px;height:365px}.selected-back h2{font-size:23px}.card-message{font-size:14px;line-height:1.6}.card-note{margin-top:12px}.back-logo{height:30px;width:30px;margin-top:12px}}
/* Brushed steel, structural shelf planes, welded joints and a weighted foot. */
.spindle{width:9px;left:97px;background:linear-gradient(90deg,#626f70 0%,#9faeab 18%,#e9efea 38%,#fbfcf5 49%,#b5c4bd 64%,#788987 83%,#506362 100%);box-shadow:1px 1px 2px #1e383338;border:1px solid #a1afab}
.rack-top{width:19px;height:19px;background:radial-gradient(circle at 34% 24%,#fffff8 0%,#e2eae3 22%,#adbcb6 52%,#728781 78%,#506762 100%);box-shadow:1px 2px 3px #324b493b,inset 0 0 0 1px #8a9d96}
.face:before,.face:after{width:3px;top:-3px;bottom:1px;border-radius:3px;background:linear-gradient(90deg,#718581 0%,#e8eee5 36%,#a5b6ac 67%,#6a807a 100%);box-shadow:1px 1px 2px #203e3433}
.pocket:before{height:3px;top:7px;border-radius:2px;background:linear-gradient(#f4f6e9,#a8b9ae 45%,#62796f 80%,#afc0b5);box-shadow:0 1px 1px #253f3433}
.pocket-wire{top:137px;height:35px;border-width:2.5px;border-color:#91a69a;border-top-color:#dce7d8;border-radius:0 0 10px 10px;box-shadow:0 2px 2px #23443330,inset 0 -1px 0 #f5f8e9,1px 0 #506a5b45;background:linear-gradient(transparent 85%,#768f7f12)}
.pocket-wire:after{height:2.5px;top:9px;left:16px;right:16px;border-radius:2px;background:linear-gradient(#f2f7e7 0%,#9eb6a5 50%,#667e6c 100%);box-shadow:0 1px 1px #304c3d38}
.pocket-wire:before{top:0;left:15px;width:2px;height:30px;background:linear-gradient(90deg,#728e7b,#e1edda,#849e89);box-shadow:168px 0 #91ab96}
.pocket:after{content:"";position:absolute;left:-2px;top:135px;width:6px;height:6px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#f3f5e9,#829b8a 60%,#607a69);box-shadow:200px 0 #92aa96;transform:translateZ(10px);pointer-events:none}
.metal-shelf{position:absolute;left:-8px;top:calc(var(--level)*174px + 60px);width:218px;height:218px;transform:rotateX(90deg);transform-style:preserve-3d;pointer-events:none;border:2px solid #8fa493;border-radius:7px;background:repeating-linear-gradient(0deg,transparent 0 34px,#9eb3a0 34px 36px,transparent 36px 37px),repeating-linear-gradient(90deg,transparent 0 34px,#cbd7bf 34px 35px,transparent 35px 37px);box-shadow:0 2px 0 #617c66,inset 0 1px 0 #f5f7e8}
.metal-shelf:before,.metal-shelf:after{content:"";position:absolute;left:3px;right:3px;top:103px;height:5px;border-radius:3px;background:linear-gradient(#eff3e3,#a4b89d 40%,#667f65 90%);box-shadow:0 2px 2px #2d513633}
.metal-shelf:after{transform:rotate(90deg)}
.rack-shadow{height:30px;width:235px;bottom:29px;background:radial-gradient(ellipse,#445e434f 0%,#75876b2b 45%,transparent 75%);filter:blur(7px)}
.rack-base{bottom:32px;width:213px;height:28px;border-radius:50%;z-index:1;background:linear-gradient(#b5c5af 0%,#d2ddc4 37%,#73896f 44%,#556d55 64%,#899d7e 88%,#52674e 100%);border:1px solid #7d9276;box-shadow:0 4px 4px #31492c40,0 9px 12px #4b634329,inset 0 1px #f9fae9}
.rack-base:before{content:"";position:absolute;left:2px;right:2px;top:-2px;height:20px;border:1px solid #d6dfc5;border-radius:50%;background:radial-gradient(ellipse at 45% 33%,#f5f5dd 0%,#c1cfb1 35%,#a3b597 66%,#8ca580 100%);box-shadow:inset 0 -2px 2px #738b6226}
.rack-base:after{content:"";position:absolute;left:calc(50% - 13px);top:1px;width:26px;height:9px;border-radius:50%;background:radial-gradient(ellipse,#8ca17e,#596f54 70%,#b2c29b);box-shadow:0 1px #e5ead4}
.rack-base span{width:9px;top:-40px;height:47px;z-index:2;background:linear-gradient(90deg,#6f8368,#ebefda 37%,#c4d2b1 55%,#7e966f 80%,#50694b);border:1px solid #9daf8f;border-radius:4px}
.postcard{box-shadow:0 3px 3px #273e363b,2px 0 1px #fffbed,0 9px 10px #30483a18}
@media(min-width:1400px){.rack-base{bottom:42px}.rack-shadow{bottom:38px}}
@media(max-width:850px){.rack-base{width:190px;bottom:36px}.rack-shadow{width:214px;bottom:31px}}
@media(max-width:390px){.rack-base{width:182px;bottom:35px}}
.rack-stage{height:653px}.spindle{height:594px;background:linear-gradient(90deg,#626b6b,#c5cbc6 28%,#fafbf1 46%,#b7bfba 65%,#707b76);border-color:#a8b0aa}
.face:before,.face:after{background:linear-gradient(90deg,#7b8480,#f4f4e9 36%,#c3c7be 67%,#7f8981)}
.pocket:before{background:linear-gradient(#faf9eb,#b9c0b5 45%,#7d887b 80%,#c5ccbe)}
.pocket-wire{border-color:#a4ad9f;border-top-color:#e7e9d9;box-shadow:0 2px 2px #3f493b30,inset 0 -1px #ffffee,1px 0 #5b655345}
.pocket-wire:after{background:linear-gradient(#fcfced,#bbc5b4 50%,#818c77)}
.metal-shelf{border-color:#a2ad98;background:repeating-linear-gradient(0deg,transparent 0 34px,#b0bba4 34px 36px,transparent 36px 37px),repeating-linear-gradient(90deg,transparent 0 34px,#d6dcc6 34px 35px,transparent 35px 37px);box-shadow:0 2px #7e8b71,inset 0 1px #fbfbea}
.rack-base{bottom:25px;border-color:#9ca391;background:linear-gradient(#d0d3c2,#e0e2cc 37%,#929b83 44%,#737d67 64%,#aab297 88%,#79826b)}
.rack-base:before{border-color:#e9ead7;background:radial-gradient(ellipse at 45% 33%,#ffffee 0%,#d5dbc1 35%,#b6c0a4 66%,#a2af90 100%)}
.rack-base span{display:none}.face:not(.available) .pocket:after{display:none}
@media(min-width:1400px){.rack-stage{height:668px}.rack-base{bottom:35px}.rack-shadow{bottom:31px}}
@media(max-width:850px){.rack-stage{height:600px}.rack-base{bottom:28px}.rack-shadow{bottom:23px}}
@media(max-width:390px){.rack-stage{height:575px}.rack-base{bottom:28px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}.rack,.selected-card-inner{will-change:auto}.face.available .postcard:hover,.grid-card:hover{transform:none}}

/* Comparison B: a loose postcard rather than a card inside a modal panel. */
dialog::backdrop{background:#243e4259;backdrop-filter:blur(2px)}
.dialog-shell{background:transparent;box-shadow:none;overflow:visible;padding-top:35px}
.dialog-eyebrow{color:#fff9ee;text-shadow:0 1px 7px #17383a;font-weight:600}
.close-card{color:#fff;background:#29494c99;border-radius:50%}
.return-button{color:#fff9ee;text-shadow:0 1px 5px #17383a;font-size:12px}
.flip-button{box-shadow:0 3px 10px #17383a22}
.selected-front,.selected-back{border-radius:2px;box-shadow:1px 0 #e2d9c5,2px 1px #fff8e9,3px 2px #d2c9b5,0 20px 35px #17383a40}
.selected-card{transform:rotate(-1.5deg)}
.selected-card.flipped{transform:rotate(0deg)}
.card-in-flight{position:fixed;z-index:10000;object-fit:fill;pointer-events:none;transform-origin:top left;border-radius:2px;box-shadow:2px 1px #ded5c2;max-width:none}
.out-of-pocket{visibility:hidden!important}
.extracting .rack-controls,.extracting #view-toggle{pointer-events:none}
.entering .dialog-shell{pointer-events:none}
.entering .dialog-eyebrow,.entering .close-card,.entering .flip-button,.entering .return-button{opacity:0}
@media(max-width:390px){.dialog-shell{padding-left:18px;padding-right:18px}}

/* Selected material direction: silver wire, rounded bends and a substantial foot. */
.face:before,.face:after{width:5px;border-radius:5px;background:linear-gradient(90deg,#535a58 0%,#c7cdca 22%,#fffff5 39%,#9aa4a0 60%,#4f5955 83%,#a6afaa);box-shadow:1px 1px 2px #233e3a55}
.pocket:before{height:4px;border-radius:4px;background:linear-gradient(#f9faf2,#c2c8c3 35%,#5c6761 70%,#e5e9df);box-shadow:0 2px 2px #223b3340}
.pocket-wire{left:10px;right:10px;top:121px;height:50px;border-width:4px;border-color:#b4bcb3;border-top-color:transparent;border-radius:16px 16px 12px 12px;transform:translateZ(13px);box-shadow:1px 2px 2px #223b324d,inset 1px -1px #fffff1,1px 0 #57625b}
.pocket-wire:after{left:-2px;right:-2px;top:36px;height:4px;background:linear-gradient(#fffef0,#b6c0b4 45%,#505c51 80%,#dbe2d2);box-shadow:0 2px 2px #223b3250}
.pocket-wire:before{left:8px;width:3px;height:39px;background:linear-gradient(90deg,#5c675e,#edf0df,#969f8f);box-shadow:157px 0 #a9b29f}
.pocket:after{top:120px;left:10px;width:6px;height:6px;box-shadow:177px 0 #a9b3a3;background:radial-gradient(circle at 30% 25%,#fffff1,#9ca897 60%,#52604e)}
.spindle{width:13px;left:95px;background:linear-gradient(90deg,#59635f,#c6cdc7 25%,#fffff3 40%,#c0c7bf 55%,#737f74 78%,#48544b);box-shadow:2px 2px 4px #263e3340}
.rack-top{left:89px;top:-21px;width:25px;height:22px;background:radial-gradient(ellipse at 38% 23%,#fffff3,#bfc7bc 38%,#6d7969 70%,#4e5d4a);border:1px solid #aab5a4}
.rack-base{height:34px;background:linear-gradient(#e1e6d8,#d0d8c4 35%,#65715b 43%,#9ca78e 59%,#c6cdb7 73%,#6e7b61 95%);border-color:#7d896e;box-shadow:0 5px 4px #2d402b50,0 11px 14px #394d3438}
.rack-base:before{height:22px;background:repeating-radial-gradient(ellipse at 50% 50%,#c1cab2 0 1px,#cdd4bd 2px,#bdc7ae 3px);box-shadow:inset 0 2px 5px #ffffee88,inset 0 -2px 3px #6b7b6033}
.rack-base:after{top:1px;left:calc(50% - 16px);width:32px;height:12px;background:radial-gradient(ellipse,#e2e7d1,#7c8c6b 65%,#4e6246)}
.card-shadow{position:absolute;left:38px;top:2px;width:126px;height:165px;transform:translateZ(1px);border-radius:2px;background:#22372b;filter:blur(5px);opacity:0;pointer-events:none}
.pocket.pulling .card-shadow{animation:cast-shadow 1.2s ease forwards}
@keyframes cast-shadow{0%{opacity:.26;transform:translateY(0) translateZ(1px);filter:blur(2px)}45%{opacity:.18;transform:translateY(-38px) translateX(8px) translateZ(1px);filter:blur(9px)}100%{opacity:0;transform:translateY(-60px) translateX(16px) translateZ(1px);filter:blur(16px)}}
@media(prefers-reduced-motion:reduce){.card-shadow{animation:none!important}}

/* A real lit 3D mesh rack; semantic card buttons stay aligned to projected card faces. */
.has-real-rack{perspective:none}
.has-real-rack>.rack,.has-real-rack>.rack-base,.has-real-rack>.rack-shadow,.has-real-rack>.light-wash{display:none}
.real-rack-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.real-card-targets{position:absolute;inset:0;pointer-events:none}
.real-card-targets>.postcard{position:absolute;opacity:0;border:0;background:transparent;transform:none!important;box-shadow:none!important;pointer-events:auto;transition:none}
.real-card-targets>.postcard img{opacity:0}
.real-card-targets>.postcard:focus-visible{opacity:1;outline:3px solid #517b8a;outline-offset:4px}
