#song-request-dialog.sanctuary-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;background:#120c1b;color:#f3edf5;overflow:auto;scroll-behavior:smooth}
#song-request-dialog .request-close{position:fixed;top:15px;right:18px;z-index:12;width:46px;height:46px;border:1px solid #b78e56;background:#17121eee;color:#f3dcb0;border-radius:50%;font-size:26px}
#song-request-dialog .request-section{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(370px,1fr);align-items:start;padding:0;gap:0;background:transparent}
#song-request-dialog .request-intro{position:sticky;top:0;min-height:100dvh;overflow:hidden;background:#17101f;display:flex;flex-direction:column;justify-content:end}
.sanctuary-scene{position:absolute;inset:0;background:url('assets/studio-will-mixing-headphones.png') center/cover}
.sanctuary-scene canvas{display:block;width:100%;height:100%}.sanctuary-scene.sanctuary-still canvas{display:none}
.sanctuary-controls{position:absolute;top:18px;left:18px;right:70px;z-index:3;display:flex;flex-wrap:wrap;gap:7px}
.sanctuary-controls button{border:1px solid #b18c595f;background:#17121ed9;color:#f0d8af;padding:10px 13px;min-height:44px;border-radius:4px;font-size:14px}.sanctuary-controls button:disabled{opacity:.5;cursor:default}
.sanctuary-copy{position:relative;padding:24px 6% 30px;pointer-events:none;background:linear-gradient(0deg,#100919ef,#100919a0 78%,transparent)}
#song-request-dialog .sanctuary-copy h2{font:500 clamp(28px,3.1vw,45px)/1.12 Georgia,serif;color:#f6e2be;margin:8px 0}
#song-request-dialog .sanctuary-copy p{font-size:16px;line-height:1.55;color:#e6d9ee;max-width:42ch;margin:7px 0}.sanctuary-copy .eyebrow{color:#e0bd83!important;letter-spacing:.13em;font-size:14px!important}.sanctuary-selection{color:#ebce9d!important}
#song-request-dialog .request-form{min-width:0;background:#120c1b;border:0;padding:75px clamp(22px,3.3vw,52px) 24px}
#song-request-dialog .request-stages{display:flex;gap:8px;flex-wrap:wrap;padding:14px 0;margin:0;border-bottom:1px solid #49364f}
#song-request-dialog .request-stages li{flex:1;min-width:62px;font-size:14px;color:#b8a8c3}#song-request-dialog .request-stages li[aria-current]{color:#f1ce93}
#song-request-dialog #request-step-label{font-size:14px;color:#dfbd84;margin-top:24px}
#song-request-dialog .request-step{padding:30px 0 56px;min-height:65dvh;border-bottom:1px solid #49364f;scroll-margin-top:90px}
.sanctuary-chapter{font:500 26px/1.2 Georgia,serif;color:#e6c695;margin:0 0 28px}
#song-request-dialog .form-grid,#song-request-dialog .essentials-grid{grid-template-columns:1fr;gap:22px}
#song-request-dialog .form-grid label{color:#f3edf7;font-size:16px}#song-request-dialog .form-grid label small{font-size:14px;color:#c6b6cf}
#song-request-dialog .form-grid :is(input:not([type=checkbox]),select,textarea){border-color:#685075;background:#20152c;color:#fbf6ff;border-radius:5px;min-height:52px;font-size:16px}
#song-request-dialog .song-essentials{border-color:#685075;background:transparent;padding:18px}#song-request-dialog .song-essentials p{font-size:16px;color:#cfc1d8}
#song-request-dialog .button{background:#e3bd80;border-color:#e3bd80;color:#1b1125;font-size:14px;white-space:normal;min-height:48px}
#song-request-dialog .request-actions{position:sticky;bottom:0;z-index:4;padding:18px 0;background:#120c1bf5}#song-request-dialog #request-back{color:#e6c58e;font-size:16px;min-height:44px}
#song-request-dialog #request-status{font-size:16px;color:#edcca0}#song-request-dialog #request-status.error{color:#ffc0bf}
.creation-review{padding:36px 0;scroll-margin-top:100px;outline:none}.creation-review h3{font:500 28px/1.2 Georgia,serif;color:#f2d9ad}.creation-review p{font-size:16px;line-height:1.6;color:#d4c5df}
#creation-summary{margin-top:24px;border-top:1px solid #594164}#creation-summary dt{font-size:14px;color:#d7b883;margin-top:19px}#creation-summary dd{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;color:#f3edf7;font-size:16px;padding-bottom:17px;border-bottom:1px solid #392b43}
#review-edit{padding:12px 16px;border:1px solid #b18c59;background:transparent;color:#edcca0;min-height:44px;font-size:16px}
.sanctuary-process{border-top:1px solid #49364f;padding:22px 0;line-height:1.6;font-size:16px;color:#d4c5df}.sanctuary-process summary{color:#edcca0;cursor:pointer;padding:9px 0;min-height:44px}.sanctuary-process ol{padding-left:22px}.sanctuary-process li{margin:16px 0}.sanctuary-process strong{display:block;color:#ede2f5}
.sanctuary-preview-note{padding:14px;border:1px solid #896435;color:#f0d3a0;font-size:14px;line-height:1.5;margin-bottom:18px}
#song-request-dialog #request-success{padding:100px 32px;font-size:18px;align-self:center}
@media(max-width:800px){#song-request-dialog .request-section{display:block}#song-request-dialog .request-intro{height:44dvh;min-height:320px;z-index:6;border-bottom:1px solid #85613e;pointer-events:none}.sanctuary-controls{pointer-events:auto;top:12px;left:12px;gap:5px}.sanctuary-controls button{padding:8px 10px;font-size:14px}.sanctuary-copy{padding:16px 20px 14px}#song-request-dialog .sanctuary-copy h2{font-size:24px;margin:5px 0}#song-request-dialog .sanctuary-copy p{font-size:14px;line-height:1.4;margin:4px 0}.sanctuary-selection{display:none}.sanctuary-copy .eyebrow{font-size:12px!important}#song-request-dialog .request-form{padding:20px}#song-request-dialog .request-step{scroll-margin-top:max(340px,46dvh);min-height:55dvh}.creation-review{scroll-margin-top:max(340px,46dvh)}#song-request-dialog .request-close{top:10px;right:10px;width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){#song-request-dialog{scroll-behavior:auto!important}}

.request-intro[data-studio-stage="0"] .sanctuary-scene.sanctuary-still,.request-intro[data-studio-stage="3"] .sanctuary-scene.sanctuary-still,.request-intro[data-studio-stage="4"] .sanctuary-scene.sanctuary-still{background-image:url('assets/brand-banner-caramel.webp')}
.request-intro[data-studio-stage="1"] .sanctuary-scene.sanctuary-still{background-image:url('assets/studio-will-writing.webp')}
.request-intro[data-studio-stage="2"] .sanctuary-scene.sanctuary-still{background-image:url('assets/studio-will-mixing-headphones.png')}
.sanctuary-scene.sanctuary-still{background-size:contain;background-repeat:no-repeat;background-color:#140f1d}

.request-intro[data-studio-stage="0"] .sanctuary-scene.sanctuary-still{background-image:url('assets/studio-opening-poster.webp')}

.sanctuary-scene:not(.sanctuary-still){background-image:none}
.sanctuary-native-media video{max-width:none}

/* Present the entire 16:9 media frame; mobile copy and controls have their own rows. */
.sanctuary-copy{z-index:2}
@media(max-width:800px){
 #song-request-dialog .request-intro{height:auto;min-height:0;display:flex;justify-content:flex-start}
 #song-request-dialog .sanctuary-scene{position:relative;inset:auto;width:100%;aspect-ratio:16/9;flex:none;order:0;overflow:hidden}
 #song-request-dialog .sanctuary-controls{position:relative;top:auto;left:auto;right:auto;order:1;padding:10px 14px;margin:0;background:#17101f}
 #song-request-dialog .sanctuary-copy{order:2;padding:8px 20px 12px}
 #song-request-dialog .request-step,#song-request-dialog .creation-review{scroll-margin-top:var(--sanctuary-mobile-offset,420px)}
}

.needed-date-control{display:flex;gap:8px;align-items:center}.needed-date-control input{flex:1;min-width:0;color-scheme:dark}.needed-date-control button{min-height:44px;padding:10px 12px;border:1px solid var(--gold);background:transparent;color:var(--gold);border-radius:6px;font:inherit;cursor:pointer}.needed-date-field .fine{font-size:14px;margin:8px 0 0}#revision-turnaround{font-size:14px;line-height:1.6}[data-theme="light"] .needed-date-control input{color-scheme:light}
