html,body{overscroll-behavior:none;background:#141413;height:100%;margin:0;font-family:Inter,-apple-system,Segoe UI,sans-serif;overflow:hidden}.topbar{z-index:10;padding:calc(14px + env(safe-area-inset-top,0px)) calc(18px + env(safe-area-inset-right,0px)) 14px calc(18px + env(safe-area-inset-left,0px));pointer-events:none;background:linear-gradient(#141413f2 0%,#141413bf 62%,#14141300 100%);justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.topbar a,.topbar button{pointer-events:auto}.back{color:#a09d96;font-size:13px;text-decoration:none}.back:hover{color:#faf9f5}.subtitle{color:#a09d96;letter-spacing:1.4px;text-transform:uppercase;font-size:11px}.spacer{width:40px}@media (pointer:coarse){.back{padding:8px 4px;font-size:15px}}.stage{perspective:1200px;touch-action:none;user-select:none;background:radial-gradient(at 50% 40%,#201f1c 0%,#141413 72%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.card{will-change:transform;width:min(300px,68vw);transform-style:preserve-3d;background:#1f1e1b;border:1px solid #faf9f517;border-radius:16px;position:absolute;overflow:hidden;box-shadow:0 20px 44px #00000080}.card-img{aspect-ratio:3/4;background:#171614;position:relative}.card-img img{object-fit:cover;pointer-events:none;-webkit-user-drag:none;-webkit-touch-callout:none;width:100%;height:100%;display:block}.card-name{letter-spacing:1.4px;text-transform:uppercase;color:#faf9f5;text-align:center;white-space:nowrap;text-overflow:ellipsis;padding:14px 16px 16px;font-size:11px;overflow:hidden}.badge{letter-spacing:1.2px;text-transform:uppercase;color:#e8a55a;background:#14141399;border:1px solid #e8a55a8c;border-radius:9999px;padding:4px 10px;font-size:9px;position:absolute;top:12px;left:12px}.dots{bottom:calc(26px + env(safe-area-inset-bottom,0px));z-index:10;gap:10px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.dot{cursor:pointer;background:#faf9f540;border:none;border-radius:9999px;width:8px;height:8px;padding:0;transition:background .2s,transform .2s}.dot.on{background:#e8a55a;transform:scale(1.25)}.detail{z-index:20;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.detail[hidden]{display:none}.detail-panel{transform-origin:0 0;will-change:transform;pointer-events:none;background:#1f1e1b;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.detail-panel .close{pointer-events:auto}.detail-inner{pointer-events:none;flex-direction:column;align-items:center;gap:14px;width:min(340px,78vw);display:flex}.detail-img{aspect-ratio:3/4;will-change:transform;background:#171614;border-radius:12px;width:100%;overflow:hidden}.detail-img img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.detail-text{flex-direction:column;align-items:center;gap:14px;display:flex}.detail .badge{position:static}.detail-name{letter-spacing:1.4px;text-transform:uppercase;color:#faf9f5;text-align:center;margin:0;font-size:18px;font-weight:700}.detail-line{color:#a09d96;text-align:center;margin:0;font-size:13px}.detail-btn{letter-spacing:1px;text-transform:uppercase;color:#e8a55a;border:1px solid #e8a55a8c;border-radius:9999px;padding:9px 22px;font-size:11px;font-weight:700;text-decoration:none;transition:border-color .15s,background .15s}.detail-btn[aria-disabled=true]{color:#a09d96;pointer-events:none;border-color:#a09d9666}.detail-btn{pointer-events:auto}.detail-btn:hover{background:#e8a55a1f;border-color:#e8a55a}.close{top:calc(16px + env(safe-area-inset-top,0px));color:#faf9f5;cursor:pointer;background:#14141399;border:1px solid #faf9f524;border-radius:9999px;width:40px;height:40px;font-size:20px;line-height:1;position:absolute;right:18px}.close:hover{background:#faf9f51a}body.locked{overflow:hidden}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.anim{opacity:0;animation:.5s forwards rise;animation-delay:calc(var(--d) * .1s)}.dots.anim{animation-name:rise-dots}@keyframes rise-dots{0%{opacity:0;transform:translate(-50%)translateY(18px)}to{opacity:1;transform:translate(-50%)translateY(0)}}
