/* One selected artwork and its studio request composer share the visible area. */
html.has-gallery-request #pick { z-index: 34; background: rgb(12 10 8 / .56); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); perspective: 1200px; }
html.has-gallery-request #focus-tile { position: fixed; border-radius: 18px; overflow: hidden; box-shadow: 0 18px 65px #0005; transition: none; }
html.has-gallery-request #focus-tile img { object-fit: contain; width: 100%; height: 100%; display: block; }
html.has-gallery-request .focus-actions { display: none; }
html.has-gallery-request #pick-close { z-index: 2; top: max(16px,env(safe-area-inset-top)); right: 18px; }
html.has-gallery-request .wall-search { top: var(--request-search-top); left: var(--request-search-left); width: var(--request-search-width); z-index: 35; transform: translateX(-50%); opacity: 1; visibility: visible; pointer-events: auto; }
html.has-gallery-request .wall-actions, html.has-gallery-request .search-results, html.has-gallery-request .generator-balance, html.has-gallery-request #gen-note { display: none !important; }
html.has-gallery-request .wall-search-field { height: 54px; }
html.wall-root.has-gallery-request .wall-search input { height: 54px; padding: 0 58px 0 20px; font-size: 16px; color: #1c1610; background: rgba(255,252,247,.96); box-shadow: 0 0 0 1px #bba78875,0 12px 35px #0004; }
html.wall-root.has-gallery-request .wall-search input::placeholder { color: #756652; opacity: 1; }
html.has-gallery-request .wall-search-blur { background: transparent; opacity: 1; border: 1px solid #bba78875; border-radius: 28px; inset: 0; }
html.has-gallery-request .wall-search-icon { display: none; }
html.has-gallery-request #wall-generator { left: auto; right: 7px; top: 50%; transform: translateY(-50%); width: 42px; height: 42px; padding: 9px; min-width: 0; background: #1c16100f; color: #3a3228; border: 1px solid #1c161014; border-radius: 50%; }
html.has-gallery-request #wall-generator svg { display: block; transition: transform .3s ease; }
html.has-gallery-request #wall-generator:hover svg { transform: rotate(-12deg); }
.request-chat-controls { margin: 10px auto 0; text-align: center; color: #fff7e9; font: 13px/1.4 Inter,system-ui,sans-serif; max-height: max(125px,calc(var(--visible-height,100dvh) * .3)); overflow: auto; overscroll-behavior: contain; padding: 0 6px 8px; }
.request-chat-controls[hidden] { display: none; }
.request-question { margin: 0 0 8px; font-size: 14px; font-weight: 600; text-shadow: 0 1px 5px #0007; }
.request-bubbles { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; }
.request-chat-controls button, .request-chat-controls a { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 8px 15px; border: 1px solid #ead8b85c; border-radius: 22px; background: #241e19ed; color: #fff3df; font: inherit; text-decoration: none; cursor: pointer; }
.request-chat-controls .request-yes { background: #f8ead1; color: #302416; border-color: #f8ead1; font-weight: 600; }
.request-attachment { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 6px auto; max-width: 100%; }
.request-attachment img { width: 34px; height: 34px; border-radius: 8px; object-fit: cover; flex: 0 0 auto; }
.request-attachment span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 60%; }
.request-attachment button { min-height: 34px; padding: 5px 10px; font-size: 12px; }
.request-names { margin: 4px 0 9px; font-size: 11px; line-height: 1.4; }
.request-error { margin: 6px 0 9px; padding: 6px 10px; border-radius: 12px; background: #351e18f5; color: #ffd9b9; }
.request-chat-controls :focus-visible, html.has-gallery-request #wall-generator:focus-visible { outline: 2px solid #f3cd88; outline-offset: 3px; }
@media(prefers-reduced-motion:reduce){html.has-gallery-request #wall-generator svg{transition:none;}}
html.request-auth-depart .wall-search, html.request-auth-depart #pick-close { opacity: 0; pointer-events: none; }
html.request-auth-depart #pick { background: transparent; backdrop-filter: none; -webkit-backdrop-filter: none; }
