@layer theme,base;@layer components{.album-sheet{flex-direction:column;gap:.75rem;min-height:0;display:flex}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}@media (min-width:640px){.album-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.album-card{background:var(--gradient-glass-card);text-align:left;transition:transform var(--duration-base) ease;border:1px solid #ffffff1a;border:1px solid lab(100% 0 0/.1);border-radius:1rem;flex-direction:column;display:flex;overflow:hidden}.album-card:hover{transform:translateY(-2px)}.album-card:focus-visible{outline:2px solid var(--color-brand-secondary-400);outline-offset:2px}.album-cover{aspect-ratio:3/4;background:var(--color-gray-950);position:relative;overflow:hidden}.album-cover img,.album-tile img,.album-tile video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.album-blur{filter:blur(var(--blur-md));transform:scale(1.3)}.album-lock{width:2.5rem;height:2.5rem;color:var(--color-gray-50);background:#0000008c;background:lab(0% 0 0/.55);border:1px solid #ffffff40;border:1px solid lab(100% 0 0/.25);border-radius:9999px;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.album-new{background:var(--color-danger);color:var(--color-gray-50);letter-spacing:.08em;padding:.1rem 1.8rem;font-size:.6rem;font-weight:700;position:absolute;top:.6rem;left:-1.6rem;transform:rotate(-38deg)}.album-chip{color:var(--color-gray-50);font-variant-numeric:tabular-nums;background:#000000a6;background:lab(0% 0 0/.65);border-radius:9999px;align-items:center;gap:.25rem;padding:.1rem .45rem;font-size:.7rem;display:flex;position:absolute}.album-chip.is-top-right{top:.4rem;right:.4rem}.album-chip.is-bottom-left{bottom:.4rem;left:.4rem}.album-info{flex-direction:column;gap:.25rem;padding:.5rem .6rem .65rem;display:flex}.album-title{min-height:2.4em;color:var(--color-gray-50);font-size:.85rem;font-weight:600;line-height:1.2}.album-price{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.album-price-worth{color:var(--color-gray-500);font-size:.75rem;text-decoration:line-through}.album-price-now{color:var(--color-highlight);font-weight:700}.album-saving{color:var(--color-success-400);background:#11ad322e;background:lab(61.7444% -56.3779 49.029/.18);border-radius:9999px;padding:0 .4rem;font-size:.65rem;font-weight:700}.album-line{color:var(--color-gray-300);font-size:.85rem;font-style:italic}.album-sheet-title{color:var(--color-gray-50);margin:0 2.5rem .5rem 0;font-size:1.125rem;font-weight:700;line-height:1.25}.album-mosaic-scroll{overscroll-behavior:contain;max-height:min(52vh,34rem);overflow-y:auto}.album-mosaic{grid-template-columns:repeat(4,minmax(0,1fr));gap:.3rem;display:grid}@media (min-width:640px){.album-mosaic{grid-template-columns:repeat(6,minmax(0,1fr))}}.album-tile{aspect-ratio:2/3;background:var(--color-gray-900);border-radius:.5rem;position:relative;overflow:hidden}.album-tile.is-open{cursor:zoom-in}.album-tile .album-lock{width:1.6rem;height:1.6rem}.album-tile-reveal{animation:album-reveal var(--duration-slower) ease both}.album-unlock-bar{padding:.75rem 0 calc(.25rem + var(--safe-area-bottom,0px));background:var(--color-gray-900);border-top:1px solid #ffffff14;border-top:1px solid lab(100% 0 0/.08);flex-direction:column;gap:.4rem;display:flex}.album-unlock-row{color:var(--color-gray-400);justify-content:space-between;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.album-fine{color:var(--color-gray-500);text-align:center;font-size:.75rem}.album-entry-btn{background:var(--gradient-brand);width:2.25rem;height:2.25rem;color:var(--color-gray-50);border-radius:9999px;place-items:center;display:grid;position:relative}.album-entry-btn:focus-visible{outline:2px solid var(--color-brand-secondary-400);outline-offset:2px}.album-entry-count{background:var(--color-highlight);min-width:1rem;height:1rem;color:var(--color-gray-950);border-radius:9999px;place-items:center;padding:0 .25rem;font-size:.6rem;font-weight:700;display:grid;position:absolute;top:-.25rem;right:-.25rem}.album-strip{margin-top:1rem;padding:0 .5rem}.album-strip-head{color:#fff9;color:lab(100% 0 0/.6);justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:flex}@media (prefers-reduced-motion:reduce){.album-card,.album-tile-reveal{transition:none;animation:none}}}@layer utilities;@keyframes album-reveal{0%{opacity:0;filter:blur(var(--blur-md))}to{opacity:1;filter:blur()}}
