.tile-preview-wrapper{width:100%;min-height:100svh;background:radial-gradient(circle at center,#2b164c,#09020f 70%);display:flex;align-items:center;justify-content:center;gap:28px;padding:30px;box-sizing:border-box}.tile-upload-panel{width:min(240px,100%);display:flex;flex-direction:column;gap:12px;color:#f8f5ff}.tile-upload-control,.tile-upload-label{font-size:14px;font-weight:600}.tile-upload-control{width:100%;min-height:44px;border:1px solid hsla(0,0%,100%,.22);border-radius:8px;background:hsla(0,0%,100%,.08);display:inline-flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:background .18s ease,border-color .18s ease}.tile-upload-control:hover{background:hsla(0,0%,100%,.14);border-color:hsla(0,0%,100%,.4)}.tile-upload-control input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.tile-upload-file{color:rgba(248,245,255,.7);font-size:12px;line-height:1.4;overflow-wrap:anywhere}.tile-preview-frame{width:min(90vw,700px);max-height:calc(100svh - 60px);perspective:900px;position:relative;contain:layout paint}.tile-grid{width:100%;height:100%;display:grid;grid-gap:4px;gap:4px;transform-style:preserve-3d;isolation:isolate}.image-tile{position:relative;overflow:hidden;background-repeat:no-repeat;border-radius:5px;box-shadow:0 8px 18px rgba(0,0,0,.35),inset 0 0 10px hsla(0,0%,100%,.12);-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-origin:top center;will-change:transform,opacity,filter}.image-tile:after{content:"";inset:0;background:linear-gradient(135deg,hsla(0,0%,100%,.22),transparent 35%,hsla(0,0%,100%,.08))}.image-tile:after,.tile-shine{position:absolute;pointer-events:none}.tile-shine{top:-40%;left:0;width:45%;height:180%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.7),transparent);transform:rotate(18deg);opacity:0;display:none}.image-tile--shine .tile-shine{display:block}.tile-white-glow{position:absolute;inset:0;background:hsla(0,0%,100%,.85);pointer-events:none;opacity:0;z-index:1}.tile-shine{z-index:2}@media (max-width:820px){.tile-preview-wrapper{flex-direction:column;align-items:center;justify-content:flex-start;gap:14px;min-height:100svh;overflow-x:hidden;padding:14px}.tile-upload-panel{width:min(94vw,560px);margin:0 auto;flex-direction:row;align-items:center;gap:10px}.tile-preview-frame{margin:0 auto;width:min(94vw,560px,calc((100svh - 112px) * var(--image-ratio)));max-height:calc(100svh - 112px);perspective:650px}.tile-upload-label{flex:0 0 auto;font-size:13px}.tile-upload-control{flex:1 1 140px;min-height:40px;padding:0 12px}.tile-upload-file{max-width:28vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile-grid{gap:3px}.image-tile{border-radius:4px;box-shadow:inset 0 0 6px hsla(0,0%,100%,.1)}.image-tile:after{background:linear-gradient(135deg,hsla(0,0%,100%,.14),transparent 38%,hsla(0,0%,100%,.05))}}@media (max-width:480px){.tile-preview-wrapper{gap:10px;padding:10px}.tile-upload-panel{width:min(96vw,420px)}.tile-upload-label{display:none}.tile-preview-frame{width:min(96vw,calc((100svh - 78px) * var(--image-ratio)));max-height:calc(100svh - 78px)}.tile-grid{gap:2px}}@media (max-width:820px) and (orientation:landscape){.tile-preview-wrapper{flex-direction:row;align-items:center;justify-content:center;padding:10px}.tile-upload-panel{width:min(190px,28vw);flex-direction:column;align-items:stretch}.tile-upload-label{display:block}.tile-upload-file{max-width:100%}.tile-preview-frame{width:min(68vw,calc((100svh - 20px) * var(--image-ratio)));max-height:calc(100svh - 20px)}}