/* SOURCE design contract: every visible text computes to >= 15px. */
:root{font-size:16px;--atelier-paper:#e7e2d5;--atelier-muted:#a7aba2;--atelier-line:#a8b5a12e}
#original-gate{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:18px;padding:36px;white-space:pre-line;font-size:18px;line-height:1.9;color:#c4c9bd;text-align:center}#original-gate[hidden]{display:none}#original-gate p{margin:0}#original-gate button{min-height:44px;padding:10px 18px;font-size:16px;color:#e7e2d5;background:#18221c;border:1px solid #728267}#source-evidence{font-size:15px;color:#c6cdba}button:disabled{opacity:.45;cursor:not-allowed}
body{font-size:16px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,canvas:focus-visible{outline:2px solid #d4d8bc;outline-offset:5px}
.atelier{position:fixed;inset:72px 0 0;z-index:4;display:grid;grid-template-columns:minmax(0,1fr) 310px;grid-template-rows:auto auto minmax(0,1fr);padding:28px 4vw 36px;gap:20px 32px;background:#101512;color:var(--atelier-paper);overflow:auto}
.atelier-intro{grid-column:1;max-width:650px;pointer-events:none}.eyebrow{font-size:15px;letter-spacing:.13em;color:#b6bda8;margin:0 0 18px}.atelier h1{font-family:"Songti SC","STSong",Georgia,serif;font-size:clamp(30px,3.8vw,58px);font-weight:400;letter-spacing:-.03em;line-height:1.15;margin:0}.atelier-intro>p:last-child{max-width:490px;font-size:16px;line-height:1.8;color:var(--atelier-muted);margin:16px 0 0}
.atelier-tabs{grid-column:1;grid-row:2;display:flex;gap:24px;flex-wrap:wrap;border-bottom:1px solid var(--atelier-line);padding-bottom:12px}.atelier-tabs button{font-size:15px;background:none;color:#a6ada1;padding:8px 0;border:0;border-bottom:2px solid transparent}.atelier-tabs button[aria-pressed=true]{color:#f2edde;border-color:#c5cfad}.atelier-tabs button:last-child{margin-left:auto}
.artifact-stage{grid-column:1;grid-row:3;position:relative;min-height:300px;background:radial-gradient(ellipse at 50% 40%,#35483a4a,transparent 66%);overflow:hidden}.artifact-stage canvas{display:block;width:100%;height:100%;min-height:300px;cursor:grab}.artifact-stage canvas:active{cursor:grabbing}#artifact-guide{position:absolute;left:0;bottom:0;margin:0;color:#b5bcaa;font-size:15px;line-height:1.6;pointer-events:none}#focus-marker{display:none;position:absolute;width:28px;height:28px;border:1px solid #eee9d1;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%)}
.artifact-detail{grid-column:2;grid-row:1/4;align-self:start;border-left:1px solid var(--atelier-line);padding-left:28px;font-size:15px;line-height:1.75}.artifact-detail h2{font-size:24px;font-weight:400;line-height:1.45;margin:24px 0 10px}.artifact-detail p{color:var(--atelier-muted);font-size:15px}.artifact-detail label{display:block;margin:16px 0 8px}.artifact-detail select,.artifact-detail input{width:100%;min-height:46px;background:#1b231d;border:1px solid #66705a;color:var(--atelier-paper);padding:10px;font-size:15px}.artifact-detail a{color:#d5dec4;text-underline-offset:5px}.artifact-detail button{display:block;min-height:44px;width:100%;padding:10px 12px;border:1px solid #728267;background:transparent;color:#e5e9dc;font-size:15px;text-align:left;margin-top:12px}.artifact-detail button:hover{background:#34432e}.artifact-detail button.primary-action{background:#cbd5bc;color:#172014}.fidelity-note{border-top:1px solid var(--atelier-line);padding-top:20px}.artifact-detail [hidden]{display:none}.atelier[hidden]{display:none}#atelier-status{color:#dfe5c6;min-height:1.75em}#collection-list{max-height:200px;overflow:auto}.artifact-detail button[aria-pressed=true]{border-color:#e3e9d9;background:#303d2b}
body.atelier-open #source-field,body.atelier-open #cosmos-field,body.atelier-open .launch,body.atelier-open .form-status,body.atelier-open .signal-note,body.atelier-open .shortcut-note{visibility:hidden}body.atelier-open .product-bar{background:#101512;border-color:var(--atelier-line)}body.atelier-open .product-bar button,body.atelier-open .product-mark{color:#d4ddc8}body.atelier-open .player{z-index:7;left:4vw;bottom:22px;width:min(710px,calc(100vw - 390px));background:#152019f2}body.atelier-open .experience{z-index:6}body.atelier-open.is-playing .artifact-stage{padding-bottom:94px}
.mode span,.now-playing span,.atlas-group>header small{letter-spacing:0}.player{width:min(770px,65vw)}.launch{width:min(610px,48vw)}.track{grid-template-columns:34px 1fr auto}.form-choice{grid-template-columns:34px minmax(0,1fr) 5px}.atlas-panel>footer{grid-template-columns:1fr}.signal-note,.shortcut-note{bottom:8px}
@media(max-width:900px){.atelier{inset:60px 0 0;grid-template-columns:1fr;grid-template-rows:auto auto 390px auto;padding:24px 20px 30px;gap:20px}.atelier-intro{grid-column:1}.atelier h1{font-size:36px}.atelier-tabs{grid-column:1;gap:14px}.atelier-tabs button:last-child{margin-left:0}.artifact-stage{grid-row:3}.artifact-detail{grid-column:1;grid-row:4;border-left:0;border-top:1px solid var(--atelier-line);padding:20px 0 0}.product-mark span{display:none}.bar-actions{gap:8px}.product-bar{padding-left:14px;padding-right:14px}.quiet-button{min-width:38px;letter-spacing:0}.atelier-intro>p:last-child{max-width:540px}.launch{width:calc(100vw - 32px)}.player{width:calc(100vw - 24px)}body.atelier-open .player{left:12px;bottom:12px;width:calc(100vw - 24px);transform:none}body.atelier-open.is-playing .artifact-detail{padding-bottom:140px}body.atelier-open.is-playing .artifact-stage{padding-bottom:0}.atlas-group>header{gap:12px}.atlas-panel{padding:18px}.form-grid{grid-template-columns:1fr}}
body.sculpture-immersive .atelier{display:block;padding:0 5vw 120px}body.sculpture-immersive .atelier-intro,body.sculpture-immersive .atelier-tabs,body.sculpture-immersive .artifact-detail{display:none}body.sculpture-immersive .artifact-stage{height:100%;padding:0!important}body.sculpture-immersive #artifact-guide{left:0;bottom:20px}body.sculpture-immersive .player{width:min(770px,calc(100vw - 40px))}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
#reference-image{position:absolute;inset:0;display:block;width:100%;height:calc(100% - 56px);object-fit:contain;object-position:center;background:#151b17}
#reference-image[hidden]{display:none}
.collection-source-status{visibility:visible}
/* Museum-derived point colors must not be blended or desaturated by CSS. */
#cosmos-field[data-collection-active="true"]{mix-blend-mode:normal;filter:none;opacity:1}
#structure-controls{position:absolute;top:8px;left:8px;right:8px;display:flex;gap:8px;flex-wrap:wrap;z-index:2}
#structure-controls[hidden]{display:none}
#structure-controls button{font-size:15px;min-height:44px;padding:8px 14px;color:#e7e2d5;background:#152019e8;border:1px solid #728267;border-radius:3px}
#structure-controls button[aria-pressed=true]{background:#34432e;border-color:#e7e2d5}
body.atelier-open .collection-source-status{visibility:hidden}
#saved-collection{width:min(600px,calc(100vw - 32px));max-height:calc(100dvh - 48px);padding:28px;border:1px solid #728267;background:#101b18;color:#e7e2d5;font-size:16px;line-height:1.65;overflow:auto}
#saved-collection::backdrop{background:#020817b8;backdrop-filter:blur(8px)}
#saved-collection header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:1px solid var(--atelier-line);padding-bottom:18px}
#saved-collection h2{font-size:26px;font-weight:400;margin:0}#saved-collection .eyebrow{margin-bottom:8px}
#saved-collection p,#saved-collection label,#saved-collection footer{font-size:15px}#saved-collection>p,#saved-collection footer{color:#b6c2b4}
#saved-collection label{display:block;margin-bottom:8px}#saved-collection input{width:100%;min-height:46px;padding:10px 12px;font-size:16px;color:#e7e2d5;background:#1b2821;border:1px solid #728267}
#saved-collection button{font-size:15px;min-height:44px;padding:10px 14px;color:#e7e2d5;background:transparent;border:1px solid #728267}
#saved-collection button:hover{background:#34432e}#saved-collection footer{border-top:1px solid var(--atelier-line);padding-top:18px;margin-top:22px}
.saved-work{padding:20px 0;border-top:1px solid var(--atelier-line)}.saved-work h3{font-size:20px;font-weight:400;line-height:1.4;margin:0 0 8px;overflow-wrap:anywhere}.saved-work p{margin:5px 0;color:#b6c2b4}.saved-work button{margin-top:12px;width:100%;text-align:left}
@media(max-width:600px){.product-bar{gap:12px}.product-mark{flex-shrink:0}.bar-actions{min-width:0;overflow-x:auto;gap:12px}.bar-actions .quiet-button{flex-shrink:0;white-space:nowrap}.bar-actions #saved-collection-toggle{order:-2}.bar-actions #atelier-toggle{order:-1}#saved-collection{padding:20px;max-height:calc(100dvh - 24px)}}
/* A collection is a room of distinct works, not a text-only picker. */
#saved-collection{width:min(1280px,calc(100vw - 40px));height:calc(100dvh - 40px);max-height:none;padding:36px 44px;background:#171b18;border-color:#687163;scrollbar-width:thin;scrollbar-color:#798471 #171b18}
#saved-collection header{align-items:center}#saved-collection h2{font-family:'Songti SC','STSong',Georgia,serif;font-size:48px;letter-spacing:-.03em;line-height:1.2}
#saved-collection .showcase-intro{font-size:18px;margin:22px 0 28px;color:#d3d3c5}
.showcase-toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.showcase-toolbar p{margin:0 0 0 auto;color:#b6c2b4}
#saved-collection .showcase-toolbar label{margin:0;flex-shrink:0}#saved-collection .showcase-toolbar input{width:min(340px,100%);background:transparent}
#saved-collection-status{margin:20px 0;font-variant-numeric:tabular-nums;color:#c2c5b7}
#saved-collection-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 30px}
.saved-work{padding:0;border:0;min-width:0;display:flex;flex-direction:column}
#saved-collection .showcase-preview{position:relative;isolation:isolate;display:grid;place-items:center;width:100%;height:400px;margin:0;padding:28px 36px 40px;background:radial-gradient(ellipse at 50% 22%,#3a41323d,transparent 70%),#101612;border:1px solid #64705c55;overflow:hidden;transition:border-color .25s ease,background-color .25s ease}
#saved-collection .showcase-preview::after{content:'';position:absolute;z-index:-1;left:15%;right:15%;bottom:24px;height:15px;border-top:1px solid #8a938060;background:linear-gradient(#30382b,#141a16);transform:perspective(180px) rotateX(35deg)}
#saved-collection .showcase-preview:hover{border-color:#b4bba3;background-color:#182019}
.showcase-preview img{width:100%;height:100%;min-height:0;object-fit:contain;filter:none;transition:transform .4s ease}.showcase-preview img[hidden]{display:none}.showcase-preview:hover img{transform:scale(1.035)}
.showcase-number{position:absolute;top:18px;left:20px;font-size:15px;color:#bcc3ae;font-variant-numeric:tabular-nums}
.showcase-caption{position:absolute;right:20px;bottom:16px;font-size:15px;color:#d4d7c7}.showcase-loading{font-size:15px;color:#b6c2b4;text-align:center}.showcase-loading[hidden]{display:none}
.showcase-label{padding:22px 4px 0;display:flex;flex-direction:column;flex:1}.saved-work h3{font-size:23px;font-weight:500;text-wrap:pretty}.saved-work p{overflow-wrap:anywhere}
#saved-collection .showcase-label button{margin-top:20px;border:0;border-top:1px solid #68716377;padding:14px 0;text-align:left;color:#e2e3d1}
@media(max-width:700px){#saved-collection{width:calc(100vw - 20px);height:calc(100dvh - 20px);max-height:none;padding:24px 18px}#saved-collection h2{font-size:36px}#saved-collection header{align-items:flex-start;gap:10px}#saved-collection header button{max-width:112px}.showcase-toolbar{gap:10px}#saved-collection .showcase-toolbar input{width:100%}.showcase-toolbar p{margin:6px 0 0}#saved-collection-list{grid-template-columns:1fr;gap:36px}#saved-collection .showcase-preview{height:350px;padding:24px 28px 40px}.saved-work h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){.showcase-preview:hover img{transform:none}}
.showcase-sections{display:flex;gap:24px;border-bottom:1px solid var(--atelier-line);margin:24px 0;flex-wrap:wrap}
#saved-collection .showcase-sections button{border:0;border-bottom:2px solid transparent;padding:12px 0;font-size:17px;color:#aeb5a4}
#saved-collection .showcase-sections button[aria-pressed=true]{border-bottom-color:#d6dbc5;color:#f0eddf}
#museum-filters{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin:22px 0}#museum-filters[hidden]{display:none}
#saved-collection #museum-filters label{margin:0;min-width:180px}#museum-filters select{display:block;width:100%;min-height:44px;padding:10px;font-size:15px;background:#1b2821;border:1px solid #728267;color:#e7e2d5;margin-top:8px}#museum-filters p{color:#b6c2b4;margin:0;max-width:360px}
#saved-collection #showcase-more{width:100%;margin:28px 0 0;padding:16px;font-size:16px}#showcase-more[hidden]{display:none}
@media(max-width:700px){#museum-filters{align-items:stretch}#saved-collection #museum-filters label{flex:1;min-width:130px}.showcase-sections{gap:20px}}
