/* V3.5 / 3503. Keep the illustrated V3.4 garden; refine its physical UI. */
:root{--paper:#fff6df;--ink:#30462d;--ui-font:'Be Vietnam Pro',sans-serif;--wood-sign:url('./art-v35/menu-sign.webp')}
button,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid #dbb962;outline-offset:3px}
.hud{inset:12px 22px auto;align-items:flex-start;pointer-events:none;z-index:40}.hud>*{pointer-events:auto}
.plaque,body.night .plaque{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:260px;height:112px;padding:24px 26px 12px 36px;border:0;box-shadow:none;border-radius:0;background:var(--wood-sign) center/100% 100% no-repeat;color:#34271d;cursor:pointer;filter:drop-shadow(2px 5px 2px #122a2055);transform-origin:50% 5%;transition:rotate .2s}
.plaque:before,.plaque:after{display:none}.plaque:hover{rotate:-1deg}.plaque b{font:italic 700 25px Georgia,serif;color:#2f3e25;text-shadow:0 1px #f6dc9f}.plaque small,body.night .plaque small{display:block;font:600 8px var(--ui-font);letter-spacing:.15em;color:#553d22;margin-top:7px}.plaque small span{font-size:14px;display:inline-block;transition:rotate .2s}.plaque[aria-expanded=true] small span{rotate:180deg}
.tools{display:flex;gap:4px;align-items:center;padding:6px;background:#fff5dce8;border:4px ridge #987043;box-shadow:3px 5px #26352255;border-radius:4px;margin-top:18px}.clock,body.night .clock{position:static;display:flex;flex-direction:column;justify-content:center;gap:3px;height:44px;min-width:85px;padding:3px 12px;border:0;border-right:1px solid #b7a27c;box-shadow:none;background:transparent;color:#34462e}.clock time{font:700 16px Georgia,serif}.clock small{font:9px var(--ui-font);color:#6b7052}.tools button.sq,body.night .tools button.sq{width:44px;height:44px;border:0;box-shadow:none;color:#3d5033;background:transparent}.tools button.sq:hover{background:#e2d5ae}#weather{display:none}
.menu,body.at-stall .menu,body.in-room .menu{display:block;position:fixed;left:36px;top:115px;bottom:auto;width:235px;max-width:none;margin:0;transform:none;z-index:39;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .16s}
.menu[data-expanded=true]{visibility:visible;opacity:1;pointer-events:auto}.menu-row,body.night .menu-row{display:flex;flex-direction:column;gap:12px;padding:0;background:none;border:0;box-shadow:none;backdrop-filter:none;border-radius:0;overflow:visible;clip-path:none}.menu-row:before,.menu-row:after{display:none}
.mbtn,.mbtn[data-id=aulinh]{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;column-gap:8px;align-content:center;align-items:center;flex:none;width:100%;height:62px;min-height:62px;margin:0;padding:8px 22px 8px 28px;background:linear-gradient(0deg,#77502a0d,#fff1bf22),repeating-linear-gradient(0deg,#a97438 0 2px,#bb8847 2px 3px,#bb8847 3px 14px);border:3px ridge #886034;border-radius:4px;box-shadow:2px 4px 0 #422a17,0 8px 9px #152d2155;position:relative;text-align:left;color:#fff2c8;transform-origin:50% -12px}
.mbtn:before{content:''!important;display:block!important;position:absolute;left:30px;right:30px;top:-17px;height:14px;border-left:3px double #d8bb7c;border-right:3px double #d8bb7c;pointer-events:none}.mbtn:after{content:'';position:absolute;inset:5px;border:1px solid #ecc68266;pointer-events:none}.mbtn img.menu-icon{grid-row:1/3;grid-column:1;width:43px;height:43px;object-fit:contain;image-rendering:auto;filter:drop-shadow(1px 2px 1px #37240f77)}.mbtn span{font:700 16px Georgia,serif;grid-column:2;opacity:1;color:#fff5d4;text-shadow:0 1px #64431c}.mbtn small{font:9px var(--ui-font);grid-column:2;color:#f4dfae;margin-top:4px}.mbtn:hover,.mbtn:focus-visible{translate:none;rotate:-1deg;background-color:#d9b577;transform:none}.mbtn[aria-current=location]{background:#e3c78e;color:#29422d;box-shadow:2px 4px #543b22,0 0 0 2px #f9d98c}.mbtn[aria-current=location] span,.mbtn[aria-current=location] small{color:#34462a;text-shadow:none}.menu[data-expanded=true] .mbtn{animation:sign-arrive .3s both;animation-delay:calc(var(--i,0)*30ms)}@keyframes sign-arrive{from{opacity:0;transform:translateY(-12px) rotateX(-20deg)}to{opacity:1;transform:none}}
body.at-stall .hud,body.in-room .hud{display:flex;visibility:visible;opacity:1}body.at-stall #return-garden,body.in-room #return-garden{display:none}.nav-more{display:none}
#return-garden{top:auto;right:auto;left:24px;bottom:22px;min-height:44px;background:#fff5d9;border:3px ridge #916e40;box-shadow:2px 4px #382d2255;color:#34442a}.mini-player{bottom:65px}.settings{z-index:45;top:100px;max-height:calc(100dvh - 130px);overflow:auto}
/* Physical stall: original artwork, raised sign, awning, player resting on the counter. */
.v34-shop{filter:drop-shadow(0 12px 9px #19271955)}.v34-shop .st-sign{filter:drop-shadow(2px 5px 2px #38220c55);transform:rotate(-2deg);transform-origin:50% 0}.shop-awning{display:none}.shop-machine{position:absolute;left:11%;top:64%;width:21%;height:18%;object-fit:contain;z-index:5;filter:drop-shadow(1px 6px 2px #23190f66);pointer-events:none}.v34-shop[data-media=vinyl] .shop-machine{display:none}.v34-shop:not([data-media=vinyl]) .shop-disc{visibility:hidden}.v34-shop .now-cover,.v34-shop[data-media=cassette] .now-cover,.v34-shop[data-media=cd] .now-cover{border:0;border-radius:0;aspect-ratio:1;object-fit:contain;box-shadow:2px 3px 5px #5f4b3033;transform:rotate(2deg)}.v34-shop .album-stage{overflow:visible;contain:none}.v34-shop .li-avatar img{image-rendering:auto}.v34-shop .li-quote{font:italic 12px/1.35 Georgia,serif;min-height:44px}.v34-shop .st-close{min-width:44px;min-height:44px}.v34-shop .theme-picker button{min-height:44px}.v34-shop .theme-picker img{width:46px;height:35px;image-rendering:auto}.v34-shop .sound-mix select{min-height:38px}
@media(min-width:761px){.v34-shop{top:108px;height:min(calc(100dvh - 174px),774px);width:min(1200px,calc((100dvh - 174px)*1.55),calc(100vw - 36px));bottom:auto}.v34-shop .shop-awning{display:block;position:absolute;top:5%;left:29%;width:63%;height:10%;object-fit:fill;z-index:2;filter:drop-shadow(0 5px 2px #50361855)}.v34-shop .st-ribbon{top:25%}.v34-shop .album-stage{height:clamp(160px,22vh,230px)}}
/* Gallery: compact natural-aspect photographs, an album shelf rather than giant book pages. */
.room.hammock,.room.cine{inset:125px max(22px,calc((100vw - 1240px)/2)) 64px;background:#f9eed5;border:8px ridge #977144;box-shadow:0 14px 32px #15251d70;border-radius:4px}
.room.hammock>.st-shade,.room.cine>.st-shade{position:absolute;inset:0;background:linear-gradient(90deg,#a7873d15,transparent 7%,transparent 93%,#a7873d15);backdrop-filter:none;z-index:-1}
.room.hammock .st-head,.room.cine .st-head{inset:0 0 auto;height:115px;padding:12px 22px 8px;background:#6a492b;border-bottom:5px ridge #ad8a51;grid-template-columns:260px 1fr;grid-template-rows:1fr;gap:25px;align-items:center}
.room.hammock .st-sign,.room.cine .st-sign{width:260px;height:100px;padding:29px 22px 15px 34px;box-sizing:border-box;background:var(--wood-sign) center/100% 100% no-repeat;filter:drop-shadow(2px 4px 2px #38220c55);align-self:center;position:relative;top:-11px}.room .st-sign>small{display:none}.room.hammock .st-sign h2,.room.cine .st-sign h2{font:italic 700 25px Georgia,serif;color:#354126;text-align:center;white-space:nowrap}.room.hammock .st-pills,.room.cine .st-pills{grid-column:2;grid-row:1;align-self:end;margin:0 44px 8px 0;gap:6px}.room.hammock .pill,.room.cine .pill{background:#4f3926;border:1px solid #b9945a;min-height:44px;color:#f8ebc7}.room.hammock .pill[aria-pressed=true],.room.cine .pill[aria-pressed=true]{background:#f1dfad;color:#354529}.room.hammock .st-close,.room.cine .st-close{top:18px;right:14px;width:44px;height:44px}.room.hammock .room-body,.room.cine .room-body{top:132px;bottom:18px;left:20px;right:20px}
.room.hammock .room-body{display:block;overflow:auto;padding:0 6px 20px}.album-intro{color:#3e5136;padding:0 4px 17px;align-items:end}.album-intro small{color:#8c7953;font-size:8px}.album-intro h3{font-size:20px}.memory-grid{columns:5;column-gap:14px}.memory-photo{display:block;break-inside:avoid;width:100%;padding:5px 5px 0;margin:0 0 14px;border:1px solid #d5c69f;border-radius:3px;background:#fffdf2;box-shadow:1px 3px 5px #624d2722;cursor:pointer;transition:translate .18s}.memory-photo:hover{translate:0 -3px;box-shadow:1px 5px 10px #624d2733}.memory-photo img{display:block;width:100%;height:auto;max-width:100%;border-radius:1px}.memory-photo>span{display:flex;justify-content:space-between;padding:9px 4px;color:#686a4d;font:italic 11px Georgia,serif}.memory-photo small{font:9px var(--ui-font);color:#a0916d}
/* Cinema: full bamboo structure, cloth underlay and feathered projection. */
.room.cine{background:#172c22}.room.cine>.st-shade{background:radial-gradient(ellipse at 33% 30%,#e5c98712,transparent 70%)}.room.cine .room-body{grid-template-columns:minmax(0,1fr) 255px;gap:10px 18px;grid-template-rows:minmax(0,1fr) auto}.room.cine .projection{aspect-ratio:3/2;max-height:none;align-self:center;background-size:contain;overflow:visible;border-radius:0;isolation:isolate;filter:drop-shadow(0 8px 5px #070c0966)}.room.cine .projection .screen{inset:11% 11% 32%;opacity:.91;background:#e9ddbf;mix-blend-mode:multiply;mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent),linear-gradient(to bottom,transparent,#000 5%,#000 95%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in;filter:blur(.25px);overflow:hidden}.room.cine .screen iframe{width:100%;height:100%;border:0;display:block}.room.cine .film-start{background:radial-gradient(ellipse,#e9d7a8,#bba273);color:#253d2c}.film-start small{color:#4e6549}.film-start>span{border-color:#4e6549}.room.cine .now-film{padding:0 8px 6px;max-height:115px}.now-film h3{font-size:20px}.room.cine .ticket{min-height:92px}.room.cine .ticket-shelf>header b{font-size:19px}
.room.cine.theater-mode{position:fixed;inset:0;border:0;background:#07120c;z-index:60}.room.cine.theater-mode .st-head,.room.cine.theater-mode .ticket-shelf,.room.cine.theater-mode .now-film{display:none}.room.cine.theater-mode .room-body{inset:0;display:grid;place-items:center}.room.cine.theater-mode .projection{width:min(100vw,150dvh);max-width:none;max-height:none;aspect-ratio:3/2;grid-area:auto;transform:none;background-size:contain}.room.cine.theater-mode .projection .screen{inset:11% 11% 32%;width:auto;height:auto;max-width:none;aspect-ratio:auto}.theater-exit{z-index:62}.room.house{top:125px;bottom:68px}.room .st-close{min-height:44px;min-width:44px}.room-status{padding:30px;font:16px Georgia,serif}.feature-status{position:fixed;z-index:50;top:130px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);padding:18px;background:#fff6df;border:4px ridge #987043;color:#30462d}.feature-status button{min-height:44px;background:#e9dcb9;border:1px solid #927345;padding:8px}
@media(max-width:1100px){.memory-grid{columns:4}.room.cine .room-body{grid-template-columns:minmax(0,1fr) 220px}}
@media(max-width:760px){
 .hud{inset:4px 8px auto;gap:2px}.plaque,body.night .plaque{width:174px;height:80px;flex:none;padding:20px 15px 10px 22px}.plaque b{font-size:18px}.plaque small,body.night .plaque small{font-size:6px;margin-top:3px}.tools{margin-top:16px;padding:2px;border-width:3px;gap:0}.clock,body.night .clock{min-width:49px;padding:2px 4px}.clock time{font-size:12px}.clock small{max-width:50px;overflow:hidden;font-size:7px;white-space:nowrap}.tools button.sq{width:44px;min-width:44px}.tools #outfit,.tools #wide,#np{display:none}.menu,body.at-stall .menu,body.in-room .menu{left:20px;top:83px;width:225px;max-height:calc(100dvh - 95px);overflow:auto;padding:8px 8px 14px;box-sizing:content-box}.menu-row{gap:10px}.mbtn,.mbtn[data-id=aulinh]{height:60px;min-height:60px;grid-column:auto}.mbtn img.menu-icon{width:43px;height:43px}.mbtn span{font-size:15px}.mbtn small{display:block;font-size:9px}.mbtn:nth-child(n+5){grid-column:auto}
 .v34-shop{inset:90px 8px 64px!important;padding:14px 16px 24px;border:6px ridge #956438;border-radius:4px;background:#fff7df}.v34-shop .st-head{padding-top:25px}.v34-shop .shop-awning{display:block;position:absolute;left:0;top:0;width:100%;height:44px;object-fit:fill;z-index:2;pointer-events:none;filter:drop-shadow(0 4px 1px #4e321f44)}.v34-shop .st-sign{width:205px;max-width:75%;z-index:3}.v34-shop .st-close{z-index:5;top:30px}.v34-shop .album-stage{height:250px;max-width:340px;margin:0 auto}.v34-shop .li-quote{font-size:14px}.v34-shop .shop-machine{position:relative;inset:auto;order:3;align-self:center;width:155px;height:112px;margin:6px 0}.v34-shop .theme-picker{flex-wrap:nowrap;gap:2px}.v34-shop .theme-picker button{flex-direction:column;font-size:11px;flex:1;min-height:60px;padding:3px}.v34-shop .theme-picker img{width:49px;height:36px}.v34-shop .st-list{max-height:240px}.v34-shop .sound-mix select{min-height:44px}.v34-shop .st-line{max-height:none;overflow:visible}
 .room.hammock,.room.cine,.room.house{inset:94px 8px 64px!important;border-width:5px}.room.hammock .st-head,.room.cine .st-head{height:133px;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0 12px 9px}.room.hammock .st-sign,.room.cine .st-sign{width:215px;height:85px;top:-13px;padding:27px 18px 10px 28px;align-self:flex-start;flex:none}.room.hammock .st-sign h2,.room.cine .st-sign h2{font-size:22px}.room.hammock .st-pills,.room.cine .st-pills{position:relative;inset:auto;margin:-9px 0 0;min-height:44px;flex:none;align-self:stretch}.room.hammock .pill,.room.cine .pill{font-size:12px;padding:8px 12px}.room.hammock .st-close,.room.cine .st-close{top:16px;right:10px}.room.hammock .room-body,.room.cine .room-body{inset:149px 10px 10px}.album-intro{padding:0 2px 13px;gap:8px}.album-intro small{font-size:6px;letter-spacing:.08em}.album-intro h3{font-size:16px}.album-intro>span{font-size:10px}.memory-grid{columns:2;column-gap:10px}.memory-photo{margin-bottom:10px;padding:4px 4px 0}.memory-photo>span{font-size:10px;padding:7px 2px}.room.cine .room-body{display:flex;flex-direction:column;overflow:auto;gap:12px}.room.cine .projection{width:100%;height:auto;flex:none;aspect-ratio:3/2}.room.cine .now-film{max-height:none;flex:none}.room.cine .ticket-shelf{flex:none;max-height:420px}.room.cine .tickets{max-height:350px}.film-start{padding:10px;gap:5px}.film-start small{font-size:6px}.film-start b{font-size:16px}.film-start>span{height:30px;width:30px;font-size:12px}.film-start em{font-size:10px}.room.cine.theater-mode{inset:0!important}.room.cine.theater-mode .room-body{inset:0;display:grid}.room.cine.theater-mode .projection{width:min(100vw,150dvh);height:auto}.settings{inset:88px 10px auto;max-height:calc(100dvh - 110px)}#return-garden{left:12px;bottom:15px}.mini-player{bottom:70px}.stick{bottom:100px}.feature-status{top:95px}#bubble{max-width:230px}.room .lightbox{z-index:65}
}
@media(prefers-reduced-motion:reduce){.mbtn,.plaque{animation:none!important;transition:none}}.reduce-motion .mbtn{animation:none!important}
/* The generated timber is an open frame: parchment is a separate recessed surface. */
.plaque,.room.hammock .st-sign,.room.cine .st-sign{isolation:isolate;background-image:none}
.plaque:before,.room.hammock .st-sign:before,.room.cine .st-sign:before{content:'';display:block;position:absolute;inset:24% 8% 13% 12%;background:#ead5a3;box-shadow:inset 1px 3px 8px #50371555;z-index:-2}
.plaque:after,.room.hammock .st-sign:after,.room.cine .st-sign:after{content:'';display:block;position:absolute;inset:0;background:var(--wood-sign) center/100% 100% no-repeat;z-index:-1;pointer-events:none}
.plaque b,.plaque small{position:relative;z-index:1}.plaque b{font-size:24px}.plaque small{margin-top:3px}
@media(max-width:760px){.plaque b{font-size:17px}.plaque small{font-size:6px}}
body .menu[data-expanded=true]{visibility:visible;opacity:1;pointer-events:auto}
.room.hammock .st-head,.room.cine .st-head{background:repeating-linear-gradient(0deg,#724d29 0 2px,#795631 2px 4px,#73502d 4px 18px);box-shadow:inset 0 -4px 8px #33231144,inset 0 2px #c39a5d88}
body.in-room:has(.theater-mode) .hud,body.in-room:has(.theater-mode) .menu,body.in-room:has(.theater-mode) #menu-pets{display:none}
@media(max-width:760px){.room.hammock .st-head,.room.cine .st-head{flex-wrap:nowrap}.room.hammock .st-pills,.room.cine .st-pills{width:100%;max-width:100%;min-width:0;flex:0 0 44px;align-self:stretch}}
/* Keep the projected video itself 16:9, so the feather meets the film, not iframe letterboxing. */
.room.cine .projection .screen,.room.cine.theater-mode .room-body.cine .projection .screen{position:absolute;left:16%;right:16%;top:11%;bottom:auto;width:auto;height:auto;aspect-ratio:16/9;transform:none;mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent),linear-gradient(to bottom,transparent,#000 8%,#000 92%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
/* PixelLab 688px painted boards: actual grain, carved edges, screws and rope. */
.menu-row,body.night .menu-row{gap:3px}.mbtn,.mbtn[data-id=aulinh],.mbtn:hover,.mbtn:focus-visible,.mbtn[aria-current=location]{height:75px;min-height:75px;padding:17px 24px 9px 25px;border:0;box-shadow:none;border-radius:0;background:url('./art-v35/menu-board.webp') center/100% 100% no-repeat;filter:drop-shadow(1px 4px 1px #1d241c55)}.mbtn:before{left:58px;right:58px;top:-5px;height:15px;z-index:-1}.mbtn:after{display:none}.mbtn span,.mbtn small{color:#382d1f;text-shadow:0 1px #f2c58666}.mbtn[aria-current=location]{filter:drop-shadow(0 0 3px #fff3b2) brightness(1.13)}.mbtn[aria-current=location] span{color:#1d3d29}.mbtn[aria-current=location]:after{display:block;content:'●';inset:auto;right:15px;top:34px;border:0;color:#315638;font-size:9px}.mbtn:hover{filter:drop-shadow(1px 5px 2px #15251b66) brightness(1.08)}
@media(max-width:760px){.mbtn,.mbtn[data-id=aulinh]{height:73px;min-height:73px}.menu-row{gap:2px}}
.memory-grid{display:flex;columns:auto;gap:14px;align-items:flex-start}.memory-column{flex:1;min-width:0}.memory-photo{break-inside:auto}@media(max-width:760px){.memory-grid{columns:auto;gap:10px}}
@media(max-width:370px){.plaque,body.night .plaque{width:145px;height:72px;padding:18px 11px 8px 18px}.plaque b{font-size:15px}.plaque small,body.night .plaque small{font-size:5px}.hud{gap:0}.clock,body.night .clock{min-width:43px}.tools{padding:1px}.tools button.sq{min-width:42px;width:42px}}
/* Nhà Li uses the same timber sign, with a readable letter rather than loose header text. */
.room.house .st-sign{position:relative;isolation:isolate;background:none;border:0;box-shadow:none;border-radius:0;transform:none;width:245px;height:88px;padding:27px 20px 14px 31px;box-sizing:border-box;filter:drop-shadow(1px 4px 2px #31221466)}.room.house .st-sign:before{content:'';display:block;position:absolute;inset:24% 8% 13% 12%;background:#ead5a3;box-shadow:inset 1px 3px 8px #50371555;z-index:-2}.room.house .st-sign:after{content:'';display:block;position:absolute;inset:0;background:var(--wood-sign) center/100% 100% no-repeat;z-index:-1}.room.house .st-sign h2{font:italic 700 23px Georgia,serif;text-align:center;color:#354126}.room.house .st-head{min-height:112px;padding:0 14px 8px;align-items:center}.room.house .room-body{top:132px}.letter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #bda97966;padding-bottom:12px;margin-bottom:18px;font:8px var(--ui-font);letter-spacing:.09em;color:#8e7951}.letter-heading small{font:inherit}.letter-heading span{white-space:nowrap}
@media(max-width:760px){.room.house .st-head{display:flex;flex-wrap:wrap;padding:0 8px 8px;min-height:130px;gap:0}.room.house .st-sign{width:235px;height:80px;padding-top:25px}.room.house .st-sign h2{font-size:22px}.room.house .st-pills{flex:0 0 100%;margin:0;min-height:44px;padding:0;gap:5px}.room.house .pill{min-height:44px;font-size:12px;padding:9px 12px}.room.house .room-body{top:145px;overflow:auto;bottom:8px}.room.house .letter{padding:18px}.letter-heading{font-size:7px;gap:8px}}
/* 3503: one shared countertop, readable controls, and a compact garden voice. */
.pet-quote{box-sizing:border-box;padding:8px 11px 9px;border-radius:9px;font:12px/1.4 var(--ui-font);box-shadow:1px 3px 0 #3a392c25;text-align:left;background:#fff9e9fa}
.pet-quote:before{content:attr(data-speaker);position:static;display:block;margin-bottom:3px;font:700 9px/1.2 var(--ui-font);letter-spacing:.04em;color:#8c6d3e;animation:none;filter:none}
.pet-quote:after{width:7px;height:7px;bottom:-5px}
.shop-counter-clean{display:none;position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none;z-index:3;clip-path:polygon(7.3% 69.7%,32.2% 69.7%,32.2% 83.6%,7.3% 83.6%)}
.v34-shop:not([data-media=vinyl]) .shop-counter-clean{display:block}
.v34-shop:after{display:none!important}
.v34-shop .shop-machine{left:8%;top:auto;bottom:18%;width:23%;height:24%;object-fit:contain;object-position:center bottom;z-index:4}
.v34-shop[data-skin=gramophone] .shop-machine{transform:scaleX(-1);width:25%;left:7%;height:26%}
.theme-picker button[data-skin=gramophone] img,.mini-player[data-skin=gramophone] #mini-machine{transform:scaleX(-1)}
.v34-shop .sound-mix{bottom:14%;height:auto;min-height:56px;display:grid;grid-template-columns:1fr 1.4fr .9fr;gap:15px;align-items:end;padding-top:9px;border-top:1px solid #b9a37b66;font:11px var(--ui-font)}
.v34-shop .sound-mix label{display:grid;gap:5px;align-items:center;margin:0;min-width:0}
.v34-shop .sound-mix .ambient-level{display:flex;align-items:center;height:36px;gap:7px}
.v34-shop .sound-mix select{box-sizing:border-box;width:100%;height:36px;min-height:36px;margin:0;padding:4px 6px;font:11px var(--ui-font);color:#31462b;background:#f5ecd5;border:1px solid #b9a37b}
.v34-shop .sound-mix input[type=range]{height:36px;margin:0;min-width:0;width:100%;accent-color:#46603b}
.v34-shop .sound-mix input[type=checkbox]{width:16px;height:16px;flex:none;accent-color:#46603b}
.v34-shop .st-list{bottom:26%}
.mini-player{left:auto;right:22px;bottom:22px;transform:none;box-sizing:border-box;width:330px;max-width:calc(100vw - 24px);gap:10px;padding:8px 10px;background:#fff5dfeF;border:4px ridge #987044;border-radius:3px;box-shadow:2px 5px 0 #392d1f44;color:#30462d}
.mini-player .mini-open{flex:1;min-width:0;width:auto;min-height:52px;display:grid;grid-template-columns:60px minmax(0,1fr);grid-template-rows:18px auto;gap:0 10px;text-align:left;padding:0;align-items:center}
.mini-player #mini-machine{grid-column:1;grid-row:1/3;width:60px;height:50px;object-fit:contain;filter:drop-shadow(1px 3px 1px #50341644)}
.mini-player .mini-open small{position:static;clip-path:none;width:auto;height:auto;grid-column:2;font:8px var(--ui-font);letter-spacing:.05em;color:#89734b;white-space:nowrap}
.mini-player .mini-open b{position:static;transform:none;width:auto;max-width:100%;grid-column:2;font:700 13px/1.4 Georgia,serif;color:#344b31;text-shadow:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini-player .mini-toggle{width:44px;min-width:44px;height:44px;min-height:44px;box-shadow:none;font-size:15px}
/* Project onto the existing cloth. No diagonal glass layer, no broad blur. */
.room.cine{background:#f9eed5}
.room.cine>.st-shade{background:none}
.room.cine .projection .screen,.room.cine.theater-mode .room-body.cine .projection .screen{opacity:.97;mix-blend-mode:normal;filter:none;background:#e9ddbf;mask-image:linear-gradient(to right,transparent,#000 1px,#000 calc(100% - 1px),transparent),linear-gradient(to bottom,transparent,#000 1px,#000 calc(100% - 1px),transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
.room.cine .now-film,.room.cine .now-film h3,.room.cine .film-offsite,.room.cine .film-offsite a{color:#33492e}
.room.cine .film-kicker,.room.cine .film-meta,.room.cine .film-external,.room.cine .now-film details{color:#78613f}
.room.cine .ticket-shelf{background:#f5e7c6;border:3px ridge #b09562;border-radius:2px;box-shadow:2px 4px #70522d22}
/* A portrait and an editorial timeline stay inside the existing house room. */
.room.house{inset:125px max(22px,calc((100vw - 1240px)/2)) 64px;background:#f9eed5;border:8px ridge #977144;box-sizing:border-box}
.room.house>.st-shade{background:none;backdrop-filter:none}
.room.house .room-body.house{position:absolute;inset:132px 24px 22px;display:grid;grid-template-columns:230px minmax(0,1fr);gap:34px;align-items:start;width:auto;transform:none;overflow:auto;padding:0 6px 15px}
.room.house .room-body:before{display:none}
.profile-identity{position:sticky;top:0;padding:0 0 15px;min-width:0;color:#344b31}
.profile-portrait{position:relative;height:205px;overflow:hidden;border:5px solid #fff8e6;outline:1px solid #b4a077;background:radial-gradient(ellipse at 50% 40%,#f8efd3,#d2d6ad);box-shadow:3px 5px #9c7c4233;margin:3px 3px 25px;transform:rotate(-2deg)}
.profile-portrait img{width:100%;height:100%;object-fit:contain;object-position:center bottom}
.profile-portrait span{position:absolute;bottom:0;left:0;right:0;padding:8px;text-align:center;font:8px var(--ui-font);letter-spacing:.12em;background:#fff8e6eF}
.profile-identity>small,.profile-section>small{font:9px var(--ui-font);letter-spacing:.13em;color:#917344}
.profile-identity h3{font:700 26px/1.1 Georgia,serif;margin:10px 0}
.profile-identity p{font:13px/1.7 var(--ui-font);margin:0 0 18px}
.profile-identity a{display:flex;justify-content:space-between;align-items:center;min-height:44px;padding:0 13px;border:1px solid #a48b5d;color:#3f5635;background:#eee2bf;font:12px var(--ui-font);text-decoration:none}
.profile-content{min-width:0;padding-top:2px;color:#344b31}
.profile-section{padding:0 0 20px;border-bottom:1px solid #b9a37b77;margin-bottom:22px}
.profile-section h3{font:700 clamp(24px,2.5vw,35px)/1.25 Georgia,serif;margin:10px 0 0;letter-spacing:-.02em}
.profile-section h3 em{font-weight:400;color:#7b774e}.profile-section p{font:13px var(--ui-font);color:#7b7356;margin:12px 0 0}
.profile-letter{max-width:680px;font:15px/1.85 Georgia,serif}.profile-letter p{margin:0 0 12px}.profile-letter .hello{font-style:italic;font-size:18px}.profile-signature{display:block;font:italic 27px Georgia,serif;margin:12px 0 24px;color:#8a6843}
.profile-skills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.profile-skill{min-width:0;padding:16px 13px;background:#fff9e8;border-top:3px solid #aa915f;box-shadow:0 3px 0 #9c7c421a}
.skill-icon{display:grid;place-items:center;width:37px;height:37px;background:#eae3c6;color:#697344;border-radius:50%;margin-bottom:13px}.skill-icon svg{width:24px;height:24px}
.profile-skill h3{font:700 17px/1.3 Georgia,serif;margin:0 0 10px}.profile-skill p{font:11px/1.8 var(--ui-font);margin:0;color:#766a50}
.profile-background{margin-top:25px;padding-top:10px;border-top:1px solid #b9a37b77}.profile-background h4{font:700 20px Georgia,serif;margin:15px 0}.profile-background ul{padding-left:18px;font:13px/1.9 var(--ui-font)}
.career-timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px;list-style:none;margin:0;padding:0}
.career-stop{position:relative;min-width:0;padding:0 0 20px 18px;border-left:2px solid #c3ae80}
.career-stop:before{content:'';position:absolute;left:-5px;top:6px;width:8px;height:8px;border-radius:50%;background:#788257;box-shadow:0 0 0 4px #f9eed5}
.career-period{display:flex;justify-content:space-between;align-items:center;color:#8f6e3d;font:11px var(--ui-font);gap:10px}.career-period small{font:italic 20px Georgia,serif;color:#b7a47c}
.career-stop h4{font:700 20px/1.3 Georgia,serif;margin:12px 0 9px}.career-stop b{font:500 11px/1.5 var(--ui-font);color:#7c6c4e;display:block}.career-stop p{font:12px/1.7 var(--ui-font);margin:12px 0 0;color:#6c6952}
@media(max-width:1000px) and (min-width:761px){.room.house .room-body.house{grid-template-columns:180px minmax(0,1fr);gap:22px}.profile-skills{grid-template-columns:1fr}.profile-skill{display:grid;grid-template-columns:40px 1fr;gap:8px 12px}.profile-skill .skill-icon{grid-row:1/3;margin:0}.profile-skill h3{margin:0}.profile-skill p{grid-column:2}}
@media(max-width:760px){
 .v34-shop .shop-counter-clean{display:none}
 .v34-shop .shop-machine,.v34-shop[data-skin=gramophone] .shop-machine{position:relative;inset:auto;width:155px;height:130px;margin:12px auto 0;align-self:center}
 .v34-shop .st-list{position:relative;inset:auto}
 .v34-shop .sound-mix{position:relative;inset:auto;display:grid;grid-template-columns:1fr 1.2fr;gap:10px 14px;margin:16px 0 4px;min-height:0;padding:14px 0}
 .v34-shop .sound-mix .ambient-level{grid-column:1/3;height:36px;max-width:none}.v34-shop .sound-mix select{min-height:44px;height:44px}.v34-shop .sound-mix .music-level input{height:44px}
 .mini-player{left:12px;right:12px;bottom:74px;width:auto;transform:none}
 .room.cine.theater-mode .projection{background-size:contain;background-position:center}
 .room.house .room-body.house{inset:149px 13px 10px;display:block;padding:0 2px 15px}
 .profile-identity{position:static;display:grid;grid-template-columns:105px 1fr;gap:6px 15px;padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid #b9a37b77}
 .profile-portrait{grid-row:1/5;height:140px;margin:3px 0}.profile-portrait span{font-size:6px;padding:7px 2px}
 .profile-identity>small{font-size:7px;padding-top:8px}.profile-identity h3{font-size:23px;margin:0}.profile-identity p{font-size:10px;margin:0}.profile-identity a{font-size:10px;min-height:40px}
 .profile-section h3{font-size:26px}.profile-letter{font-size:14px}.profile-skills{grid-template-columns:1fr;gap:12px}.profile-skill{display:grid;grid-template-columns:37px 1fr;gap:6px 12px}.profile-skill .skill-icon{grid-row:1/3;margin:0}.profile-skill h3{margin:0}.profile-skill p{grid-column:2}
 .career-timeline{grid-template-columns:1fr;gap:18px}.career-stop h4{font-size:21px}.career-stop p{font-size:12px}
}
/* Reset the former letter-only grid placement on the new profile children. */
.room.house .room-body.house>.profile-identity{grid-column:1;grid-row:1;max-height:none;overflow:visible}
.room.house .room-body.house>.profile-content{grid-column:2;grid-row:1;max-height:none;overflow:visible}
.room.house .room-body.house{grid-template-rows:auto;align-content:start}
@media(max-width:760px){.v34-shop:not([data-media=vinyl]) .shop-counter-clean{display:none}.room.house .room-body.house>.profile-identity,.room.house .room-body.house>.profile-content{max-height:none;overflow:visible;grid-column:auto;grid-row:auto}}
@media(max-width:760px){.v34-shop .sound-mix{flex:0 0 auto;height:auto;min-height:124px;box-sizing:border-box}.v34-shop .shop-machine{flex:none}}

/* build 3513: more tracks in view, a clearer cover, readable small type, film stubs */
@media(min-width:761px){
 .v34-shop .st-ribbon{top:24%;grid-template-columns:minmax(0,34%) minmax(0,1fr);gap:6px 16px}
 .v34-shop .album-stage{height:clamp(140px,18vh,165px)}
 .v34-shop .li-avatar{width:50%}
 .v34-shop .li-quote{width:50%;padding:4px 7px;font-size:11px;line-height:1.2}
 .v34-shop .theme-picker{top:calc(24% + clamp(140px,18vh,165px) + 8px);height:40px}
 .v34-shop .st-list{top:calc(24% + clamp(140px,18vh,165px) + 54px);bottom:23%}
 .v34-shop .tracks>*{min-height:0;height:32px;box-sizing:border-box;align-items:center}
}
@media(max-width:760px){
 .v34-shop .album-stage{height:clamp(250px,74vw,340px)}
 .v34-shop .now-cover{left:auto!important;right:4px!important;top:0!important;width:72%!important;height:auto;aspect-ratio:1}
 .v34-shop .li-avatar{left:-6px;bottom:0;width:44%;max-width:170px}
 .v34-shop .li-quote{right:0;bottom:0;width:58%}
 .plaque small,body.night .plaque small{font-size:8px}
 .album-intro small{font-size:10px}
}
.plaque small{font-size:10px}.mbtn span{font-size:11px}
.album-intro small,.film-kicker,.film-start small{font-size:11px}
.theme-picker,.theme-label{font-size:11px}
.memory-photo span:empty{display:none}
.ticket-stub{display:grid;place-items:center;width:56px;height:56px;box-sizing:border-box;border-radius:3px;border:2px dashed #fff4da99;outline:3px solid var(--stub);background:var(--stub);color:#fff4da}
.ticket-stub b{font:italic 700 22px Georgia,serif!important;margin:0!important}
.ticket-stub.tone-0{--stub:#46603b}.ticket-stub.tone-1{--stub:#a4552f}.ticket-stub.tone-2{--stub:#b58a3a}.ticket-stub.tone-3{--stub:#2f4a55}
