main.svelte-13f8jir{max-width:800px;margin:0 auto;padding:2rem 1rem}header.svelte-13f8jir{text-align:center;margin-bottom:2rem}header.svelte-13f8jir h1:where(.svelte-13f8jir){font-size:3rem;letter-spacing:.2em}header.svelte-13f8jir p:where(.svelte-13f8jir){color:#888;font-size:1.2rem}.shelf.svelte-13f8jir{display:flex;flex-wrap:wrap;gap:.5rem;background:#2a2a2a;border-radius:12px;padding:1.5rem;min-height:300px}.tape-spine.svelte-13f8jir{display:flex;flex-direction:column;justify-content:center;width:60px;height:200px;background:linear-gradient(90deg,#444,#555,#444);border-radius:2px;padding:.5rem .25rem;text-decoration:none;color:#fff;writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);transition:transform .2s,box-shadow .2s}.tape-spine.svelte-13f8jir:hover{transform:rotate(180deg) translateY(-10px);box-shadow:0 10px 20px #00000080}.tape-title.svelte-13f8jir{font-size:1rem;text-transform:uppercase;letter-spacing:.05em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-height:140px}.tape-by.svelte-13f8jir{font-size:.8rem;color:#aaa;margin-top:.5rem}.empty.svelte-13f8jir{color:#666;text-align:center;width:100%;padding:4rem}.empty.svelte-13f8jir a:where(.svelte-13f8jir){color:#ff6b6b}.make-link.svelte-13f8jir{display:block;text-align:center;color:#888;font-size:1.2rem;text-decoration:none;margin-top:2rem}.make-link.svelte-13f8jir:hover{color:#ff6b6b}
