/* V2.2 material system: one wood texture, one paper texture, one small garland.
   Border-image keeps carved rims and paper edges intact at every panel size. */
:root{--wood-image:url('./assets/ui/wood-panel.webp');--paper-image:url('./assets/ui/paper-panel.webp');--garland:url('./assets/ui/garden-garland.webp');--garden-ink:#493323;--garden-moss:#52603a;--garden-brass:#b28a4d;--garden-shadow:0 10px 25px #25150838;--ink:var(--garden-ink);--muted:#7c674e;--accent:#694d2e;--paper:#f4e6c8}
.ui-icon{display:inline-block;width:22px;height:22px;flex:none;object-fit:contain;pointer-events:none;vertical-align:middle}
.wood-panel,.top-nav,.wordmark,.music-shelf,.album-image,.round-button,.primary-play{border:12px solid transparent;border-image:var(--wood-image) 80 fill / 12px stretch;background:none;box-shadow:var(--garden-shadow);color:#f9e8be}
.paper-panel,.garden-tag,.paper-button,.host-talk,.place-label{border:16px solid transparent;border-image:var(--paper-image) 154 fill / 16px stretch;background:none;color:var(--garden-ink)}
.garden-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:3px 11px;font:15px/1.3 Georgia,serif;transition:filter .18s,translate .18s}
.garden-button:hover{filter:brightness(1.08);translate:0 -1px}.garden-button:disabled{opacity:.58;filter:grayscale(.5);translate:none}
.round-button{border-width:7px;border-image-width:7px;width:46px;height:46px;border-radius:50%;background:none;box-shadow:0 3px 5px #28150940;transition:filter .15s}
.round-button:hover,.primary-play:hover{background:none;filter:brightness(1.17)}
.round-button .ui-icon,.primary-play .ui-icon{filter:invert(.94) sepia(.24) saturate(1.7)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #eedc9d;outline-offset:3px;box-shadow:0 0 0 5px #536437}
input,select{font:14px/1.4 GardenSans,system-ui,sans-serif;color:var(--garden-ink);accent-color:var(--garden-moss)}
.garden-tag{display:inline-block;font:11px/1.3 Georgia,serif;border-width:5px 9px;border-image-width:7px;padding:0 2px;letter-spacing:.3px}
/* Garden signposts. The existing world plate is preserved. */
.masthead{padding:25px 28px;gap:18px;align-items:start}
.wordmark{font:31px/1 Georgia,serif;letter-spacing:-1px;padding:10px 18px 12px;border-width:12px;transform:rotate(-2deg);min-width:210px;text-align:center;text-shadow:0 1px #30180f}
.wordmark small{font:9px/1.4 GardenSans,sans-serif;letter-spacing:1.4px;margin-top:9px;color:#f4ddb0}
.wordmark em{font-size:36px}.top-nav{position:relative;margin-left:auto;border-radius:12px;gap:1px;padding:0;border-width:9px;border-image-width:12px;box-shadow:0 5px 12px #26190f55}
.top-nav:after,.music-shelf:after{content:'';position:absolute;width:165px;height:80px;right:-26px;top:-36px;background:var(--garland) center/contain no-repeat;pointer-events:none;z-index:4;transform:rotate(7deg)}
.top-nav button{border:8px solid transparent;border-radius:0;background:none;color:#f6e3bd;min-width:155px;padding:3px 10px;gap:10px;font:18px/1.1 Georgia,serif;min-height:55px}
.top-nav button>span:last-child{text-align:left}.top-nav small{display:block;font:11px/1.4 Georgia,serif;margin-top:5px;opacity:.8}
.top-nav button .ui-icon{width:28px;height:28px;filter:invert(.93) sepia(.3)}
.top-nav button:hover,.top-nav button.is-active{background:none;border-image:var(--paper-image) 154 fill / 10px;color:#493323}
.top-nav button.is-active .ui-icon,.top-nav button:hover .ui-icon{filter:none}
.motion-toggle{margin-top:12px;min-width:44px}.garden-settings{position:absolute;right:30px;top:126px;z-index:5;border:0;background:none;box-shadow:none}
.garden-settings>summary{list-style:none;cursor:pointer;display:grid;place-items:center;width:46px;height:46px;border:7px solid transparent;border-image:var(--wood-image) 80 fill / 7px;filter:drop-shadow(0 3px 4px #241c1655)}
.garden-settings>summary::-webkit-details-marker{display:none}.garden-settings>summary .ui-icon{filter:invert(.9) sepia(.4)}
.garden-settings .garden-tools{position:absolute;top:55px;right:0;left:auto;display:flex;flex-wrap:wrap;gap:10px;width:245px;max-width:90vw;box-shadow:var(--garden-shadow);padding:5px 8px 13px;opacity:1;visibility:visible;background:none;backdrop-filter:none;border-radius:0;transform:none;color:var(--garden-ink)}
.settings-title{font:17px/1.3 Georgia,serif;margin:3px 0 0;width:100%}.garden-settings .daylight-controls{background:none;border:1px solid #b29a6866;border-radius:7px}.garden-settings .garden-tool{background:none;color:#60482c}.garden-settings .garden-tool[aria-pressed=true]{background:#ac94554a}.garden-settings #world-time{margin:0 60px 0 0}
body[data-room]:not([data-room='']) .garden-settings{visibility:hidden}.garden-footer{font:12px/1.3 Georgia,serif;color:#f5e3ba;text-shadow:0 1px 4px #34220c;bottom:16px}.garden-footer span:last-child{font:12px Georgia,serif;letter-spacing:.3px}
.host-talk{border-width:18px!important;border-image-width:18px;border-radius:0!important;padding:1px 4px 7px!important;box-shadow:none;filter:drop-shadow(1px 4px 4px #3427163b);font-family:Georgia,serif;transform:rotate(-2deg)}
.host-talk:before,.host-talk:after{display:none}#host-words{font:15px/1.55 Georgia,serif}#talk-kicker{font:10px Georgia,serif;letter-spacing:.7px}.note-story{display:flex;align-items:center;justify-content:space-between;gap:5px;width:100%;background:none;font:11px/1.3 Georgia,serif;padding:9px 0 0;border-top:1px solid #ac8e584a;margin-top:9px;color:#695335}.note-story .ui-icon{width:14px;height:14px}
.place-label{border-radius:0;padding:2px 5px;font:14px Georgia,serif;box-shadow:none;filter:drop-shadow(0 3px 3px #38270f44)}
/* Reused paper note at the entrance, never raster text. */
.entrance-note{border:34px solid transparent;border-image:var(--paper-image) 154 fill / 34px;padding:30px 37px 36px;width:min(560px,100%);filter:drop-shadow(0 14px 18px #23180b25);color:var(--garden-ink)}
.entrance h1{font-size:82px;letter-spacing:-3px}.entrance-eyebrow{letter-spacing:2px;margin-bottom:22px}.entrance #entrance-quote{margin:24px 0;font-size:18px}.entrance .entrance-bell{border:8px solid transparent;border-image:var(--wood-image) 80 fill / 8px;background:none!important;border-radius:0;color:#f7e6c2;box-shadow:0 3px 6px #47271840;padding:7px 12px;min-height:65px}.entrance .bell-arrow{color:#f7e6c2}.entrance .bell-object{filter:brightness(1.3)}
body[data-day-phase=night] .entrance-note{color:var(--garden-ink)}body[data-day-phase=night] .entrance-note h1 em{color:#905539}body[data-day-phase=night] .entrance-note #entrance-status,body[data-day-phase=night] .entrance-note .entrance-eyebrow{color:#756047}
/* Major surfaces derive from the corresponding garden object. */
#room-dialog{padding:0;border:0;border-radius:0;box-shadow:none;color:var(--garden-ink);overflow:visible;max-height:calc(var(--visual-height,100dvh) - 30px)}
#room-dialog::backdrop{background:#46301516;backdrop-filter:none;-webkit-backdrop-filter:none}
#room-dialog .room-inner{height:100%;min-height:0;overflow:hidden;display:flex;flex-direction:column}
#room-dialog .room-header{flex:none;align-items:center;gap:10px;text-shadow:none;color:var(--garden-ink)}
#room-dialog .room-content{min-height:0;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#9c7749 transparent}
#room-dialog .room-motion{margin-left:auto}
#room-dialog .room-header h1{font:32px/1.1 Georgia,serif;margin:3px 0}
#room-dialog .room-header .eyebrow{font:9px/1.4 GardenSans,sans-serif;letter-spacing:1.5px;color:inherit;opacity:.8}
#room-dialog .close-room,#room-dialog .room-motion{background:none;color:#f6e4c0}
#room-dialog[data-room=music],#room-dialog[data-room=music][data-listening=true]{position:fixed;inset:auto 5vw 6vh auto;width:min(1050px,73vw);height:auto;max-height:calc(var(--visual-height,100dvh) - 155px);margin:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;overflow:visible}
#room-dialog[data-room=music] .room-inner{overflow:visible}
#room-dialog[data-room=music] .room-header{padding:0 0 9px;gap:12px;align-items:center}
#room-dialog[data-room=music] .room-header>div{padding:5px 20px;border:11px solid transparent;border-image:var(--wood-image) 80 fill / 11px;background:none;border-radius:0;color:#fae7bd;filter:drop-shadow(0 3px 4px #3d200f40)}
#room-dialog[data-room=music] .room-header h1{font:italic 32px/1 Georgia,serif;letter-spacing:.2px}
#room-dialog[data-room=music] .room-header .eyebrow{font-size:8px;letter-spacing:1.3px}
#room-dialog[data-room=music] .room-content{padding:0;overflow:visible}
#room-dialog[data-room=music] .music-room{display:flex;flex-direction:column;position:relative;width:100%;height:auto;min-height:0;max-width:none;gap:10px;padding:0}
#room-dialog[data-room=music] .music-shelf{position:relative;order:0;flex:none;display:block;margin:0;min-width:0;max-width:none;border-width:12px;border-image-width:16px;border-radius:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0;box-shadow:0 9px 18px #26160950}
#room-dialog .shelf-toolbar{display:flex;align-items:center;gap:5px;padding:0 3px 8px;position:relative}
.category-chips{display:flex;gap:3px;min-width:0;overflow:auto;scrollbar-width:none;align-items:stretch}
.category-chips .garden-button{white-space:nowrap;border-width:7px;padding:1px 8px;font-size:12px;min-height:38px;flex:none}
.category-chips .garden-button[aria-pressed=true]{color:#f9efcd;border-image:var(--wood-image) 80 fill / 7px;box-shadow:inset 0 -2px #d7b265}
#room-dialog .picker-toggle{margin-left:auto;flex:none;border-width:7px;font-size:12px;min-height:38px;padding:0 8px}.picker-toggle .ui-icon{width:15px;height:15px}
#room-dialog .album-picker{position:absolute;z-index:7;right:0;top:48px;width:min(330px,100%);padding:7px 9px 12px;box-shadow:var(--garden-shadow)}
.album-picker>label{display:block;font:17px Georgia,serif;margin-bottom:10px}.album-picker input,.album-picker select{display:block;width:100%;min-height:44px;padding:8px 9px;margin-bottom:8px;border:1px solid #9f875c88;border-radius:3px;background:#fff5dc}
.shelf-display{position:relative;min-width:0}
#room-dialog .album-shelf{--cover-size:clamp(145px,12.7vw,218px);position:relative;display:flex;gap:10px;align-items:center;height:calc(var(--cover-size) + 93px);padding:11px calc(50% - var(--cover-size)/2) 8px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:calc(50% - var(--cover-size)/2);background:none;scrollbar-width:none;touch-action:pan-x;overscroll-behavior-x:contain;cursor:grab;perspective:1200px}
#room-dialog .album-shelf.dragging{scroll-snap-type:none;cursor:grabbing}.album-shelf::-webkit-scrollbar{display:none}
#room-dialog .album-choice{flex:0 0 var(--cover-size);width:var(--cover-size);max-width:none;min-width:0;padding:0;background:none;border:0;color:#fce7bc;scroll-snap-align:center;scroll-snap-stop:normal;text-align:center;transition:transform .3s,opacity .3s;transform:scale(.88);opacity:.84;transform-origin:50% 75%;box-shadow:none;overflow:visible}
#room-dialog .album-choice[data-focus=true],#room-dialog .album-choice[aria-pressed=true]{transform:scale(1);opacity:1}
#room-dialog .album-choice[data-focus=false]:not([aria-pressed=true]){transform:scale(.88) rotateY(-3deg)}
#room-dialog .album-image{display:block;border-width:8px;border-image-width:9px;padding:1px;aspect-ratio:1;box-shadow:0 6px 9px #20100866;position:relative}
#room-dialog .album-image img{width:100%;height:100%;display:block;object-fit:cover;border-radius:0;box-shadow:none}
#room-dialog .album-choice[aria-pressed=true] .album-image:after{content:'';position:absolute;bottom:-18px;right:-15px;width:105px;height:50px;background:var(--garland) center/contain no-repeat;pointer-events:none}
#room-dialog .album-label{display:block;font:13px/1.3 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:10px 2px 6px;max-width:100%}
#room-dialog .album-choice .garden-tag{font-size:10px;border-width:3px 6px;line-height:1.1;padding:0;opacity:.95}
#room-dialog .shelf-prev,#room-dialog .shelf-next{position:absolute;top:36%;z-index:4;box-shadow:0 3px 8px #21120555;width:42px;height:46px}.shelf-prev{left:-27px}.shelf-next{right:-27px}
.shelf-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 6px 1px;border-top:1px solid #e4b96b4a;font:11px/1.3 Georgia,serif;color:#ead1a0}.shelf-foot>span:last-child{font-style:italic}.shelf-no-results{margin:8px;min-height:100px;font:16px/1.5 Georgia,serif}
/* The player is one console below the record shelf, with a paper inset. */
#album-selection.music-console{order:1;display:block;position:relative;flex:none;padding:0;border-width:12px;border-image-width:16px;overflow:visible;border-radius:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 9px 18px #26160950}
#album-selection .console-inset{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(205px,1fr) 130px;align-items:center;gap:12px;padding:5px 8px;border-width:9px;border-image-width:14px;min-height:113px}
#album-selection .selection-empty{display:flex;min-height:90px;justify-content:center;text-align:center;text-shadow:none;padding:12px}.selection-empty p{margin:0!important;color:var(--garden-ink)!important}.selection-empty strong{font:22px Georgia,serif;display:block}.selection-empty span{display:block;margin-top:8px;font:14px Georgia,serif}
.console-record{display:flex;align-items:center;min-width:0;gap:13px}.console-cover{width:62px;height:62px;object-fit:cover;border:3px solid #81613b;border-radius:2px;box-shadow:2px 3px 4px #39260f33}.console-copy{min-width:0;flex:1}.console-copy h2{font:18px/1.25 Georgia,serif;color:#432c1a;margin:0 0 6px;overflow-wrap:anywhere}.console-copy .eyebrow{font-size:7px;margin:0 0 5px;letter-spacing:1px}.console-copy .album-byline{font:11px/1.3 Georgia,serif;color:#7d603e;margin:0}
.favorite-album.round-button{background:none;border:0;box-shadow:none;width:30px;height:44px;color:#60452a}.favorite-album .ui-icon{width:18px;height:18px;filter:opacity(.55)}.favorite-album[aria-pressed=true] .ui-icon{filter:invert(.27) sepia(.9) saturate(2.8) hue-rotate(327deg)}
#album-selection .playback{margin:0;min-width:0}.playback .playback-row{display:flex;justify-content:center;gap:12px;flex-wrap:nowrap}.playback-row .round-button{background:none;border:0;box-shadow:none;color:#543b1f;width:40px;min-width:40px;height:44px}.playback-row .round-button .ui-icon{filter:opacity(.8)}
.primary-play{display:flex;align-items:center;justify-content:center;width:60px;min-width:60px;height:60px;min-height:60px;border-width:8px;border-image-width:9px;border-radius:50%;padding:0;background:none;color:#fbeaca;box-shadow:0 3px 5px #42250f44}.primary-play .ui-icon{width:27px;height:27px}.primary-play>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.progress-row{display:flex;align-items:center;gap:7px;margin:6px 0 0;font:10px/1 GardenSans,sans-serif;color:#80653e}.seek{width:100%;min-width:40px;height:24px;margin:0;accent-color:#607340;background:none;cursor:pointer}.console-actions{display:flex;flex-direction:column;gap:7px;align-items:center}
#album-selection .queue-more{position:static;font:13px Georgia,serif;min-height:43px;width:100%;height:auto;right:auto;top:auto;background:none;border-width:7px;box-shadow:none;color:#513820;padding:0 3px;border-image:var(--paper-image) 154 fill / 8px}.queue-more .ui-icon{width:18px;height:18px}.queue-more[aria-expanded=true]{filter:sepia(.4);outline:1px solid #9b7d48}
.volume-control{display:flex;align-items:center;width:100%;gap:4px}.volume-control .round-button{width:34px;height:28px;min-width:30px;border:0;box-shadow:none;background:none}.volume-control .ui-icon{filter:opacity(.7);width:18px;height:18px}.volume-control input{width:70px;height:22px;margin:0;min-width:0}
#album-selection .play-status{grid-column:1/-1;position:static;width:auto;height:auto;min-height:0;margin:0;font:10px/1.25 Georgia,serif;color:#7e6240;text-align:center;clip-path:none}.audio-error{grid-column:1/-1;font:12px/1.4 GardenSans,sans-serif;background:#f2dfb8;padding:8px;overflow-wrap:anywhere}
/* The ledger is attached to the console on desktop. No scrolling parent. */
#track-queue.playlist-drawer{position:absolute;z-index:10;right:-15px;bottom:145px;width:340px;height:min(465px,calc(var(--visual-height,100dvh) - 230px));max-height:none;padding:0;margin:0;border-width:10px;border-image-width:13px;overflow:visible;border-radius:0;background:none;box-shadow:0 12px 28px #23180d55;animation:ledger-unfold .24s ease-out}
@keyframes ledger-unfold{from{opacity:0;transform:translateY(16px) rotate(1deg)}to{opacity:1;transform:none}}
.ledger-inset{display:flex;flex-direction:column;height:100%;min-height:0;padding:4px 7px;border-width:11px;border-image-width:18px}.ledger-header{display:flex;gap:12px;align-items:start;padding:4px 0 13px;flex:none}.ledger-header>div{min-width:0;flex:1}.ledger-header small{font:8px/1.3 GardenSans,sans-serif;letter-spacing:1.8px;color:#8a6b40}.ledger-header h2{font:21px/1.2 Georgia,serif;margin:7px 0 6px;overflow-wrap:anywhere}.ledger-header p{font:11px/1.4 Georgia,serif;margin:0;color:#7a6343}.ledger-header .round-button{width:38px;height:38px;flex:none}.ledger-tabs{display:flex;align-items:center;border-bottom:1px solid #ae926348;gap:12px;margin-bottom:5px;flex:none}.ledger-tabs button{background:none;padding:10px 0;font:14px Georgia,serif;color:#846942;min-height:42px}.ledger-tabs button[aria-selected=true]{color:#49331c;border-bottom:2px solid #6c713f}.ledger-tabs small{font-size:10px;margin-left:5px}.queue-page{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a98b56 transparent}
#track-queue .track-list{display:block;width:100%;height:auto;max-height:none;overflow:visible;padding:0;margin:0;border:0;animation:none;list-style:none}
#track-queue .track-button{display:grid;grid-template-columns:22px minmax(0,1fr) 32px;gap:8px;padding:11px 5px;min-height:49px;border:0;border-bottom:1px solid #a3834b2b;border-radius:3px;color:#604b31;background:none;box-shadow:none;font-weight:400}
#track-queue .track-button[aria-pressed=true]{background:#b6ad6866;color:#453719;box-shadow:inset 3px 0 #667344}#track-queue .track-button:hover{background:#cab6754a}#track-queue .track-name{font:14px/1.3 Georgia,serif}#track-queue .track-duration{font-size:10px}#track-queue .track-index{font-size:10px;opacity:.65}#track-queue .track-button:disabled{opacity:.7}
.sheet-handle,.sheet-transport{display:none}.lyrics-page{padding:20px 6px}.lyrics-empty{font:17px/1.7 Georgia,serif;text-align:center;color:#856d48;margin:20px 0}.lyrics-page:has(.lyrics-field:not([hidden])) .lyrics-empty{display:none}.unavailable-note{font:12px/1.5 Georgia,serif;padding:7px;color:#846c44}
/* Paper letter. Photos are pinned inside a substantial wooden memory board. */
#room-dialog[data-room=profile]{width:min(740px,calc(100vw - 46px));height:min(690px,calc(var(--visual-height,100dvh) - 140px));inset:auto auto 6vh 9vw;margin:0;border:32px solid transparent;border-image:var(--paper-image) 154 fill / 36px;background:none;filter:drop-shadow(0 14px 20px #31210e45);transform-origin:15% 75%}
#room-dialog[data-room=profile] .room-header{padding:7px 10px 18px;background:none;border:0}#room-dialog[data-room=profile] .room-content{overflow-y:auto}#room-dialog[data-room=profile] .profile-room{padding:3px 12px 18px}.letter-salutation{font:italic 26px Georgia,serif;margin:0 0 23px;color:#795738}.profile-lead{grid-template-columns:83px minmax(0,1fr);gap:26px}.profile-portrait{height:245px;width:83px}.profile-intro{font:25px/1.3 Georgia,serif!important;color:#513722}.profile-copy{font:16px/1.8 Georgia,serif;color:#6f5434}.profile-role{font:12px/1.6 GardenSans,sans-serif}.profile-lead .eyebrow{font-size:9px;letter-spacing:1px}.contact-link{font:15px Georgia,serif;color:#6a5130;gap:9px}.resume-fold{border-top:1px solid #ad925d55;margin-top:27px}.resume-fold summary{font:16px/1.5 Georgia,serif;padding:18px 0}.letter-signature{font:italic 18px/1.5 Georgia,serif;text-align:right;margin:20px 20px 5px}.letter-signature em{font-size:40px}.resume-list{gap:20px}.resume-list h3{font:18px/1.35 Georgia,serif}.resume-list li{border-color:#b0976466}.profile-capabilities h3{color:#634825}.profile-capabilities p,.resume-list p{color:#766041}
#room-dialog[data-room=gallery]{width:min(1000px,calc(100vw - 60px));height:min(720px,calc(var(--visual-height,100dvh) - 145px));inset:auto 5vw 5vh auto;margin:0;border:20px solid transparent;border-image:var(--wood-image) 80 fill / 23px;background:none;filter:drop-shadow(0 12px 20px #25170c45);transform-origin:90% 70%}
#room-dialog[data-room=gallery] .room-inner{border:17px solid transparent;border-image:var(--paper-image) 154 fill / 28px;background:none}#room-dialog[data-room=gallery] .room-header{padding:2px 10px 15px;border:0;background:none}#room-dialog[data-room=gallery] .room-content{overflow-y:auto}.gallery-room{padding:0 10px 20px}.media-heading{gap:12px}.media-tabs{background:none;border-bottom:1px solid #a58b5670;border-radius:0;padding:0;gap:4px}.media-tabs button{font:15px Georgia,serif;border-radius:0;padding:8px 15px;background:none;border:7px solid transparent}.media-tabs button[aria-pressed=true]{background:none;border-image:var(--wood-image) 80 fill / 7px;color:#fbe4b4}.media-tabs button[aria-pressed=true] small{color:inherit}.media-tabs small{font:10px Georgia,serif}.media-heading>p{font:italic 13px Georgia,serif;color:#80623d}.gallery-grid{column-count:4;column-gap:20px}.gallery-pin{border-radius:0;padding:7px 7px 15px;background:#fbf3df;box-shadow:1px 4px 7px #51321f3d;transform:rotate(-1deg);margin-bottom:23px;break-inside:avoid}.gallery-pin:nth-child(3n){transform:rotate(1.5deg)}.gallery-pin:before{background:#baa16d80;height:14px;width:36px;left:40%;top:-6px}.gallery-pin>small{font:italic 12px/1.3 Georgia,serif;color:#927144;margin:12px 4px 0}.pin-heart{background:#f8efdbdf;border:0;width:32px;height:32px}.pin-heart .ui-icon{width:17px;height:17px}.pin-heart[aria-pressed=true]{background:#c6b282}.gallery-more{border:8px solid transparent;border-image:var(--wood-image) 80 fill / 8px;border-radius:0;background:none;color:#f7e5bc;padding:6px 18px;font:16px Georgia,serif;min-height:44px}.gallery-count{font:12px Georgia,serif;color:#8e744a}
.lightbox::backdrop{background:#38281365;backdrop-filter:blur(2px)}.lightbox figure{border:18px solid transparent;border-image:var(--paper-image) 154 fill / 24px;border-radius:0;background:none;box-shadow:0 15px 30px #27160f55}.lightbox figcaption{background:none;color:#493622}.lightbox h2{font-family:Georgia,serif}.lightbox figure .pin-image-wrap{background:none}.lightbox img{border-radius:0}.pin-like{background:#e5d3a7;color:#604728}.pin-like[aria-pressed=true]{background:#a4a171}.pin-like .ui-icon{width:18px;height:18px}
.daily-dialog{border:25px solid transparent;border-image:var(--paper-image) 154 fill / 28px;background:none;border-radius:0;box-shadow:none;filter:drop-shadow(0 15px 20px #34200e44);color:#60472d}.daily-dialog::backdrop{background:#4630151a}.daily-dialog:after{display:none}.notice{border:12px solid transparent;border-image:var(--paper-image) 154 fill / 14px;border-radius:0;background:none;color:#573d26;box-shadow:0 4px 10px #30200e44}
.mini-player{border:10px solid transparent;border-image:var(--wood-image) 80 fill / 13px;background:none;border-radius:0;padding:8px 9px;box-shadow:0 7px 12px #35220f50;color:#fae7bc;bottom:42px}.mini-player .mini-copy small,.mini-player .mini-copy>span{color:#e0c296}.mini-cover-wrap{border-radius:2px;background:#3c2718}.mini-title{font-family:Georgia,serif}.mini-details{color:inherit}.mini-player .play-button{background:#e9d4a1;color:#493323;border:1px solid #b0894f;box-shadow:0 2px 2px #2a150c55}.mini-copy strong{font:16px/1.3 Georgia,serif}.mini-player .round-button{box-shadow:none}
/* Responsive room = one scrollable ledger body, fixed header and transport.
   dvh/visualViewport and safe areas keep iOS browser chrome off the controls. */
@media(max-width:1100px) and (min-width:701px){.masthead{padding:18px 20px;gap:10px}.wordmark{min-width:170px;font-size:24px;padding:8px}.top-nav button{min-width:130px;padding:3px 5px;font-size:16px}.top-nav small{font-size:9px}.motion-toggle{display:none}.top-nav button .ui-icon{width:23px;height:23px}#room-dialog[data-room=music],#room-dialog[data-room=music][data-listening=true]{width:calc(100vw - 90px);right:45px;bottom:5vh}#room-dialog .album-shelf{--cover-size:clamp(155px,19vw,200px)}#album-selection .console-inset{grid-template-columns:minmax(200px,1fr) 225px 115px;gap:7px}.console-copy h2{font-size:16px}.console-cover{width:49px;height:49px}.console-record{gap:8px}.favorite-album{display:none!important}}
@media(max-width:700px){
 .garden{height:100dvh;min-height:320px}.masthead{padding:18px 15px;gap:10px;align-items:start}.wordmark{font-size:22px;min-width:162px;padding:6px 9px 9px;border-width:9px}.wordmark em{font-size:27px}.wordmark small{font-size:7px;letter-spacing:.7px;margin-top:7px}.motion-toggle{margin-left:auto;margin-top:2px;width:43px;height:44px}.top-nav{position:fixed;left:13px;right:13px;top:auto;bottom:calc(16px + env(safe-area-inset-bottom));margin:0;justify-content:center;border-width:8px;gap:0}.top-nav button{flex:1;min-width:0;min-height:44px;padding:3px 4px;gap:5px;font-size:12px;white-space:nowrap}.top-nav small{display:none}.top-nav button .ui-icon{display:block;width:18px;height:18px}.top-nav:after{width:104px;height:48px;right:-7px;top:-26px}.garden-footer{display:none}.garden-settings{top:81px;right:15px}.garden-settings>summary{width:43px;height:44px}.mini-player{bottom:calc(88px + env(safe-area-inset-bottom));width:calc(100% - 28px);padding:5px 4px;gap:9px}.mini-copy strong{font-size:14px}.mini-copy small{font-size:8px}.mini-copy>span{font-size:10px}.host-talk #host-words{font-size:13px}.note-story{font-size:10px}.host-talk{border-width:13px!important;border-image-width:14px;padding:1px!important}.host-talk #talk-kicker{font-size:8px}
 .entrance{padding:15px 20px}.entrance-note{border-width:24px;border-image-width:27px;padding:26px 8px}.entrance h1{font-size:65px;letter-spacing:-3px}.entrance-eyebrow{font-size:8px;letter-spacing:1.4px}.entrance #entrance-quote{font-size:16px}.entrance .entrance-bell{min-height:63px;padding:6px;gap:5px}.entrance .bell-arrow{margin-left:3px}.entrance #entrance-action{font-size:13px}.entrance-signature{bottom:27px;font-size:8px}
 #room-dialog[data-room=music],#room-dialog[data-room=music][data-listening=true]{inset:auto 16px calc(12px + env(safe-area-inset-bottom)) 16px;width:auto;height:auto;max-height:calc(var(--visual-height,100dvh) - 85px);margin:0}
 #room-dialog[data-room=music] .room-inner{padding:0;max-height:inherit}#room-dialog[data-room=music] .room-header{padding:0 0 8px;gap:5px}#room-dialog[data-room=music] .room-header>div{padding:5px 9px;max-width:calc(100% - 93px);border-width:8px}#room-dialog[data-room=music] .room-header h1{font-size:25px}#room-dialog[data-room=music] .room-header .eyebrow{font-size:6px;letter-spacing:1px}#room-dialog .room-motion,#room-dialog .close-room{width:40px;height:44px;min-width:40px}#room-dialog[data-room=music] .room-content{overflow:visible}#room-dialog[data-room=music] .music-room{gap:8px;max-height:none}
 #room-dialog[data-room=music] .music-shelf{border-width:8px;border-image-width:12px}.music-shelf:after{width:106px;height:50px;right:-11px;top:-28px}.shelf-toolbar{padding-bottom:4px!important;gap:3px!important}.category-chips .garden-button{font-size:11px;border-width:5px;padding:2px 5px;min-height:40px}.category-chips{scroll-snap-type:x proximity}.category-chips button{scroll-snap-align:start}#room-dialog .picker-toggle{border-width:4px;min-height:40px;padding:2px 5px}#room-dialog .picker-toggle span{display:none}.picker-toggle .ui-icon{width:18px;height:18px}#room-dialog .album-picker{top:46px;width:100%}.album-picker input,.album-picker select{font-size:16px}
 #room-dialog .album-shelf{--cover-size:142px;gap:2px;height:222px;padding-top:6px;padding-bottom:5px}#room-dialog .album-label{font-size:12px;margin-top:8px}#room-dialog .album-choice .garden-tag{font-size:9px}#room-dialog .album-image{border-width:7px;border-image-width:8px}#room-dialog .shelf-prev,#room-dialog .shelf-next{width:34px;height:44px;border-width:5px;border-image-width:7px;top:32%}.shelf-prev{left:-20px}.shelf-next{right:-20px}.shelf-foot{font-size:10px;padding:6px 3px 1px;justify-content:center}.shelf-foot>span:last-child{display:none}
 #album-selection.music-console{border-width:8px;border-image-width:12px}#album-selection .console-inset{display:grid;grid-template-columns:minmax(0,1fr) 103px;gap:6px 8px;padding:3px 4px;border-width:8px;border-image-width:14px;min-height:0}.console-record{grid-column:1/-1;gap:9px}.console-cover{width:44px;height:44px;border-width:2px}.console-copy h2{font-size:17px;line-height:1.25;margin-bottom:4px}.console-copy .eyebrow{display:none}.console-copy .album-byline{font-size:10px}.favorite-album.round-button{width:33px;min-width:30px}#album-selection .playback{grid-column:1;grid-row:2}.playback .playback-row{gap:8px}.primary-play{width:48px;min-width:48px;height:48px;min-height:48px;border-width:7px;border-image-width:8px}.primary-play .ui-icon{width:23px;height:23px}.playback-row .round-button{width:34px;min-width:34px;height:44px}.playback-row .round-button .ui-icon{width:19px;height:19px}.progress-row{gap:5px;margin-top:4px;font-size:9px}.seek{height:24px}.console-actions{grid-column:2;grid-row:2;gap:3px}#album-selection .queue-more{font-size:12px;min-height:42px}.volume-control{justify-content:center}.volume-control input{width:55px}.volume-control .round-button{width:29px;min-width:26px}#album-selection .play-status{font-size:9px;margin-top:-2px}#album-selection .selection-empty{display:block;min-height:74px}.selection-empty strong{font-size:19px}.selection-empty span{font-size:12px;line-height:1.4}
 #track-queue.playlist-drawer{position:fixed;inset:auto 0 0;width:100vw;height:min(77dvh,calc(var(--visual-height,100dvh) - 22px));height:min(77dvh,calc(var(--visual-height,100dvh) - 22px));max-height:calc(var(--visual-height,100dvh) - 22px);border-width:10px 7px 0;border-image-width:13px 11px 0;margin:0;box-shadow:0 -9px 40px #261a1255;animation:ledger-unfold .25s ease-out;z-index:20}
 #track-queue .ledger-inset{border-width:12px 13px 0;border-image-width:20px 22px 0;padding:0 5px calc(10px + env(safe-area-inset-bottom));display:flex;height:100%;min-height:0}.sheet-handle{display:block;width:64px;height:24px;margin:-3px auto 4px;flex:none;cursor:grab;touch-action:none;border-bottom:3px solid #b09666}.ledger-header{padding:7px 0 12px;gap:12px}.ledger-header h2{font-size:21px;margin:5px 0}.ledger-header p{font-size:12px}.ledger-header .round-button{width:42px;height:44px}.ledger-tabs button{font-size:15px;min-height:45px}.ledger-tabs{gap:21px;flex:none}.queue-page{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;overscroll-behavior:contain}.sheet-transport{display:block;flex:none;padding:10px 5px 0;border-top:1px solid #9e82485c;margin-top:4px;background:#f2e3c3}.sheet-transport .playback-row{gap:32px}.sheet-transport .progress-row{margin-top:3px;font-size:11px}.sheet-transport .seek{height:30px}.sheet-transport .primary-play{width:52px;height:52px}.sheet-transport .round-button{width:48px}.sheet-transport .playback{margin:0}#track-queue .track-button{min-height:53px;padding:13px 8px}#track-queue .track-name{font-size:15px}
 #room-dialog[data-queue-open=true] .music-shelf,#room-dialog[data-queue-open=true] #album-selection{pointer-events:none;filter:brightness(.94)}
 #room-dialog[data-room=profile]{inset:auto 8px 12px;width:calc(100vw - 16px);height:min(77dvh,calc(var(--visual-height,100dvh) - 45px));margin:0;border-width:18px;border-image-width:24px}#room-dialog[data-room=profile] .room-header{padding:2px 0 13px}#room-dialog .room-header h1{font-size:24px}#room-dialog .room-header .eyebrow{font-size:7px}#room-dialog[data-room=profile] .profile-room{padding:0 4px 15px}.letter-salutation{font-size:22px;margin-bottom:18px}.profile-lead{display:block}.profile-portrait{float:left;width:52px;height:153px;margin:5px 18px 5px 3px}.profile-intro{font-size:23px!important}.profile-copy{font-size:16px;line-height:1.75}.profile-lead .eyebrow{font-size:8px}.profile-role{font-size:11px}.resume-list{display:block}.resume-list li{margin-bottom:18px}.letter-signature{font-size:17px}.contact-link{min-height:44px}
 #room-dialog[data-room=gallery]{inset:auto 8px 12px;width:calc(100vw - 16px);height:min(82dvh,calc(var(--visual-height,100dvh) - 45px));margin:0;border-width:12px;border-image-width:17px}#room-dialog[data-room=gallery] .room-inner{border-width:9px;border-image-width:15px}#room-dialog[data-room=gallery] .room-header{padding:1px 1px 9px;gap:5px}#room-dialog[data-room=gallery] .room-header h1{font-size:22px}.gallery-room{padding:1px 2px 15px}.media-heading{gap:9px;margin-bottom:19px}.media-heading>p{font-size:12px}.media-tabs button{font-size:14px;padding:4px 10px}.gallery-grid{column-count:2;column-gap:13px}.gallery-pin{padding:5px 5px 10px;margin-bottom:18px}.gallery-pin>small{font-size:11px}.gallery-pin:before{width:27px;height:11px}.video-grid{gap:17px 10px}.video-card>strong{font-size:12px}.video-caption{font-size:12px}.lightbox figure{border-width:13px;border-image-width:21px}.lightbox figcaption{padding:12px}.daily-dialog{border-width:17px;border-image-width:24px}
}
@media(max-height:700px) and (max-width:700px){#room-dialog .album-shelf{--cover-size:110px;height:179px}.shelf-foot{display:none}.console-cover{width:37px;height:37px}.console-copy h2{font-size:15px}#album-selection .console-inset{gap:3px 6px}.room-header .eyebrow{display:none}.sheet-transport .primary-play{width:44px;height:44px;min-height:44px}}
@media(max-height:530px) and (orientation:landscape){#room-dialog[data-room=music],#room-dialog[data-room=music][data-listening=true]{inset:auto 18px 10px;width:calc(100vw - 36px);max-height:calc(var(--visual-height,100dvh) - 18px)}#room-dialog[data-room=music] .room-header{padding-bottom:3px}#room-dialog[data-room=music] .room-header>div{padding:1px 9px;border-width:7px}#room-dialog[data-room=music] .room-header h1{font-size:23px}#room-dialog[data-room=music] .room-header .eyebrow{display:none}#room-dialog[data-room=music] .music-room{gap:4px}#room-dialog .album-shelf{--cover-size:103px;height:154px;padding-block:1px}#room-dialog .album-label{font-size:10px;margin-top:5px}#room-dialog .album-choice .garden-tag{display:none}.shelf-toolbar{padding-bottom:2px!important}.shelf-foot{display:none}.category-chips .garden-button{min-height:34px}#album-selection .console-inset{min-height:89px;padding:0 4px;gap:7px;grid-template-columns:minmax(185px,1.2fr) minmax(175px,1fr) 115px}.console-copy h2{font-size:15px}.console-cover{width:42px;height:42px}.primary-play{min-width:44px;min-height:44px;width:44px;height:44px}.console-copy .eyebrow{display:none}#album-selection .play-status{display:none}#track-queue.playlist-drawer{height:calc(var(--visual-height,100dvh) - 20px);bottom:0;right:0}#room-dialog[data-room=profile],#room-dialog[data-room=gallery]{height:calc(var(--visual-height,100dvh) - 20px);max-height:none;bottom:10px}.masthead{padding:10px 18px}.garden-settings{top:100px}.top-nav small{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}.album-choice,.scene-world,.garden-button{transition:none!important}#track-queue.playlist-drawer{animation:none}}
body[data-still=true] .album-choice,body[data-still=true] .garden-button{transition:none}body[data-page-hidden=true] *,body[data-still=true] *{animation-play-state:paused!important}
/* QA correction: the inherited grid aligned children to start at max-content. */
#room-dialog[data-room=music] .music-room{align-items:stretch}
#room-dialog[data-room=music] .music-shelf{width:100%;align-self:stretch}
#room-dialog .album-shelf{width:100%;max-width:100%}
#room-dialog .album-image{margin:0}
body[data-room]:not([data-room='']) .masthead .top-nav{visibility:hidden}
#room-dialog>.room-nav{position:fixed;top:25px;right:92px;left:auto;bottom:auto;margin:0;z-index:30}
@media(max-width:1100px) and (min-width:701px){#room-dialog>.room-nav{right:20px;top:18px}}
@media(max-width:700px){#room-dialog>.room-nav{display:none}}
@media(max-height:530px) and (orientation:landscape){#room-dialog>.room-nav{display:none}}
/* Reference refinement: honey wood edges, garden air between record sleeves. */
:root{--garden-shadow:0 2px 2px #54320b35,0 10px 18px #35200c38}
.wordmark{position:relative;border-image:var(--wood-image) 80 / 12px;background:var(--paper-image) center/100% 100% no-repeat;color:#4c321a;text-shadow:none}.wordmark small{color:#775335}
.top-nav:after,.music-shelf:after{background-size:contain;filter:drop-shadow(1px 3px 2px #251a0c66)}
.top-nav:before,.wordmark:after,#room-dialog .music-shelf:before,#album-selection:after,#room-dialog[data-room=gallery]:before,#room-dialog[data-room=gallery]:after,#room-dialog[data-room=profile]:before{content:'';position:absolute;pointer-events:none;z-index:5;background:var(--garland) center/contain no-repeat;filter:drop-shadow(1px 3px 2px #34260f70)}
.top-nav:before{width:120px;height:42px;left:-25px;bottom:-19px;transform:rotate(10deg)}.top-nav:after{width:150px;height:53px;right:-28px;top:-19px;transform:rotate(173deg)}
.wordmark:after{width:92px;height:34px;right:-25px;bottom:-17px;transform:rotate(-30deg)}
#room-dialog[data-room=music] .music-shelf{border-image:var(--wood-image) 80 / 13px stretch;background:transparent;box-shadow:0 7px 8px #39250e42,inset 0 -7px 20px #32210d24}
#room-dialog .shelf-toolbar{border:7px solid transparent;border-image:var(--wood-image) 80 fill / 9px;padding:0 3px!important;margin:-7px -7px 0;min-height:48px}
#room-dialog .shelf-foot{border:6px solid transparent;border-image:var(--wood-image) 80 fill / 7px;margin:0 -6px -5px;padding:3px 4px;color:#f5ddb0}
#room-dialog .music-shelf:before{width:175px;height:63px;left:-29px;bottom:-26px;transform:rotate(4deg)}
#room-dialog .music-shelf:after{width:155px;height:56px;right:-29px;top:-19px;transform:rotate(177deg)}
#album-selection:after{width:155px;height:53px;right:-25px;bottom:-21px;transform:rotate(-4deg)}
#room-dialog .album-label,#room-dialog .album-choice[aria-pressed=true] .album-label{color:#fff0c8;text-shadow:0 1px 3px #231506,0 0 9px #2d1c0d;font-weight:400}
#room-dialog .album-image:after{content:'';position:absolute;bottom:-12px;right:-12px;width:62px;height:25px;background:var(--garland) center/contain no-repeat;filter:drop-shadow(1px 2px 1px #34231388);pointer-events:none}
#room-dialog .album-choice:nth-child(even) .album-image:after{right:auto;left:-12px;transform:scaleX(-1)}
#room-dialog .album-choice[aria-pressed=true] .album-image:after{width:90px;height:32px;bottom:-16px;right:-17px}
#room-dialog[data-room=gallery]:before{width:200px;height:76px;left:-44px;top:-24px;transform:rotate(163deg)}#room-dialog[data-room=gallery]:after{width:170px;height:65px;right:-37px;bottom:-21px;transform:rotate(-18deg)}
#room-dialog[data-room=profile]:before{width:148px;height:53px;left:-39px;top:-28px;transform:rotate(176deg)}
#room-dialog[data-room=profile]{filter:drop-shadow(2px 3px 2px #8c71395c) drop-shadow(0 15px 20px #2f1d0f45)}
#room-dialog[data-room=music] .room-header>div{box-shadow:0 3px 0 #4d2e1b55,0 7px 12px #38220d3d}
@media(min-width:1101px){#room-dialog[data-room=music],#room-dialog[data-room=music][data-listening=true]{width:min(1050px,69vw);right:15vw;bottom:9vh}#room-dialog .album-shelf{--cover-size:clamp(160px,12.2vw,205px);height:calc(var(--cover-size) + 63px);padding-top:4px;padding-bottom:2px}#room-dialog .album-label{font-size:13px;margin-top:9px;margin-bottom:5px}#room-dialog .shelf-foot{font-size:10px}#album-selection .console-inset{min-height:106px;padding:1px 5px;gap:7px 10px}#track-queue.playlist-drawer{right:max(-222px,calc(20px - 15vw));bottom:142px;width:315px;height:370px}#room-dialog[data-queue-open=true] .album-shelf{mask-image:linear-gradient(to right,black 80%,transparent 99%)} }
@media(max-width:700px){.wordmark{background-size:100% 100%;border-image-width:9px}.wordmark:after{width:74px;height:29px;right:-19px;bottom:-15px}.top-nav:before{width:80px;height:28px;bottom:-12px;left:-13px}.top-nav:after{width:94px;height:36px;top:-13px;right:-18px}#room-dialog .music-shelf:before{width:97px;height:35px;bottom:-16px;left:-17px}#room-dialog .music-shelf:after{width:83px;height:33px;right:-14px;top:-12px}#room-dialog .shelf-toolbar{margin:-4px -4px 0;border-width:5px;min-height:42px}#room-dialog .shelf-foot{padding:1px 3px}#album-selection:after{width:90px;height:33px;right:-12px;bottom:-12px}#room-dialog .album-label{font-size:12px}#room-dialog .album-image:after{width:45px;height:20px}#room-dialog .album-choice[aria-pressed=true] .album-image:after{width:65px;height:25px}#room-dialog[data-room=gallery]:before{width:96px;height:37px;left:-27px;top:-15px}#room-dialog[data-room=gallery]:after{width:100px;height:39px;right:-24px;bottom:-18px}#room-dialog[data-room=profile]:before{width:100px;height:37px;left:-30px;top:-25px}}
/* A real painted circular button, shared by transport and close controls. */
.round-button,.primary-play,.garden-settings>summary,#room-dialog .close-room,#room-dialog .room-motion,#room-dialog .shelf-prev,#room-dialog .shelf-next{border:0;border-image:none;background:transparent url('./assets/ui/round-button.webp') center/100% 100% no-repeat;box-shadow:none;filter:drop-shadow(1px 3px 2px #38240f44);border-radius:50%;padding:9px}
.round-button:hover,.primary-play:hover,#room-dialog .close-room:hover{background:transparent url('./assets/ui/round-button.webp') center/100% 100% no-repeat;filter:brightness(1.12) drop-shadow(1px 3px 2px #38240f44)}
.primary-play{background-size:100% 100%;padding:12px}.playback-row .round-button,.volume-control .round-button,.favorite-album.round-button{background:none;filter:none;box-shadow:none}.playback-row .round-button:hover,.volume-control .round-button:hover,.favorite-album.round-button:hover{background:none;filter:brightness(.85)}
/* User review: brighter honey wood; translucent vellum shows the garden softly.
   Only the backdrop/material layer is translucent. Text and fixtures stay opaque. */
:root{--wood-image:url('./assets/ui/wood-panel-light.webp');--vellum:#faf0d0ad;--vellum-blur:7px;--garland:url('./assets/ui/garden-garland.webp')}
.top-nav{color:#54341a}.top-nav button{color:#50351d;text-shadow:0 1px #f8e7ba}.top-nav button .ui-icon{filter:opacity(.83)}.top-nav small{color:#755734;opacity:1}.top-nav button.is-active{color:#4b351c}
#room-dialog[data-room=music] .room-header>div{color:#55361c;text-shadow:0 1px #f3d7a2}
.category-chips .garden-button[aria-pressed=true]{color:#492f19;box-shadow:inset 0 -2px #8c9b5b}
#room-dialog .shelf-foot{color:#503923;text-shadow:0 1px #f6dfa8}
#album-selection.music-console,#track-queue.playlist-drawer{border-image:var(--wood-image) 80 / 13px stretch;background:none}
#album-selection .console-inset,#track-queue .ledger-inset{position:relative;isolation:isolate;border-image:var(--paper-image) 154 / 16px stretch;background:var(--vellum);backdrop-filter:blur(var(--vellum-blur));-webkit-backdrop-filter:blur(var(--vellum-blur))}
#album-selection .console-inset:before,#track-queue .ledger-inset:before{content:'';position:absolute;inset:-2px;z-index:-1;pointer-events:none;background:var(--paper-image) center/100% 100% no-repeat;opacity:.16}
#track-queue .sheet-transport{background:#f6e9c493;border-color:#8c723e60}
#room-dialog[data-room=profile]{border-image:var(--paper-image) 154 / 36px stretch;background:#fcf2d7bf;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
#room-dialog[data-room=gallery]{border-image:var(--wood-image) 80 / 23px stretch;background:#edd9b59c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
#room-dialog[data-room=gallery] .room-inner{border-image:var(--paper-image) 154 / 28px stretch;background:#faeed236}
.daily-dialog{border-image:var(--paper-image) 154 / 28px stretch;background:#fbefd4b8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
#room-dialog[data-queue-open=true] .music-shelf,#room-dialog[data-queue-open=true] #album-selection{opacity:1;filter:none}
#room-dialog .album-image{box-shadow:0 2px 2px #4d2e1755,2px 8px 12px #1f140b55}
#room-dialog .album-picker{background:#f9edcfdd;border-image:var(--paper-image) 154 / 18px;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.mini-player{border-image:var(--wood-image) 80 / 13px;background:#f7e7c5c9;color:#52371e;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.mini-player .mini-copy small,.mini-player .mini-copy>span{color:#7a603d}.mini-details{color:#49331c}
@supports not (backdrop-filter:blur(1px)){#album-selection .console-inset,#track-queue .ledger-inset{background:#f9edcedf}}
@media(prefers-reduced-transparency:reduce){#album-selection .console-inset,#track-queue .ledger-inset,#room-dialog[data-room=profile],#room-dialog[data-room=gallery],.daily-dialog,.mini-player{background:#f5e8ca;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(max-width:700px){:root{--vellum:#fff3d5a6;--vellum-blur:5px}#track-queue .ledger-inset{border-image-width:20px 22px 0}#room-dialog[data-queue-open=true] .music-shelf,#room-dialog[data-queue-open=true] #album-selection{visibility:hidden}#room-dialog[data-room=profile]{border-image-width:24px}#room-dialog[data-room=gallery]{border-image-width:17px}}
/* Keep small text readable even against the darkest garden scene. */
:root{--vellum:#fff3d5c2}
#track-queue .track-button,#track-queue .track-name,#track-queue .track-duration,#track-queue .track-index,.ledger-header p,.ledger-header small,.ledger-tabs button,.progress-row,#album-selection .play-status,.console-copy .album-byline{color:#51391f;opacity:1}
#track-queue .track-button[aria-pressed=true]{background:#a7ac696b;color:#362911}
#track-queue .track-button:disabled{opacity:1;color:#746448}
@media(max-width:700px){:root{--vellum:#fff3d5c2}#room-dialog[data-queue-open=true] .room-header{visibility:hidden}}

/* Keep the top-layer navigation viewport anchored: blur only inner materials. */
#room-dialog[data-room=profile],#room-dialog[data-room=gallery]{filter:none;backdrop-filter:none;-webkit-backdrop-filter:none;background:none;box-shadow:2px 3px 3px #67451e3b,0 15px 25px #291b1140}
#room-dialog[data-room=profile]>.room-inner{background:#fcf2d7cf;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
#room-dialog[data-room=gallery]>.room-inner{background:#f9edced4;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.note-story{pointer-events:auto}
/* Transparent painted L corners put flowers on rims, away from live text. */
:root{--vine-corner:url('./assets/ui/vine-corner.webp')}
.top-nav:before,.top-nav:after,.wordmark:after,#room-dialog .music-shelf:before,#room-dialog .music-shelf:after,#album-selection:after,#room-dialog[data-room=gallery]:before,#room-dialog[data-room=gallery]:after,#room-dialog[data-room=profile]:before{background-image:var(--vine-corner);filter:drop-shadow(1px 3px 2px #30220d70)}
.top-nav:before{width:78px;height:78px;left:-20px;bottom:-21px;transform:rotate(-90deg)}.top-nav:after{width:90px;height:90px;right:-21px;top:-22px;transform:rotate(90deg)}
.wordmark:after{width:70px;height:70px;right:-17px;bottom:-17px;transform:rotate(180deg)}
#room-dialog .music-shelf:before{width:120px;height:120px;left:-26px;bottom:-29px;transform:rotate(-90deg)}
#room-dialog .music-shelf:after{width:112px;height:112px;right:-25px;top:-24px;transform:rotate(90deg)}
#album-selection:after{width:100px;height:100px;right:-25px;bottom:-26px;transform:rotate(180deg)}
#room-dialog .album-image:after{background-image:var(--vine-corner);width:54px;height:54px;right:-14px;bottom:-14px;transform:rotate(180deg)}
#room-dialog .album-choice:nth-child(even) .album-image:after{left:-14px;right:auto;transform:rotate(-90deg)}
#room-dialog .album-choice[aria-pressed=true] .album-image:after{width:77px;height:77px;right:-19px;bottom:-19px}
#room-dialog[data-room=profile]:before{width:140px;height:140px;left:-46px;top:-46px;transform:none}
#room-dialog[data-room=gallery]:before{width:155px;height:155px;left:-42px;top:-40px;transform:none}
#room-dialog[data-room=gallery]:after{width:133px;height:133px;right:-34px;bottom:-35px;transform:rotate(180deg)}
@media(max-width:700px){.top-nav{transform:none}.top-nav:before,.top-nav:after{width:62px;height:62px}.wordmark:after{width:59px;height:59px}#room-dialog .music-shelf:before,#room-dialog .music-shelf:after{width:74px;height:74px;left:-19px;bottom:-20px}#room-dialog .music-shelf:after{left:auto;right:-18px;top:-19px;bottom:auto}#album-selection:after{width:65px;height:65px;right:-16px;bottom:-18px}#room-dialog .album-image:after{width:43px;height:43px}#room-dialog .album-choice[aria-pressed=true] .album-image:after{width:54px;height:54px}#room-dialog[data-room=profile]:before{width:87px;height:87px;left:-32px;top:-33px}#room-dialog[data-room=gallery]:before{width:87px;height:87px;left:-29px;top:-28px}#room-dialog[data-room=gallery]:after{width:77px;height:77px;right:-26px;bottom:-26px}}
@media(prefers-reduced-transparency:reduce){#room-dialog[data-room=profile]>.room-inner,#room-dialog[data-room=gallery]>.room-inner{background:#f5e8ca;backdrop-filter:none;-webkit-backdrop-filter:none}}

body[data-world-offscreen=true] .scene-world *{animation-play-state:paused!important}

/* A short landscape phone uses the same independent sheet, not a desktop ledger. */
@media(max-width:1000px) and (max-height:530px){
 #room-dialog .album-shelf{--cover-size:90px;height:136px}
 #album-selection .console-inset{min-height:76px}
 #track-queue.playlist-drawer{position:fixed;inset:8px 10px 10px;width:calc(100vw - 20px);height:calc(var(--visual-height,100dvh) - 18px);max-height:none;z-index:20}
 #track-queue .ledger-inset{display:flex;flex-direction:column;height:100%;min-height:0;padding:0 8px 2px;border-width:9px;border-image-width:14px}
 .ledger-header{padding:0 0 5px;gap:10px}.ledger-header h2{font-size:19px;margin:3px 0}.ledger-header p{font-size:11px}.ledger-header .round-button{width:44px;height:44px}
 .ledger-tabs{margin:0 0 3px}.ledger-tabs button{min-height:40px;padding:6px 0}
 .queue-page{flex:1;min-height:0;overflow-y:auto}.sheet-transport{display:block;flex:none;padding:4px 5px 0;border-top:1px solid #9e82485c;margin-top:3px}
 .sheet-transport .playback-row{gap:34px}.sheet-transport .primary-play{width:44px;height:44px;min-height:44px}.sheet-transport .progress-row{margin-top:0}.sheet-transport .seek{height:25px}
 #room-dialog[data-queue-open=true] .music-shelf,#room-dialog[data-queue-open=true] #album-selection,#room-dialog[data-queue-open=true] .room-header{visibility:hidden}
}

.media-tabs button[aria-pressed=true]{color:#49321b;text-shadow:0 1px #f6dcae}.gallery-pin>small,.gallery-count,.media-heading>p{color:#654b2b}

#room-dialog[data-room=gallery] .room-content,#room-dialog[data-room=profile] .room-content{overflow-x:hidden}
body[data-day-phase=night] .wordmark{color:#4c321a}.entrance .entrance-bell,.entrance .bell-arrow,.gallery-more{color:#49321b;text-shadow:0 1px #f6dcae}

.playlist-drawer:after{content:'';position:absolute;pointer-events:none;z-index:22;width:78px;height:78px;left:-21px;top:-21px;background:var(--vine-corner) center/contain no-repeat;filter:drop-shadow(1px 3px 2px #30220d70)}
@media(max-width:700px){.playlist-drawer:after{width:57px;height:57px;left:-13px;top:-15px}}
@media(min-width:701px) and (max-width:1100px){.favorite-album.round-button{display:flex!important;flex:none}}
