/* 1.1.9: a cover inhabits the scene; no panel and no inner text scroll. */
.catalogScene{--scene-accent:215 221 211;position:absolute;inset:0 0 auto;z-index:1;pointer-events:none;opacity:0;transition:opacity 620ms ease;overflow:hidden;color:#f7f5ed}
.catalogScene.active{opacity:1}
.catalogArt{position:absolute;inset:0;overflow:hidden;mask-image:linear-gradient(#000 0%,#000 58%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 58%,transparent 100%)}
.catalogArtFrame{position:absolute;inset:0;opacity:0;transition:opacity 680ms ease;overflow:hidden}
.catalogArtFrame.visible{opacity:1}
.catalogArtFrame img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%}
.catalogArt:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#050809c7 0%,#05080970 32%,#05080908 75%),linear-gradient(0deg,#0508098a 0%,transparent 53%,#05080935)}
.catalogScene.copyRight .catalogArt:after{background:linear-gradient(-90deg,#050809c7,#05080970 32%,#05080908 75%),linear-gradient(0deg,#0508098a,transparent 53%,#05080935)}
.catalogBreadcrumb{position:absolute;left:max(22px,env(safe-area-inset-left));right:95px;display:flex;gap:16px;align-items:center;pointer-events:auto;text-shadow:0 2px 14px #000}
.catalogBreadcrumb button,.catalogGroups button{appearance:none;border:0;border-radius:0;background:none;color:inherit;font:inherit;font-size:11px;line-height:1.4;letter-spacing:.05em;min-height:44px;padding:8px 0;cursor:pointer;touch-action:manipulation;text-align:left}
.catalogBreadcrumb button+button{opacity:.65;font-size:10px}
.catalogBreadcrumb button:focus-visible,.catalogGroups button:focus-visible{outline:2px solid rgb(var(--scene-accent));outline-offset:4px}
.catalogCopy{position:absolute;left:clamp(26px,6vw,112px);right:26px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;pointer-events:none;text-shadow:0 2px 18px #000a}
.catalogScene.copyRight:not(.mobile) .catalogCopy{left:auto;right:clamp(26px,6vw,112px)}
.catalogIdentityTitle{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-weight:900;font-stretch:condensed;line-height:1.02;letter-spacing:-.025em;text-transform:uppercase;overflow-wrap:anywhere;margin:0;max-width:100%;color:rgb(var(--scene-accent));text-shadow:0 4px 25px #0007}
.catalogDescription{max-width:46ch;margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.48;white-space:pre-line;overflow-wrap:anywhere;overflow:visible;flex-shrink:0}
.catalogCount{font-size:10px;line-height:1.5;letter-spacing:.1em;margin:2px 0 0;opacity:.72;flex-shrink:0}
.catalogGroups{position:absolute;right:max(22px,env(safe-area-inset-right));width:min(180px,calc(50% - 24px));pointer-events:auto}.catalogGroups select{width:100%;min-height:44px;border:0;border-bottom:1px solid #ffffff38;border-radius:0;background:transparent;color:inherit;padding:8px 0;font-size:11px;cursor:pointer;text-shadow:0 1px 8px #000}.catalogGroups option{color:#eee;background:#101113}.catalogGroups[hidden]{display:none}
.catalogCopy [hidden]{display:none}
.catalogUniverse .captionArea #title{visibility:hidden}
.app #cubeScene,.app>.takeBreak,.hero>.eyebrow,#partnerWidget{transition:opacity 620ms ease,visibility 620ms}
.app.catalogUniverse #cubeScene,.app.catalogUniverse>.takeBreak,.app.catalogUniverse .hero>.eyebrow,.app.catalogUniverse #partnerWidget{opacity:0;visibility:hidden;pointer-events:none!important}
.breakActive .app.catalogUniverse #cubeScene{opacity:1;visibility:visible}
.breakActive .catalogScene{opacity:0;pointer-events:none}.breakActive .catalogBreadcrumb,.breakActive .catalogGroups{pointer-events:none}
.catalogScene:not(.active) .catalogBreadcrumb,.catalogScene:not(.active) .catalogGroups{pointer-events:none}
.app:has(#rail.catalogChanging) .catalogCopy{opacity:0;transform:translateY(5px)}
.catalogCopy{transition:opacity 180ms ease,transform 350ms ease}
@media(max-width:600px){.catalogCopy{left:max(26px,env(safe-area-inset-left));right:max(26px,env(safe-area-inset-right));gap:8px}.catalogDescription{max-width:none}.catalogScene.compact .catalogCopy{gap:6px}.catalogArt:after,.catalogScene.copyRight .catalogArt:after{background:linear-gradient(0deg,#050809b3 5%,#050809ad 62%,#05080930 100%),linear-gradient(90deg,#05080970,transparent 90%)}.catalogIdentityTitle{letter-spacing:-.02em}}
@media(prefers-reduced-motion:reduce){.catalogScene,.catalogArtFrame,.app #cubeScene,.catalogCopy,.app>.takeBreak,.hero>.eyebrow,#partnerWidget{transition-duration:1ms}}
.identitySettings{margin:10px 0;border-top:1px solid #ffffff20;padding-top:8px}.identitySettings>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:13px}
.studioImage.universe{width:min(100%,234px);height:382px;border-radius:4px}.studioImage.universe:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 50%,#090b0d 100%)}
.conflictNotice{margin:12px 0;padding:14px;border:1px solid #ecd07080;border-radius:10px;background:#ecd0700c;font-size:13px;line-height:1.5}.conflictNotice p{margin:0 0 8px}.conflictNotice[hidden]{display:none}
.conflictComparison{padding:12px 0;border-top:1px solid #ccc;overflow-wrap:anywhere}.conflictComparison pre{max-height:180px;overflow:auto;font:12px/1.5 monospace}.conflictComparison label{padding:8px 0}.conflictComparison select{max-width:100%;min-height:44px;padding:8px;background:#fffdf4;color:#171612}

.projectIntroduction{max-width:50ch;margin:18px auto;white-space:pre-line;line-height:1.6}

#adminLayer #studioConflictShortcut{font-size:11px;padding:6px 10px;margin-top:6px;min-height:44px;border-color:#ecd07080;color:#f3e3a1}#studioConflictShortcut[hidden]{display:none}

.previewDialog{max-width:680px;width:calc(100% - 24px)}.previewDialog video.previewPicker{width:100%;max-height:36vh;object-fit:contain}.previewStage{display:flex;gap:12px;align-items:center;justify-content:center}.previewSource{width:120px;max-height:100px;object-fit:contain}.previewCanvas{width:160px;max-width:45%;height:auto}.previewDialog progress{width:100%;margin:12px 0}.previewBatchRow{display:flex;gap:10px;align-items:center;margin:12px 0;font-size:13px}.previewBatchRow input{width:auto;flex-shrink:0}.previewSettings{border-top:1px solid #8884;padding:10px 0}.previewSettings select{max-width:100%;min-height:44px}

.previewDialog img.previewPicker{width:100%;max-height:36vh;object-fit:contain}
