/* Live, record-linked museum gallery. Nothing in the sample slots is stored. */
.gallery-room{position:relative;isolation:isolate;overflow:hidden;margin:24px 0 2px;border-radius:24px;padding:27px 30px 22px;background:radial-gradient(ellipse at 54% -20%,#64857890,transparent 65%),linear-gradient(160deg,#18352e,#102621 75%);color:#fff7e8;box-shadow:0 18px 46px #142f2824}
.gallery-room::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.35;background:repeating-linear-gradient(90deg,transparent 0 24.7%,#c5bb9233 24.9% 25%,transparent 25.1% 49.8%)}
.gallery-head{display:flex;align-items:end;justify-content:space-between;gap:15px;flex-wrap:wrap}
.gallery-head .eyebrow{color:#d9ba81;font-size:10px;letter-spacing:1.6px;margin-bottom:5px}
.gallery-head h2{color:#fff8e9;font:500 clamp(18px,2vw,26px) Georgia,"Nanum Myeongjo",serif}
.gallery-head p{font-size:11px;color:#ccd9cb;margin:6px 0 0}
.gallery-counter{border:1px solid #f3dfba55;background:#d6d0b418;color:#f1e3ca;padding:7px 11px;border-radius:30px;font-size:11px;white-space:nowrap}
.gallery-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:23px}
.gallery-slot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;min-width:0;min-height:168px;padding:13px 9px 12px;color:#f6ead7;text-align:center;border:1px solid #f5e0ae25;border-radius:13px;background:linear-gradient(155deg,#ffffff14,#ffffff05 60%,#11241d55);box-shadow:inset 0 1px #ffffff1a;transition:transform .2s ease,background .2s ease,border-color .2s ease}
button.gallery-slot:hover{transform:translateY(-3px);background:#ffffff1d;border-color:#e9cf9b88}
.gallery-slot:focus-visible{outline:3px solid #f7d18e;outline-offset:2px}
.gallery-number{position:absolute;left:12px;top:10px;font:9px Georgia,serif;letter-spacing:1.3px;color:#ecd9b8}
.gallery-art{width:90%;height:63px;display:grid;place-items:center;margin-top:13px;color:#f9e0af;filter:drop-shadow(0 6px 8px #111b1988)}
.gallery-art svg{width:47px;height:47px;stroke-width:1.2}
.gallery-plinth{width:83%;height:9px;flex-shrink:0;border-top:2px solid #e7ca94;background:linear-gradient(#927a55,#5d5849);border-radius:2px 2px 7px 7px;box-shadow:0 7px 11px #07140e55}
.gallery-item-name{font-size:12px;font-weight:650;line-height:1.35;margin-top:8px;overflow-wrap:anywhere}
.gallery-item-price{font-size:10px;color:#e0cba7;white-space:nowrap}
.gallery-slot-shoes .gallery-art{color:#f4d8bd}
.gallery-slot-bag .gallery-art{color:#f7c5ad}
.gallery-slot-tech .gallery-art{color:#c5e4ec}
.gallery-slot-home .gallery-art{color:#d9dcc0}
.gallery-slot-coffee .gallery-art{color:#eed3aa}
.gallery-slot-other .gallery-art{color:#ddd4f2}
.sample-slot{border-style:dashed}
.sample-slot .gallery-number{color:#d6f1e0}
.empty-slot{opacity:.58}
.gallery-empty-mark{font-size:33px;color:#c9d3bd65}
.empty-slot .gallery-item-name{font-weight:400;font-size:10px;color:#d8e0d5}
.gallery-message{padding:14px 0 0;margin:3px 0 0;border-top:1px solid #ffffff30;color:#d1ddce;font-size:11px;line-height:1.8}
.gallery-message strong{color:#ffe1a3}
.gallery-slot.just-placed{animation:gallery-arrival .72s cubic-bezier(.18,.75,.2,1) both}
@keyframes gallery-arrival{0%{opacity:.2;transform:translateY(-28px) scale(.84);filter:brightness(2.2)}70%{transform:translateY(4px) scale(1.035)}100%{opacity:1;transform:translateY(0) scale(1);filter:brightness(1)}}
.record.gallery-focus{outline:3px solid var(--gold);outline-offset:5px;box-shadow:0 0 0 8px #cba46125}
@media(max-width:640px){.gallery-room{padding:22px 15px 17px;margin-top:16px;border-radius:18px}.gallery-slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding-top:15px}.gallery-slot{min-height:154px;padding:13px 5px 10px}.gallery-art{height:52px}.gallery-art svg{width:38px;height:38px}.gallery-number{font-size:8px;left:8px;top:8px}.gallery-item-name{font-size:11px}.gallery-item-price{font-size:9px}.gallery-head p{font-size:10px}.gallery-counter{font-size:10px}.gallery-message{font-size:10px}}
@media(prefers-reduced-motion:reduce){.gallery-slot.just-placed{animation:none}.gallery-slot{transition:none}}

/* 2026-10-23: Artifact-first gallery. No fake empty stands when a collection is small. */
.gallery-room{background:radial-gradient(ellipse at 52% -23%,#a5a88338,transparent 59%),linear-gradient(150deg,#193e36,#102a24 83%);padding:30px 32px 24px}
.gallery-room:before{opacity:.21}
.gallery-slots{gap:16px;align-items:stretch;padding-top:23px}
.gallery-slots[data-layout="solo"]{grid-template-columns:minmax(0,1fr);max-width:620px;margin:0 auto}
.gallery-slots[data-layout="pair"]{grid-template-columns:repeat(2,minmax(0,1fr));max-width:860px;margin:0 auto}
.gallery-slots[data-layout="sample"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.gallery-slots[data-layout="awaiting"]{grid-template-columns:1fr}
.gallery-slot{gap:0;min-height:276px;padding:16px 14px 14px;background:linear-gradient(160deg,#fbecd712,#0c251c20 80%);border-radius:20px;border:1px solid #d7c49855;box-shadow:inset 0 1px #fff4cb2b,0 8px 24px #071c133c}
.gallery-slot:hover{background:linear-gradient(160deg,#f7e1af26,#ffffff0b);border-color:#e6d19c}
.gallery-art{position:relative;width:min(100%,200px);height:126px;margin:36px auto 1px;display:grid;place-items:center;flex:0 0 auto;color:inherit;filter:drop-shadow(0 12px 12px #05180d70);transition:transform .2s ease}
.gallery-art::after{content:"";position:absolute;bottom:-9px;left:17%;width:66%;height:11px;filter:blur(5px);background:#070c0888;border-radius:50%;z-index:-1}
.gallery-art svg.museum-object{display:block;max-width:100%;width:100%;height:100%;color:inherit;filter:none}
.gallery-slot:hover .gallery-art{transform:translateY(-4px) rotate(-1deg)}
.gallery-slot.first-artifact .gallery-art{--first:1}
.gallery-plinth{height:15px;width:80%;max-width:230px;background:linear-gradient(180deg,#e9d7af 0 20%,#a88b61 20% 75%,#6e624e);border-top:2px solid #fff6d4;box-shadow:0 9px 9px #05160d80;margin:0 auto 11px}
.gallery-item-label{display:flex;flex-direction:column;align-items:center;gap:1px;justify-content:center;min-width:0;width:100%;padding:11px 9px 10px;border:1px solid #e0c18b;background:linear-gradient(125deg,#fbf4e1,#dfd1b5);color:#2b443b;border-radius:9px;box-shadow:0 4px 8px #07170d59}
.gallery-item-type{font-size:9px;color:#846c48;letter-spacing:.7px;font-weight:650;margin-bottom:4px}
.gallery-item-name{font-size:14px;line-height:1.45;color:#273e35;font-weight:700;max-width:100%;overflow-wrap:anywhere}
.gallery-item-price{font:600 13px Georgia,"Malgun Gothic",sans-serif;color:#58482f;margin-top:4px;white-space:normal}
.gallery-item-date{font-size:10px;color:#53665d;margin-top:4px;white-space:normal}
.gallery-number{color:#ecd29d;font:700 10px Georgia,serif;letter-spacing:1.35px}
.gallery-slot.first-artifact.just-placed{animation:gallery-arrival .72s cubic-bezier(.18,.75,.2,1) both}
.gallery-slots[data-layout="solo"] .gallery-slot{min-height:340px;padding:19px 27px}
.gallery-slots[data-layout="solo"] .gallery-art{height:177px;width:244px;margin-top:40px}
.gallery-slots[data-layout="solo"] .gallery-plinth{height:19px;width:66%;max-width:280px}
.gallery-slots[data-layout="solo"] .gallery-item-label{max-width:400px;margin:0 auto;padding:13px 15px}
.gallery-slots[data-layout="solo"] .gallery-item-name{font-size:20px}
.gallery-slots[data-layout="solo"] .gallery-item-price{font-size:17px}
.gallery-slots[data-layout="solo"] .gallery-item-date{font-size:12px}
.gallery-slots[data-layout="solo"] .gallery-number{font-size:11px}
.gallery-slots[data-layout="sample"] .gallery-slot{border-style:dashed}
.gallery-slots[data-layout="sample"] .gallery-number{color:#d2e9d6}
.gallery-awaiting{width:100%;max-width:560px;margin:0 auto;min-height:175px;border:1px dashed #e0cb9e85;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px;background:#ffffff0e}
.gallery-awaiting-symbol{color:#dbc18d;font-size:27px;line-height:1}
.gallery-awaiting strong{color:#fff5dd;font-size:16px;margin-top:8px}
.gallery-awaiting p{color:#d0dfd1;font-size:11px;margin:6px 0 13px}
.gallery-awaiting-action{border-radius:9px;background:#f6e9c9;color:#263e34;min-height:44px;padding:9px 16px;font-weight:700;font-size:12px;border:0}
.gallery-message{font-size:12px}
@media(min-width:960px) and (max-width:1230px){.gallery-slots[data-layout="collection"]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.gallery-room{padding:21px 14px 18px}.gallery-slots{gap:10px;padding-top:17px}.gallery-slots[data-layout="sample"]{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-slots[data-layout="sample"] .gallery-slot:last-child{grid-column:1/-1;width:calc(50% - 5px);margin:0 auto}.gallery-slots[data-layout="pair"],.gallery-slots[data-layout="collection"]{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-slot{padding:11px 7px 9px;min-height:228px;border-radius:12px}.gallery-art{width:100%;height:96px;margin-top:29px}.gallery-art::after{bottom:-3px}.gallery-plinth{width:90%;height:11px;margin-bottom:8px}.gallery-number{font-size:8px;top:7px;left:7px}.gallery-item-label{padding:8px 3px 7px;gap:1px}.gallery-item-type{font-size:8px;margin-bottom:3px}.gallery-item-name{font-size:11px}.gallery-item-price{font-size:11px;margin-top:2px}.gallery-item-date{font-size:9px;margin-top:3px}.gallery-slots[data-layout="solo"]{grid-template-columns:1fr;width:100%}.gallery-slots[data-layout="solo"] .gallery-slot{min-height:340px;padding:15px 17px}.gallery-slots[data-layout="solo"] .gallery-art{width:min(100%,285px);height:185px;margin-top:32px}.gallery-slots[data-layout="solo"] .gallery-plinth{width:78%;height:17px}.gallery-slots[data-layout="solo"] .gallery-item-name{font-size:18px}.gallery-slots[data-layout="solo"] .gallery-item-price{font-size:16px}.gallery-slots[data-layout="solo"] .gallery-item-date{font-size:11px}.gallery-awaiting{min-height:170px}.gallery-message{font-size:10px}}
@media(prefers-reduced-motion:reduce){.gallery-art{transition:none}}
