:root{--bg:#060606;--ink:#dedad2;--dim:#a49f98;--line:#292929;--blue:#0066ff;--mono:'Courier New',Courier,monospace;--serif:Georgia,'Times New Roman',serif;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 var(--serif)}a{color:inherit;text-underline-offset:5px}button,input,textarea{font:inherit}button,.file-button{cursor:pointer}button{background:none;border:0;color:var(--ink);font:14px/1.5 var(--mono);padding:12px 16px}button:hover,a:hover{color:#fff}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,canvas:focus-visible,.file-button:focus-within{outline:2px solid #6ea7ff;outline-offset:5px}button.primary{background:var(--ink);color:var(--bg);border:1px solid var(--ink)}h1,h2,p,figure,blockquote{margin:0}h1{font-size:clamp(27px,3vw,42px);font-weight:400;letter-spacing:-.035em;line-height:1.2}h2{font-size:27px;font-weight:400;line-height:1.25}blockquote{font-size:clamp(24px,2.8vw,37px);line-height:1.4}blockquote:empty{display:none}.eyebrow{font:12px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.16em}.muted,.optional{color:var(--dim);font-size:14px}.masthead{min-height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 4vw}.masthead a{font:13px var(--mono);text-decoration:none}.brand{display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.18em}.brand i{width:6px;height:6px;background:var(--blue);border-radius:50%}.museum,.studio{padding:38px 4vw 24px;max-width:1800px;margin:auto}.museum-heading,.studio-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:35px}.museum-heading .eyebrow,.studio-heading .eyebrow{margin-bottom:12px;color:var(--dim)}.view-nav{display:flex;border-bottom:1px solid var(--line)}.view-nav [aria-current=page]{border-bottom:2px solid var(--blue)}.room-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:6vw;align-items:center;min-height:58vh}.art-space{height:58vh;min-height:320px;display:flex;align-items:center;justify-content:center}.art-space img{max-width:100%;max-height:100%;object-fit:contain}.plaque{border-top:1px solid var(--line);padding-top:25px}.plaque h2{margin:14px 0 6px}.plaque blockquote{margin:32px 0 22px}.room-controls{border-top:1px solid var(--line);margin-top:36px;padding-top:16px;display:flex;justify-content:space-between;align-items:center;gap:12px}.room-controls div{display:flex;gap:16px}.room-controls button{padding-left:0;padding-right:0}.museum-footer{display:flex;justify-content:space-between;padding:22px 4vw;color:var(--dim);font:12px var(--mono);gap:20px}.empty{min-height:58vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px}.empty-mark{font:50px var(--mono);color:var(--dim);margin-bottom:20px}.empty p{color:var(--dim)}[hidden]{display:none!important}.wall-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 35px}.wall-card{padding:0;text-align:left;display:block;width:100%}.wall-card img{width:100%;height:300px;object-fit:contain;background:#101010}.wall-card h2{font:20px var(--serif);margin:16px 0 6px}.wall-card p{color:var(--dim);font:12px var(--mono)}.world-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(270px,1fr);align-items:center;gap:6vw}.globe-wrap{max-width:620px;margin:auto}.globe-wrap canvas{width:100%;height:auto;display:block;touch-action:pan-y;cursor:grab}.globe-controls{display:flex;justify-content:center;align-items:center;gap:15px}.globe-controls p{text-align:center}.place-list{margin-top:22px;max-height:420px;overflow:auto}.place-list button{display:flex;justify-content:space-between;gap:14px;width:100%;text-align:left;border-top:1px solid var(--line);padding:14px 0}.place-list span{color:var(--dim)}.notice{padding:14px 18px;border-left:2px solid var(--blue);background:#101419;color:#c5c9d1;font:14px/1.6 var(--mono);margin-bottom:28px}.studio-layout{display:grid;grid-template-columns:210px minmax(320px,1.25fr) minmax(250px,.85fr);gap:32px}.collection h2{font:14px var(--mono);margin-bottom:22px}.collection h2 span{color:var(--dim);margin-left:8px}.draft-item{width:100%;padding:14px 8px;border-bottom:1px solid var(--line);text-align:left;display:flex;gap:10px;align-items:center}.draft-item img{width:42px;height:48px;object-fit:contain}.draft-item span{overflow-wrap:anywhere}.draft-item small{display:block;color:var(--dim);font-size:12px}.draft-item[aria-current=true]{border-left:2px solid var(--blue);background:#101419}.backup-controls{margin-top:28px;display:grid;gap:8px}.backup-controls button,.file-button{border:1px solid var(--line);text-align:center;font:13px var(--mono);padding:11px 6px}.file-button{position:relative}.file-button input,.upload-zone input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.editor{border-left:1px solid var(--line);padding-left:32px}.editor-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.editor-top h2{font-size:24px}.upload-zone{position:relative;min-height:160px;border:1px dashed #686868;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;text-align:center;padding:20px;margin-bottom:24px}.upload-zone strong{font-size:18px;font-weight:400;overflow-wrap:anywhere}.upload-zone:focus-within,.upload-zone.dragover{border-color:#6ea7ff;background:#101419}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font:14px/1.6 var(--mono)}label input:not([type=checkbox]):not([type=file]),textarea{display:block;width:100%;margin:8px 0 18px;background:#101010;color:var(--ink);border:1px solid #3b3b3b;border-radius:0;padding:11px;font:16px/1.5 var(--serif)}textarea{resize:vertical}.optional{font:12px var(--mono)}.coordinates{margin:4px 0 22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0}.coordinates summary{cursor:pointer;font:14px var(--mono)}.coordinates p{margin:12px 0}.check{display:flex;align-items:start;gap:10px;margin-bottom:8px}.check input{margin-top:5px;accent-color:var(--blue)}.form-actions{display:flex;gap:15px;margin-top:23px}.preview-panel{padding:22px;background:#101010;align-self:start;position:sticky;top:24px}.preview-panel>.eyebrow:first-child{color:var(--dim);margin-bottom:22px}.preview-art{min-height:240px;display:flex;align-items:center;justify-content:center;margin-bottom:22px}.preview-art img{width:100%;max-height:360px;object-fit:contain}.preview-panel h2{margin:10px 0}.preview-panel blockquote{font-size:26px;margin:25px 0 18px;overflow-wrap:anywhere}.plaque,.wall-card h2{overflow-wrap:anywhere}#feedback{margin-top:16px;font-size:15px}dialog{max-width:480px;background:#141414;color:var(--ink);border:1px solid #555;padding:30px}dialog::backdrop{background:#000b}dialog p{margin-top:18px}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{display:block;padding:10px}.error{color:#f2aba0}@media(min-width:1600px){.art-space{height:62vh}.room-layout{grid-template-columns:minmax(0,1fr) 400px}}@media(max-width:1100px){.studio-layout{grid-template-columns:180px 1fr}.preview-panel{grid-column:2;position:static}.masthead>.eyebrow{display:none}.wall-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.masthead{padding:18px 5vw}.masthead a{font-size:12px}.museum,.studio{padding:26px 5vw}.museum-heading,.studio-heading{align-items:start;flex-direction:column}.room-layout,.world-layout{grid-template-columns:1fr;gap:30px}.art-space{height:46vh;min-height:260px}.plaque{padding-top:20px}.plaque blockquote{margin:20px 0}.room-controls{flex-wrap:wrap}.room-controls div{order:3;width:100%;justify-content:center;gap:30px}.museum-footer{font-size:12px;flex-direction:column;gap:8px}.studio-layout{display:flex;flex-direction:column}.editor{padding:0;border:0}.collection{border-bottom:1px solid var(--line);padding-bottom:20px}.backup-controls{grid-template-columns:1fr 1fr}.backup-controls button:last-child{grid-column:1/-1}.preview-panel{position:static}.fields{grid-template-columns:1fr}.wall-grid{gap:25px 16px}.wall-card img{height:190px}.wall-card h2{font-size:18px}.studio-heading .primary{align-self:start}}@media(prefers-reduced-motion:no-preference){button,a{transition:color .15s,background .15s}}
.login-panel{max-width:440px;margin:12vh auto;padding:25px}.login-panel h1{margin:15px 0 30px}.login-panel button{width:100%}.login-panel [role=status]{margin-top:15px}.form-actions{flex-wrap:wrap}.plaque blockquote,.preview-panel blockquote{white-space:pre-wrap}
.embedded>.masthead,.embedded>.museum-footer,.embedded>.skip{display:none}.embedded .museum{padding:48px 4vw 32px}.embedded .art-space{height:clamp(280px,42vw,560px);min-height:0}.embedded .room-layout{min-height:0}.embedded .empty{min-height:400px}.embedded .globe-wrap{max-width:560px}@media(max-width:700px){.embedded .museum{padding:32px 5vw}.embedded .art-space{height:360px}.embedded .empty{min-height:320px}}

/* Room: the original scan leads; its museum label always sits below it. */
.museum .room-layout{display:flex;flex-direction:column;align-items:stretch;gap:36px;min-height:0}
.museum .art-space{width:100%;height:clamp(320px,66vh,920px);min-height:0}
.museum .art-space img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.museum .plaque{width:100%;max-width:760px;align-self:center;padding-top:24px}
.museum .plaque h2{font-size:clamp(23px,2.4vw,30px)}
.museum .plaque blockquote{font-size:clamp(21px,2.2vw,29px);margin:24px 0 20px}
.museum .plaque .eyebrow{text-transform:none;letter-spacing:.06em}
.museum .wall-card img{background:transparent}
.embedded .museum .art-space{height:clamp(320px,52vw,760px)}
@media(max-width:700px){.museum .room-layout{gap:26px}.museum .art-space,.embedded .museum .art-space{height:clamp(280px,55svh,620px)}.museum .plaque{padding-top:20px}}
