*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--fg);font-family:Arial,'Noto Sans TC',sans-serif;font-size:var(--size);line-height:1.6}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #ffffff20;position:absolute;top:0;width:100%;z-index:3;background:#15141280}.brand{font-size:24px;font-weight:900;letter-spacing:-1px}nav{display:flex;gap:24px;font-size:12px;letter-spacing:1px}.outline,.cta{border:1px solid #ffffff50;background:transparent;color:inherit;padding:10px 20px;border-radius:0}.cta{background:var(--accent);border-color:var(--accent);color:#151412;display:inline-block;font-weight:bold}.hero{height: min(900px,100svh);min-height:640px;position:relative;overflow:hidden;background:#18120d;isolation:isolate}.shop-scene{position:absolute;inset:0;perspective:700px;overflow:hidden;background:radial-gradient(ellipse at 50% 35%,#bd804740,transparent 60%),#19140f}.room{position:absolute;inset:12% 14% 0;transform-style:preserve-3d;animation:walk 7s ease-out both}.backwall{position:absolute;inset:0;background:repeating-linear-gradient(90deg,#32261c 0 1px,transparent 1px 110px),linear-gradient(#30231b,#47301d);border:10px solid #1b1510;box-shadow:0 0 100px #b47e3430}.shop-sign{color:#e1bf82;text-align:center;font:clamp(22px,4vw,58px) Georgia;padding:45px 0 5px;letter-spacing:8px}.shop-note{text-align:center;font:10px Arial;letter-spacing:6px;color:#af967a}.record-wall{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;padding:40px 8%}.sleeve{aspect-ratio:1;background:#584431;border:6px solid #c5a16c;box-shadow:0 12px 0 #120d09}.sleeve img{width:100%;height:100%;object-fit:cover;filter:sepia(.4) brightness(.75)}.floor{position:absolute;top:72%;width:180%;left:-40%;height:100%;background:repeating-linear-gradient(90deg,#433020 0 2px,#735238 2px 100px);transform:rotateX(65deg);transform-origin:top}.bin{position:absolute;top:58%;width:29%;height:65%;background:repeating-linear-gradient(0deg,#38271c 0 4px,#6c492b 5px 65px);border:10px solid #251b12;box-shadow:0 0 40px #000}.bin.left{left:-6%;transform:rotateY(25deg)}.bin.right{right:-6%;transform:rotateY(-25deg)}.door{position:absolute;inset:-5%;border:50px solid #110f0b;box-shadow:inset 0 0 0 5px #997342;animation:door 6s ease-in forwards;pointer-events:none}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#151412 0%,#15141200 70%),linear-gradient(90deg,#0009,transparent 80%);z-index:-0;pointer-events:none}.hero-copy{position:absolute;bottom:10%;left:7vw;z-index:1;max-width:850px}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--accent);font-weight:bold}.hero h1{font-family:var(--font);font-size:clamp(60px,9vw,138px);letter-spacing:-5px;line-height:.95;margin:18px 0 26px}.hero p{font-size:18px;color:#dccdb9}.hero-actions{display:flex;gap:15px;align-items:center}.hero-counter{position:absolute;bottom:10%;right:6%;font-size:10px;writing-mode:vertical-rl;letter-spacing:4px;color:#d1b38c}.hero video{position:absolute;width:100%;height:100%;object-fit:cover}.replay{position:absolute;right:5vw;top:105px;z-index:2;font-size:11px}section{padding:90px 7vw;border-top:1px solid #ffffff20}section:nth-child(even){background:#ffffff03}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:35px}.section-head h2{font-family:var(--font);font-size:clamp(30px,4vw,56px);font-weight:400;line-height:1.2;margin:15px 0 0}.index{color:#786d60;font:14px Georgia}.featured{display:grid;grid-template-columns:1fr 1.2fr;gap:6vw;align-items:center;padding-bottom:45px}.cover{aspect-ratio:1;width:100%;object-fit:cover}.featured .cover{max-width:440px;box-shadow:20px 20px 0 #ffffff05}.featured h3{font:clamp(30px,4vw,55px) var(--font);margin:18px 0 4px}.translation{color:#b8ac99;font-size:.85em;margin:5px 0 15px}.meta{color:#af9e89;font-size:12px;letter-spacing:1px}.trackgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.track{display:grid;grid-template-columns:76px 1fr 35px;align-items:center;gap:15px;padding:22px 0;border-top:1px solid #ffffff22}.track img{width:76px;height:76px;object-fit:cover}.track h3{font-size:16px;margin:0}.track .translation{font-size:12px;margin:2px 0}.play{border:1px solid #ffffff40;background:transparent;color:var(--fg);width:35px;height:35px;border-radius:50%}.rail{display:flex;gap:25px;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:20px;scrollbar-color:var(--accent) #29241e}.video-card{flex:0 0 44%;scroll-snap-align:start;min-width:270px}.video-card .thumb{aspect-ratio:16/9;position:relative;background:#27221d;overflow:hidden;display:grid;place-items:center}.thumb img{width:100%;height:100%;object-fit:cover}.thumb .play-overlay{position:absolute;border:1px solid #fff9;border-radius:50%;padding:12px 23px;background:#0008;color:white}.video-card h3{font:25px var(--font);margin:15px 0 4px}.rail-nav{display:flex;gap:8px}.rail-nav button{background:transparent;color:var(--fg);border:1px solid #ffffff40;padding:8px 16px}.platforms{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}.platform{border:1px solid #ffffff20;padding:18px 10px;text-align:center;font-size:11px;transition:.2s}.platform:hover{border-color:var(--accent);transform:translateY(-4px)}.platform img{width:100%;height:45px;object-fit:contain;margin-bottom:12px}.petrail{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));gap:18px;overflow:auto}.pet-portrait{height:250px;display:grid;place-items:center;background:linear-gradient(#ffffff03,#ffffff08);border-bottom:1px solid var(--accent)}.pet-portrait img{width:100%;height:100%;object-fit:contain}.placeholder{color:#a39480;font-size:12px;text-align:center;padding:20px}.pet h3{font-size:18px;margin:15px 0 4px}.pet p{font-size:12px;color:#ac9f90}.merch{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.merch video,.merch img{width:100%;max-height:350px;object-fit:contain}.merch h3{font:36px var(--font)}footer{padding:35px 7vw 60px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px;color:#b2a28c}.notice{font-size:12px;color:#a89983}.empty-slot{border:1px dashed #665744;display:grid;place-items:center;min-height:160px;color:#a99984;padding:20px}.modal{position:fixed;inset:0;z-index:20;background:#000d;display:flex;align-items:center;justify-content:center;padding:25px}.modal-inner{width:min(100%,1000px);background:#191715;padding:20px}.modal iframe{width:100%;height: min(65vh,560px);border:0}.modal button{float:right}.audio-bar{position:fixed;bottom:0;left:0;right:0;background:#201d19;z-index:5;border-top:1px solid var(--accent);padding:8px 7vw;display:none}.audio-bar iframe{width:100%;height:85px;border:0}.audio-bar button{float:right}.studio-toolbar{position:sticky;top:0;z-index:10;background:#eadcc7;color:#211c17;padding:10px 15px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;font:12px Arial}.studio-toolbar button{padding:8px;border:1px solid #9e8c72;background:#fff9;color:#211c17}.studio-toolbar b{margin-right:auto}.studio-panel{position:fixed;right:0;top:61px;bottom:0;width:350px;z-index:9;background:#f3e9d9;color:#30261c;overflow:auto;padding:22px;box-shadow:-10px 0 50px #0006;font:13px Arial}.studio-panel label{display:block;margin:14px 0 6px}.studio-panel input:not([type=checkbox]),.studio-panel select,.studio-panel textarea{display:block;width:100%;padding:8px;background:#fff;border:1px solid #c4b69e;color:#30261c}.studio-panel textarea{min-height:65px}.studio-panel button{margin:6px 3px 6px 0;padding:7px;background:#34281d;color:white;border:0}.studio-panel hr{border:0;border-top:1px solid #cbbda5;margin:22px 0}.editing{padding-right:350px}.editing header{position:relative}.previewing .studio-panel{display:none}.previewing{padding-right:0}.status{font-size:11px}.custom-text{max-width:800px;white-space:pre-wrap}@keyframes walk{from{transform:translateZ(-420px) translateY(-15px)}to{transform:translateZ(60px) translateY(0)}}@keyframes door{from{transform:scale(1);opacity:1}to{transform:scale(2.5);opacity:0}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}.door{display:none}}@media(max-width:1000px){nav{gap:12px}.trackgrid{grid-template-columns:repeat(2,1fr)}.platforms{grid-template-columns:repeat(4,1fr)}.editing{padding-right:0}.studio-panel{width:330px}.hero h1{letter-spacing:-3px}}@media(max-width:650px){nav a{display:none}header{height:65px}.hero{min-height:650px}.hero-copy{left:6vw;right:5vw}.hero h1{font-size:62px}.hero-counter{display:none}section{padding:60px 6vw}.featured,.merch{grid-template-columns:1fr;gap:30px}.featured .cover{max-width:100%}.trackgrid{grid-template-columns:1fr}.video-card{flex-basis:86%}.platforms{grid-template-columns:repeat(2,1fr)}.petrail{grid-template-columns:repeat(7,150px)}.studio-panel{top:110px;width:min(90vw,350px)}.shop-sign{font-size:22px;letter-spacing:2px}.record-wall{grid-template-columns:repeat(3,1fr)}footer{gap:20px}.hero-actions{align-items:stretch;flex-direction:column;width:max-content}}
/* V22 — BLACK / WHITE / ANGORA RED. UNDERGROUND PUNK PRESS. */
::selection{background:var(--accent);color:#fff}body{background:var(--bg);color:var(--fg)}header{background:#080808e8;border-bottom:2px solid var(--fg)}.brand{font-family:Impact,'Arial Black',sans-serif;font-size:30px;letter-spacing:-.5px;transform:rotate(-2deg)}nav{font-weight:900;text-transform:uppercase;letter-spacing:.5px}nav a:hover{color:#fff;background:var(--accent)}.outline{border-color:#f5f5f1;background:#080808;color:#f5f5f1;font-weight:bold}.outline:hover{background:var(--accent)}.cta{background:var(--accent);color:#fff;border:2px solid #fff;box-shadow:5px 5px 0 #f5f5f1;transform:rotate(-1deg);font-weight:900;letter-spacing:1px}.cta:hover{transform:translate(3px,3px) rotate(-1deg);box-shadow:2px 2px 0 #fff}.hero{background:#080808}.shop-scene{background:radial-gradient(ellipse at 50% 35%,#8b172755,transparent 65%),#090909}.backwall{background:repeating-linear-gradient(90deg,#ffffff0a 0 1px,transparent 1px 110px),linear-gradient(#181818,#090909);border-color:#050505;box-shadow:0 0 100px #8b172755}.shop-sign{font-family:Impact,'Arial Black',sans-serif;font-weight:900;color:#fff;letter-spacing:2px;transform:rotate(-3deg);text-shadow:5px 5px 0 var(--accent)}.shop-note{color:#fff;letter-spacing:5px}.record-wall{gap:25px}.sleeve{border:5px solid #eee;background:#111;box-shadow:6px 7px 0 #8b1727;transform:rotate(-4deg)}.sleeve:nth-child(2n){transform:rotate(3deg)}.sleeve:nth-child(3n){border-color:var(--accent)}.sleeve img{filter:grayscale(1) contrast(1.25) brightness(.8)}.floor{background:repeating-linear-gradient(90deg,#0b0b0b 0 3px,#303030 3px 100px)}.bin{background:repeating-linear-gradient(0deg,#101010 0 4px,#292929 5px 65px);border-color:#050505;box-shadow:0 0 40px #000}.bin.left{border-top-color:var(--accent)}.door{border-color:#060606;box-shadow:inset 0 0 0 5px var(--accent)}.hero:after{background:linear-gradient(0deg,#080808 0%,#08080811 78%),linear-gradient(90deg,#000b,transparent 85%)}.hero:before{content:'';position:absolute;inset:0;z-index:1;opacity:.12;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23ffffff' filter='url(%23n)' opacity='.5' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}.hero-copy{z-index:2;max-width:1000px}.hero h1{font-family:var(--font);font-weight:900;letter-spacing:-4px;text-transform:uppercase;font-size:clamp(58px,8.5vw,122px);line-height:.97}.hero h1>span{color:#fff!important;background:var(--accent);box-shadow:10px 0 0 var(--accent),-6px 0 0 var(--accent);box-decoration-break:clone;-webkit-box-decoration-break:clone}.hero p{color:#f5f5f1}.hero .eyebrow{display:inline-block;background:#f5f5f1;color:#080808;padding:5px 9px;transform:rotate(-2deg);letter-spacing:2px}.hero-counter{color:#f5f5f1}.eyebrow{color:var(--fg);font-weight:900}.section-head>.index{background:var(--accent);color:#fff;padding:6px 10px;font:900 17px Impact,sans-serif;transform:rotate(5deg)}section{border-top:2px solid var(--fg);position:relative}section:before{content:'';position:absolute;left:0;right:0;top:-6px;height:10px;background:var(--fg);clip-path:polygon(0 35%,2% 75%,5% 10%,8% 65%,12% 30%,17% 80%,23% 25%,30% 70%,38% 35%,43% 85%,48% 20%,53% 60%,61% 30%,67% 85%,73% 25%,81% 65%,89% 20%,94% 75%,100% 35%,100% 65%,0 65%);pointer-events:none}.section-head h2{font-family:var(--font);font-weight:900;text-transform:uppercase;letter-spacing:-1.5px}.featured .cover{box-shadow:12px 12px 0 var(--accent);border:2px solid #fff;transform:rotate(-2deg)}.featured h3,.video-card h3,.merch h3{font-family:var(--font);font-weight:900}.translation,.meta,.notice,.pet p,footer{color:#bdbdbd}.track{border-top:1px solid #ffffff55}.track img{border:1px solid #fff}.play{border:1px solid #fff;color:#fff}.play:hover{background:var(--accent)}.rail{scrollbar-color:var(--accent) #171717}.rail-nav button{border:1px solid #fff;color:#fff}.rail-nav button:hover{background:var(--accent)}.thumb{background:#191919!important;border-bottom:4px solid var(--accent)!important}.video-card .eyebrow{color:#fff;background:var(--accent);display:inline-block;padding:2px 8px;transform:rotate(-2deg)}.platform{background:#f5f5f1;color:#080808;border:2px solid #f5f5f1;font-weight:900}.platform:hover{box-shadow:5px 5px 0 var(--accent);border-color:#fff}.platform img{filter:grayscale(1)}.pet-portrait{background:repeating-linear-gradient(-45deg,#ffffff04 0 2px,transparent 2px 8px);border-bottom:5px solid var(--accent)}.pet h3{font-weight:900}.placeholder,.empty-slot{color:#ccc}.empty-slot{border-color:#777;background:#ffffff03}.audio-bar{background:#080808;border-top:3px solid var(--accent)}.modal-inner{background:#080808;border:2px solid #fff}.studio-toolbar{background:#f5f5f1;color:#080808;border-bottom:4px solid #8b1727}.studio-toolbar button{border-color:#333;background:#fff;color:#080808}.studio-toolbar button:hover{background:#8b1727;color:#fff}.studio-panel{background:#f5f5f1;color:#080808;border-left:5px solid #8b1727}.studio-panel input:not([type=checkbox]),.studio-panel select,.studio-panel textarea{border-color:#aaa;color:#080808}.studio-panel button{background:#8b1727;color:#fff}.studio-panel hr{border-color:#aaa}.studio-panel p{line-height:1.6}footer{border-top:2px solid #fff}.replay{z-index:3}@media(max-width:650px){.hero h1{letter-spacing:-2px;font-size:58px}.shop-sign{font-size:24px}.hero-copy{bottom:10%}}
.hero h1>span{display:inline-block;max-width:100%;margin-top:.12em;padding:0 .05em .06em;line-height:.98;box-shadow:none}
.hero-background{position:absolute;inset:0;width:100%;height:100%;animation:photoEnter 7s ease-out both}.image-help{background:#fff;border-left:4px solid #8b1727;padding:10px;margin:10px 0;font-size:12px;line-height:1.7}.image-thumb{width:100%;height:140px;object-fit:contain;background:repeating-conic-gradient(#ddd 0% 25%,#fff 0% 50%) 50%/16px 16px}.image-dialog{max-height:90vh;overflow:auto;color:#f5f5f1}.image-dialog .image-review{width:min(100%,650px);max-height:45vh;object-fit:contain;background:repeating-conic-gradient(#222 0% 25%,#444 0% 50%) 50%/20px 20px;display:block;margin:16px auto}.image-dialog .warning{color:#ffc8cf;border-left:3px solid #8b1727;padding:8px 12px;white-space:pre-line}.image-dialog label{display:block;margin:12px 0}.image-dialog select{padding:8px;margin:5px;color:#080808}.image-dialog button{margin:8px}.image-result{font-size:12px;line-height:1.6}@keyframes photoEnter{from{transform:scale(1)}to{transform:scale(1.16)}}

/* V26: fixed 16:9 YouTube embeds, including playlist players. */
.video-dialog{width:min(100%,1000px);max-height:94svh;overflow:auto}.video-toolbar{display:flex;justify-content:flex-end;margin-bottom:10px}.video-toolbar button{float:none}.youtube-frame{position:relative;width:100%;aspect-ratio:16 / 9;background:#000;overflow:hidden}.modal .youtube-frame iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}.video-dialog>a{display:inline-block;margin-top:12px}.video-card .thumb{aspect-ratio:16 / 9;padding:0}.video-card .thumb .cover{aspect-ratio:auto;width:100%;height:100%}

/* V25: web-based cloud publishing controls, distinct from offline draft toolbar. */
.cloud-toolbar{position:relative;z-index:11;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 15px;background:#101010;border-bottom:3px solid #8b1727;color:#f5f5f1;font:12px Arial,sans-serif}
.cloud-toolbar button{padding:9px 12px;cursor:pointer;background:#f5f5f1;color:#080808;border:1px solid #aaa;font:700 12px Arial,sans-serif}
.cloud-toolbar button:disabled{opacity:.42;cursor:not-allowed}
.cloud-toolbar .cloud-publish{background:#8b1727;color:#fff;border-color:#f5f5f1}
.cloud-status{flex:1 1 270px;line-height:1.5}
.cloud-login{max-width:460px}
.cloud-login h2{font:700 24px Impact,Arial,sans-serif}
.cloud-login p{font:14px Arial,sans-serif;line-height:1.6}
.cloud-login label{display:block;font:14px Arial,sans-serif;margin:12px 0}
.cloud-login input{display:block;margin-top:5px;width:100%;padding:12px;border:1px solid #aaa;background:#fff;color:#111;font:16px Arial,sans-serif}
.cloud-login-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:18px}
.cloud-login #cloudLoginMessage{color:#ffb3bb}
@media(max-width:650px){.studio-panel{position:relative;width:100%;top:auto;bottom:auto;right:auto;box-shadow:none;max-height:none}.editing{padding-right:0}.cloud-toolbar{padding:10px}.cloud-toolbar button{flex:1 1 135px}.cloud-status{flex-basis:100%}}

/* V27: constrain intrinsic thumbnail dimensions; never crop artwork. */
.video-card .thumb{display:block;position:relative;width:100%;height:auto;aspect-ratio:16 / 9;padding:0!important;min-height:0;overflow:hidden;background:#000!important;border:0!important}
.video-card .thumb img,.video-card .thumb .cover{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:100%;max-height:100%;min-width:0;min-height:0;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;transform:none;filter:none}
.video-card .thumb .empty-slot{position:absolute;inset:0;min-height:0}
.video-card .thumb .play-overlay{left:50%;top:50%;transform:translate(-50%,-50%);z-index:1}
.video-dialog{width:min(100%,1000px);max-height:94svh;overflow:auto}.youtube-frame{position:relative;width:100%;aspect-ratio:16 / 9;background:#000;overflow:hidden}.modal .youtube-frame iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}

.thumbnail-unavailable{position:absolute;left:15px;right:15px;bottom:12px;font-size:12px;color:#ccc;text-align:center}
/* V28 — first-person push-door / threshold / record-store arrival. */
.hero{--intro-duration:10.5s;min-height:680px;background:#080808}.hero>.hero-background{display:none}.entrance-scene{position:absolute;inset:0;overflow:hidden;background:#080808;isolation:isolate}.pov-camera{position:absolute;inset:0;transform-origin:51% 48%;will-change:transform}.pov-interior{position:absolute;inset:-4%;background-size:cover;background-position:50% 50%;transform-origin:52% 44%;filter:brightness(.8);will-change:transform,filter}.entry-portal{position:absolute;inset:0;perspective:1100px;perspective-origin:50% 50%;will-change:transform,opacity}.door-assembly{position:absolute;left:23%;top:-6%;width:54%;height:120%;border:22px solid #161312;border-bottom:14px solid #312b29;box-shadow:0 0 0 100vmax #090909,0 0 35px #000,inset 0 0 0 2px #9d8681;transform-style:preserve-3d}.door-transom{position:absolute;left:-2px;right:-2px;top:0;height:18%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#080808;border-bottom:14px solid #211b1b;box-shadow:0 1px 0 #8b1727;z-index:2}.door-transom span{font:900 clamp(20px,3.1vw,45px) Impact,'Arial Black',sans-serif;color:#f5f5f1;letter-spacing:2px;transform:rotate(-2deg);text-shadow:3px 3px 0 #8b1727}.door-transom small{font-size:11px;letter-spacing:4px;color:#c9bcb5;margin-top:8px}.door-leaf{position:absolute;left:0;right:0;top:18%;bottom:0;border:15px solid #211a19;border-top-width:11px;background:#a5afa908;transform-origin:0% 50%;transform-style:preserve-3d;box-shadow:inset 0 0 0 2px #5c4442,6px 0 10px #0009;will-change:transform}.door-glass{position:absolute;inset:0 0 20%;border:2px solid #56423f;background:linear-gradient(115deg,#d7d0bf13 5%,#e1dfd318 12%,transparent 35%,#ccc1b818 80%,transparent);backdrop-filter:blur(2px) brightness(.6);overflow:hidden}.glass-lines{position:absolute;inset:0;background:repeating-linear-gradient(112deg,transparent 0 130px,#ffffff07 131px 133px,transparent 134px 210px);pointer-events:none}.door-sticker{position:absolute;top:34%;right:13%;display:inline-block;background:#eee9df;color:#171210;padding:14px 18px;font:900 29px Impact,sans-serif;letter-spacing:3px;transform:rotate(-5deg);box-shadow:2px 3px 7px #0008;text-align:center;max-width:70%}.door-sticker small{display:block;font:9px/1.6 Arial,sans-serif;letter-spacing:1px;margin-top:6px}.door-hours{position:absolute;left:8%;bottom:8%;font:10px/2 Arial,sans-serif;letter-spacing:2px;color:#e8dfd8;transform:rotate(2deg)}.door-handle{position:absolute;right:7%;top:41%;height:17%;width:12px;border:2px solid #c3b9ad;border-radius:7px;background:linear-gradient(90deg,#393333,#e2dbce 45%,#50423e);box-shadow:5px 3px 7px #000a;transform:translateZ(14px)}.door-handle:before,.door-handle:after{content:'';position:absolute;width:24px;height:6px;background:#7c7068;left:-7px}.door-handle:before{top:4px}.door-handle:after{bottom:4px}.door-bottom{position:absolute;bottom:0;left:0;right:0;height:20%;border-top:12px solid #211a19;background:repeating-linear-gradient(90deg,#111 0 20px,#201b19 21px 23px);box-shadow:inset 0 0 0 2px #45342f}.door-threshold{position:absolute;bottom:-18px;left:-22px;right:-22px;height:18px;background:linear-gradient(#9a8980,#201a19);box-shadow:0 6px 30px #000}.pov-hand{position:absolute;right:20%;bottom:-54%;width:clamp(140px,20vw,290px);height:65%;transform-origin:70% 100%;opacity:0;filter:blur(.5px) brightness(.7);pointer-events:none;will-change:transform,opacity}.pov-hand svg{width:100%;height:100%;overflow:visible}.pov-dust{position:absolute;inset:0;opacity:0;background-image:radial-gradient(#fff8 1px,transparent 2px),radial-gradient(#e1bba780 1px,transparent 2px);background-size:183px 227px,271px 193px;background-position:20px 40px,90px 20px;pointer-events:none;mix-blend-mode:screen}.entrance-caption{position:absolute;bottom:10%;left:0;right:0;height:32px;z-index:3;text-align:center;color:#f5f5f1;letter-spacing:6px;font-size:13px;text-shadow:0 2px 10px #000}.entry-step{position:absolute;inset:0;opacity:0}.intro-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#fff2;z-index:3}.intro-progress span{display:block;height:100%;width:100%;background:#8b1727;transform:scaleX(0);transform-origin:left}.entrance-skip{position:absolute;top:105px;left:5vw;z-index:4;font-size:11px}.hero .hero-copy{opacity:1}.hero:after{z-index:1;opacity:.3}.hero:before{z-index:2}.entrance-running .pov-interior{animation:storeApproach var(--intro-duration) cubic-bezier(.3,0,.2,1) both}.entrance-running .entry-portal{animation:crossThreshold var(--intro-duration) cubic-bezier(.4,0,.2,1) both}.entrance-running .door-leaf{animation:pushDoor var(--intro-duration) ease-in-out both}.entrance-running .pov-hand{animation:pushHand var(--intro-duration) ease-in-out both}.entrance-running .pov-camera{animation:footsteps var(--intro-duration) ease-in-out both}.entrance-running .pov-dust{animation:dustReveal var(--intro-duration) linear both}.entrance-running .hero-copy{animation:arrivalTitle var(--intro-duration) ease both}.entrance-running .hero-counter{animation:arrivalTitle var(--intro-duration) ease both}.entrance-running .step-one{animation:stepOne var(--intro-duration) linear both}.entrance-running .step-two{animation:stepTwo var(--intro-duration) linear both}.entrance-running .step-three{animation:stepThree var(--intro-duration) linear both}.entrance-running .intro-progress span{animation:introProgress var(--intro-duration) linear both}.entrance-running .entrance-skip{animation:skipFade var(--intro-duration) linear both}.entrance-skip-done .entry-portal,.entrance-skip-done .pov-hand,.entrance-skip-done .entrance-caption,.entrance-skip-done .intro-progress,.entrance-skip-done .entrance-skip{display:none!important}.entrance-skip-done .pov-interior{animation:none!important;transform:scale(1.3) translateX(-1%);filter:brightness(.75)}.entrance-skip-done .pov-camera,.entrance-skip-done .hero-copy,.entrance-skip-done .hero-counter{animation:none!important;opacity:1;transform:none}.hero .hero-copy{z-index:3}.replay{z-index:4}
@keyframes pushDoor{0%,12%{transform:rotateY(0)}19%{transform:rotateY(-6deg)}37%{transform:rotateY(-82deg)}49%,100%{transform:rotateY(-107deg)}}
@keyframes crossThreshold{0%,12%{transform:scale(1) translateY(0);opacity:1}30%{transform:scale(1.04) translateY(0);opacity:1}48%{transform:scale(1.65) translateY(-1%);opacity:1}60%{transform:scale(3.6) translateY(-2%);opacity:1}67%,100%{transform:scale(4.6) translateY(-2%);opacity:0;visibility:hidden}}
@keyframes storeApproach{0%,12%{transform:scale(1);filter:brightness(.55)}37%{transform:scale(1.03);filter:brightness(.78)}56%{transform:scale(1.14) translateX(-.4%);filter:brightness(.9)}75%{transform:scale(1.27) translateX(-1%);filter:brightness(.95)}100%{transform:scale(1.3) translateX(-1%);filter:brightness(.75)}}
@keyframes pushHand{0%,9%{transform:translate(20%,45%) rotate(13deg);opacity:0}15%{opacity:1;transform:translate(0,-62%) rotate(-8deg)}20%,28%{opacity:1;transform:translate(-10%,-70%) rotate(-13deg)}39%{opacity:1;transform:translate(-37%,-59%) rotate(-23deg)}47%,100%{opacity:0;transform:translate(-40%,40%) rotate(-27deg)}}
@keyframes footsteps{0%,37%{transform:translateY(0) rotate(0)}43%{transform:translateY(-4px) rotate(-.18deg)}49%{transform:translateY(2px) rotate(.15deg)}55%{transform:translateY(-5px) rotate(-.12deg)}61%{transform:translateY(2px) rotate(.12deg)}68%{transform:translateY(-3px) rotate(-.08deg)}76%,100%{transform:none}}
@keyframes dustReveal{0%,45%{opacity:0;transform:translateY(0)}65%{opacity:.25}100%{opacity:.1;transform:translate(-18px,-30px)}}
@keyframes arrivalTitle{0%,75%{opacity:0;transform:translateY(20px)}91%,100%{opacity:1;transform:translateY(0)}}
@keyframes stepOne{0%,8%{opacity:0}14%,29%{opacity:1}36%,100%{opacity:0}}
@keyframes stepTwo{0%,38%{opacity:0}44%,57%{opacity:1}64%,100%{opacity:0}}
@keyframes stepThree{0%,62%{opacity:0}69%,76%{opacity:1}82%,100%{opacity:0}}
@keyframes introProgress{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}
@keyframes skipFade{0%,90%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}
@media(max-width:650px){.door-assembly{left:8%;width:84%;border-width:15px;top:-3%;height:113%}.door-transom span{font-size:25px}.door-transom small{font-size:9px;letter-spacing:2px}.pov-hand{right:8%;width:180px;height:62%}.door-sticker{font-size:25px;padding:10px}.entrance-caption{font-size:11px;letter-spacing:3px}.entrance-skip{top:85px;left:6vw}.hero .replay{top:85px;right:6vw}.pov-interior{background-position:55% 50%}.hero .hero-copy h1{font-size:clamp(42px,10.8vw,58px)}.hero{min-height:690px}}
@media(prefers-reduced-motion:reduce){.entry-portal,.pov-hand,.entrance-caption,.intro-progress,.entrance-skip{display:none!important}.pov-interior{filter:brightness(.7);transform:scale(1.1)}.hero .hero-copy,.hero .hero-counter{opacity:1!important;transform:none!important}}
/* V29: white feline paw, neutral fur highlights, oxblood punk storefront. */
.pov-hand{filter:drop-shadow(7px 9px 10px #0009) brightness(.98);width:clamp(150px,21vw,300px)}
.door-assembly{border-color:#101010;border-bottom-color:#3b3b3b;box-shadow:0 0 0 100vmax #080808,0 0 35px #000,inset 0 0 0 2px #a3a3a3}
.door-transom{background:#080808;border-bottom-color:#8b1727}.door-leaf{border-color:#101010;box-shadow:inset 0 0 0 2px #7e7e7e,6px 0 10px #0009}.door-glass{border-color:#929292;background:linear-gradient(115deg,#fff1 5%,#fff2 12%,transparent 35%,#fff1 80%,transparent)}.door-sticker{background:#f5f5f1;color:#080808;box-shadow:5px 5px 0 #8b1727}.door-hours{color:#fff}.door-bottom{border-color:#101010;background:repeating-linear-gradient(90deg,#080808 0 20px,#252525 21px 23px);box-shadow:inset 0 0 0 2px #8b1727}.door-threshold{background:linear-gradient(#c6c6c6,#171717)}
/* V30: photographic black fur paw, with genuine transparent silhouette. */
.pov-hand{filter:drop-shadow(4px 7px 10px #0008) brightness(1.18);width:clamp(150px,21vw,300px)}
.pov-paw-photo{width:100%;height:100%;display:block;object-fit:contain;pointer-events:none;user-select:none;background:transparent}

/* V32: full-height character stage, common floor plane and perspective. */
.staff-stage{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden;transform-origin:52% 50%;isolation:isolate}.entry-portal{z-index:3}.pov-hand{z-index:4}.pov-dust{z-index:2}.staff-body{position:absolute;transform-origin:50% 97.65%;z-index:3;filter:drop-shadow(-3px 0 2px #f4e0dd25) drop-shadow(5px 1px 5px #0008);will-change:transform;transition:filter .4s}.staff-pose{position:absolute;inset:0;background-repeat:no-repeat;background-size:400% 200%;background-position:0 0}.staff-pose.current{z-index:1}.staff-floor-shadow{position:absolute;z-index:1;height:26px;border-radius:50%;background:radial-gradient(ellipse,#000e 0%,#0009 35%,transparent 72%);transform:translate(-50%,-65%) skewX(-20deg);filter:blur(6px)}.staff-stock{position:absolute;z-index:2;aspect-ratio:1.25;background:linear-gradient(145deg,#262222,#080808);border:1px solid #b6a4a7;box-shadow:10px 12px 12px #0008;transform:perspective(500px) rotateY(-18deg) skewY(-4deg);padding:12px 6px 5px;color:#fff;text-align:center;font:900 9px/1.7 Arial}.staff-stock small{display:block;font:6px Arial;letter-spacing:1px;color:#d5c2c5}.stock-vinyl{position:absolute;left:15%;top:-30%;width:65%;aspect-ratio:1;border:2px solid #8b1727;background:repeating-radial-gradient(circle,#111 0 3px,#333 4px,#080808 5px);background-size:cover;transform:rotate(-8deg);z-index:-1}.staff-stage[data-action=restock] .stock-vinyl{animation:staffRestock 2s ease-in-out infinite}.staff-stage[data-action=idle] .staff-body{animation:staffBreath 4s ease-in-out infinite}.staff-stage[data-action=yawn] .staff-body{animation:staffYawn 4.5s ease-in-out infinite}.staff-loading .staff-body,.staff-loading .staff-floor-shadow{visibility:hidden}.staff-paused *{animation-play-state:paused!important}
.entrance-running .staff-stage{animation:staffArrival var(--intro-duration) ease-out both}.entrance-skip-done .staff-stage{animation:none;opacity:1;transform:none}
.clerk-card{position:absolute;top:145px;left:5vw;right:auto;z-index:5;width:238px;color:#f5f5f1;background:#090909e8;border:1px solid #fff5;border-left:4px solid #8b1727;padding:14px 16px;backdrop-filter:blur(7px);box-shadow:5px 5px 0 #0005}.clerk-kicker{font:9px Arial;letter-spacing:2px;color:#bcb3b5}.clerk-name{font-size:24px;font-weight:900;margin-top:3px;line-height:1.35}.clerk-height{font:10px Arial;color:#c8bcc0;margin-top:4px}.hero .clerk-status{font:11px/1.6 Arial,sans-serif;min-height:35px;margin:10px 0;color:#eee}.staff-buttons{display:flex;flex-wrap:wrap;gap:7px 13px;align-items:center}.staff-buttons button,.clerk-roster summary{font:10px/1.5 Arial,sans-serif;color:#fff;cursor:pointer;background:transparent;border:0;padding:3px 0;text-decoration:underline;text-underline-offset:4px}.staff-buttons .staff-greet{color:#fff;background:#8b1727;padding:6px 10px;text-decoration:none}.staff-buttons .staff-view{flex-basis:100%;text-align:left;color:#d1c3c7}.clerk-roster{margin-top:8px}.clerk-roster summary{list-style:revert;text-decoration:none}.clerk-roster ol{position:absolute;left:0;top:100%;width:270px;margin:4px 0 0;padding:12px;list-style:none;background:#080808f7;border:1px solid #fff5}.clerk-roster li{display:grid;grid-template-columns:1fr 1fr 60px;gap:7px;padding:4px 8px;font-size:11px}.clerk-roster .on-duty{background:#8b1727}.clerk-roster small{font-size:10px;text-align:right}.clerk-preview,.staff-action-preview{display:block;padding-top:8px;margin-top:8px;border-top:1px solid #555;font-size:10px}.clerk-preview select,.staff-action-preview select{display:block;width:100%;margin-top:5px;background:#fff;color:#111;font-size:12px;padding:6px}.hero .hero-copy{max-width:43%;left:5vw;right:auto;bottom:9%;transition:opacity .4s,transform .4s}.hero .hero-copy h1{font-size:clamp(42px,5.2vw,76px)}.hero.staff-focused .hero-copy{opacity:0!important;transform:translateY(20px);pointer-events:none;animation:none}.hero.staff-focused:after{opacity:.12}.hero .hero-counter{display:none}.hero{min-height:790px}
@keyframes staffPoseBlend{from{opacity:0}to{opacity:1}}
@keyframes staffBreath{0%,100%{filter:drop-shadow(4px 2px 5px #0008) brightness(.96)}50%{filter:drop-shadow(4px 2px 5px #0008) brightness(1.02)}}
@keyframes staffYawn{0%,100%{filter:brightness(.97)}45%{filter:brightness(1.04)}}
@keyframes staffRestock{0%,100%{transform:translate(-8px,-15px) rotate(-11deg)}75%{transform:translate(5px,12px) rotate(2deg)}}
@keyframes staffArrival{0%,25%{opacity:0;transform:scale(.77)}40%{opacity:1}100%{opacity:1;transform:scale(1)}}
@media(max-width:800px){.hero{height:960px;min-height:960px}.hero .hero-copy{max-width:88%;bottom:4%;left:6vw;right:6vw}.hero .hero-copy h1{font-size:clamp(36px,9vw,54px)}.clerk-card{top:144px;left:6vw;width:174px;padding:11px 12px}.clerk-name{font-size:19px}.hero .clerk-status{font-size:10px;line-height:1.5;margin:7px 0;min-height:30px}.clerk-kicker{font-size:8px;letter-spacing:1.5px}.clerk-height{font-size:9px}.staff-buttons{gap:5px 10px}.staff-buttons button,.clerk-roster summary{font-size:9px}.clerk-roster ol{width:245px}.staff-floor-shadow{height:17px}.hero .replay{top:88px}.staff-stock{font-size:7px}.staff-stock small{font-size:5px}}
@media(prefers-reduced-motion:reduce){.staff-stage,.staff-stage *{animation:none!important}.staff-stage{opacity:1;transform:none}}
@keyframes staffPoseOut{from{opacity:1}to{opacity:0}}
@media(max-width:800px){.hero{height:1240px;min-height:1240px}.hero .hero-copy{top:830px;bottom:auto}.hero .hero-copy h1{font-size:clamp(34px,9vw,54px)}}
@media(max-width:360px){.hero{height:1320px;min-height:1320px}}
/* On phones the shop keeps its own floor geometry; copy continues beneath it. */
@media(max-width:800px){.hero{height:1410px;min-height:1410px}.hero .entrance-scene{height:960px;bottom:auto}.hero .hero-copy{top:1000px}.hero:after{background:linear-gradient(0deg,#080808 0%,#08080800 35%),linear-gradient(90deg,#0005,transparent 85%)}}
@media(max-width:360px){.hero{height:1490px;min-height:1490px}}

.artist-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.artist-card{min-width:0}.artist-portrait{height:560px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#8b172750,transparent 65%),#111;border-bottom:3px solid var(--accent);touch-action:pan-y}.artist-portrait img{width:100%;height:100%;object-fit:contain;transform-origin:var(--ax,50%) var(--ay,35%);transition:transform .18s ease-out;pointer-events:none}.artist-portrait.artist-active img,.artist-portrait:focus-visible img{transform:scale(1.65)}.artist-portrait span{position:absolute;bottom:16px;left:18px;background:#080808d9;padding:6px 10px;font-size:10px;letter-spacing:2px;pointer-events:none}.artist-card p{white-space:pre-wrap}.artist-card h3{font-size:28px}@media(max-width:650px){.artist-grid{grid-template-columns:1fr}.artist-portrait{height:480px}}@media(prefers-reduced-motion:reduce){.artist-portrait img{transition:none;transform:none!important}}

/* V42: 2x transparent pet enlargement; no panels, borders, or shadows. */
.pet-portrait{touch-action:auto;cursor:zoom-in}
.pet-portrait:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.pet-portrait.pet-zoom-active img{visibility:hidden}
.pet-zoom{position:fixed;z-index:10000;pointer-events:none;box-sizing:border-box;background:transparent;border:0;box-shadow:none;padding:0}
.pet-zoom img{width:100%;height:100%;object-fit:contain;object-position:center}

/* V43: item profiles and video captions honour authored newlines and colours. */
.pet p.profile-description,.artist-card p.profile-description{text-align:left!important;white-space:pre-wrap;overflow-wrap:anywhere;color:inherit}
.video-description{text-align:left;white-space:pre-wrap;overflow-wrap:anywhere}
.video-date{display:block;margin-top:8px;font-size:.9em}
.description-color-controls{padding:10px 0;border-top:1px solid #555}
.description-color-controls input[type=color]{display:block;width:70px;height:40px;padding:3px}
.staff-listening-pose{position:absolute;inset:0;z-index:2;background-repeat:no-repeat;background-size:200% 200%;visibility:hidden;pointer-events:none}
.staff-body[data-action=listen] .staff-listening-pose{visibility:visible}
.staff-body[data-action=listen] .staff-pose{visibility:hidden}
.staff-listen-toggle[aria-pressed=true]{background:#8b1727;color:#fff}

/* V44: transparent music notes drift from the headphones while listening. */
.staff-music-notes{position:absolute;inset:0;z-index:4;display:none;pointer-events:none;user-select:none;overflow:visible}
.staff-body[data-action=listen] .staff-music-notes{display:block}
.staff-music-notes span{position:absolute;top:17%;left:8%;font-family:Georgia,"Times New Roman",serif;font-size:clamp(20px,3.8vw,38px);font-weight:bold;line-height:1;color:#ffd98a;text-shadow:0 1px 4px #000a;opacity:0;--drift:-40px;--tilt:-18deg;animation:staffMusicDrift 3s linear infinite both}
.staff-music-notes span:nth-child(2){left:83%;top:21%;color:#f5a9b8;--drift:42px;--tilt:16deg;animation-delay:-.5s}
.staff-music-notes span:nth-child(3){left:3%;top:23%;color:#b8e6f5;--drift:-56px;--tilt:-12deg;animation-delay:-1s}
.staff-music-notes span:nth-child(4){left:88%;top:16%;--drift:54px;--tilt:22deg;animation-delay:-1.5s}
.staff-music-notes span:nth-child(5){left:12%;top:18%;color:#f5a9b8;--drift:-30px;--tilt:-24deg;animation-delay:-2s}
.staff-music-notes span:nth-child(6){left:79%;top:24%;color:#b8e6f5;--drift:34px;--tilt:12deg;animation-delay:-2.5s}
@keyframes staffMusicDrift{0%{opacity:0;transform:translate(0,5px) rotate(0) scale(.7)}15%{opacity:.95}70%{opacity:.8}100%{opacity:0;transform:translate(var(--drift),-86px) rotate(var(--tilt)) scale(1.15)}}
@media(prefers-reduced-motion:reduce){.staff-music-notes span{animation:none!important;opacity:.85;transform:none}.staff-music-notes span:nth-child(n+3){display:none}}
