:root{--paper:#111312;--ink:#eeeae1;--muted:#aaa9a0;--line:#353934;font-family:Arial,'Helvetica Neue',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a,select,input,summary{-webkit-tap-highlight-color:transparent}button,select,summary{cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #879fb9;outline-offset:5px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}header,main,footer{max-width:1440px;margin:auto}header{display:flex;align-items:center;justify-content:space-between;padding:30px 50px;border-bottom:1px solid var(--line);gap:20px}.wordmark{font:25px Georgia,serif;letter-spacing:-.04em;text-decoration:none}header nav{display:flex;gap:30px;align-items:center;font-size:14px}header nav a{text-decoration:none}select{border:0;background:transparent;color:inherit;padding:8px 0;max-width:160px}.gallery-room{padding:32px 50px 20px}.room-heading{display:flex;gap:30px;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted)}.room-heading p{margin:0}.room-heading p:last-child{white-space:nowrap;font-size:12px;letter-spacing:.1em}.art-stage{position:relative;max-width:930px;margin:35px auto 30px;height:min(58vw,580px);min-height:280px}canvas{display:block;width:100%;height:100%;touch-action:pan-y;cursor:crosshair}canvas.zoomed{touch-action:none;cursor:grab}.stage-message{position:absolute;inset:45% 15% auto;text-align:center;font-size:14px;color:var(--muted);pointer-events:none}.art-caption{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:930px;margin:auto}.eyebrow{font-size:12px;letter-spacing:.11em;text-transform:uppercase;line-height:1.6;color:var(--muted);margin:0 0 10px}h1{font:36px/1.1 Georgia,'Times New Roman',serif;letter-spacing:-.035em;margin:0}#art-meta{font-size:13px;color:var(--muted);margin:10px 0 0}.view-controls{display:flex;align-items:center;gap:20px;flex-shrink:0}button{background:transparent;color:inherit;border:0;border-radius:0;min-height:44px;padding:8px 0;font-size:14px}.view-controls button{text-decoration:underline;text-underline-offset:5px}.art-note,.zoom-note{font-size:12px;line-height:1.6;color:var(--muted);max-width:930px;margin:18px auto 0}.zoom-note{margin-top:5px}.gathering{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;margin:55px 50px 80px;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.gathering>div>span{font-size:13px;color:var(--muted)}#total-count{font:56px/1 Georgia,serif;margin:12px 0;letter-spacing:-.05em}.progress-copy{align-self:center;font-size:14px;line-height:1.6}.progress-copy p{margin:0 0 10px}.progress-copy p:last-child{font-size:12px;color:var(--muted);margin:12px 0 0}progress{display:block;width:100%;height:2px;border:0;appearance:none}progress::-webkit-progress-bar{background:var(--line)}progress::-webkit-progress-value{background:var(--ink)}progress::-moz-progress-bar{background:var(--ink)}.collection{margin:0 50px 95px}.section-heading{display:flex;align-items:flex-start;gap:50px;justify-content:space-between;margin-bottom:30px}h2{font:36px/1.15 Georgia,serif;letter-spacing:-.04em;margin:0}.section-heading p{font-size:13px;color:var(--muted);line-height:1.5;max-width:300px;margin:0}.collection-list{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}.work-card{display:flex;flex-direction:column;text-align:left;border-top:1px solid var(--line);padding:18px 0;gap:12px;min-width:0}.work-card .number{font:27px Georgia,serif;color:#94948f}.work-card .name{font-size:16px}.work-card .state{font-size:12px;color:var(--muted);line-height:1.45}.work-card[aria-current=true]{border-color:var(--ink)}.work-card[aria-current=true] .name{text-decoration:underline;text-underline-offset:5px}#collection-empty{font-size:13px;color:var(--muted);margin-top:22px}.contribute{margin:0 50px 80px;padding-top:50px;border-top:1px solid var(--ink);display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.contribute h2{max-width:320px;font-size:48px}.contribute>div>p:last-child{font-size:14px;line-height:1.65;color:var(--muted);max-width:330px;margin-top:24px}form>label{display:block;font-size:16px;line-height:1.5}textarea{display:block;width:100%;resize:vertical;min-height:155px;border:0;border-bottom:1px solid #999;background:transparent;padding:18px 0;color:var(--ink);font-size:18px;line-height:1.6;border-radius:0}.byte-row{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin:12px 0 22px;color:var(--muted);font-size:12px;line-height:1.5}.byte-row span{max-width:250px}output{white-space:nowrap}output.over{color:#ffaca5}.agreement{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.6}.agreement input{margin:4px 0 0;accent-color:var(--ink);width:16px;height:16px;flex-shrink:0}.review-note{font-size:12px;line-height:1.6;color:var(--muted);margin:15px 0 20px}.submit{padding:12px 25px;background:var(--ink);color:var(--paper);min-width:180px}.honey{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.status{font-size:14px;line-height:1.6;min-height:20px;color:#d7b19f}.my-review{padding:25px 0;font-size:18px;line-height:1.6}.my-review button{text-decoration:underline}.colophon{margin:0 50px 45px;display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.colophon summary{font-size:13px;text-decoration:underline;text-underline-offset:5px;list-style:none}.colophon p{font-size:14px;line-height:1.7;color:var(--muted);max-width:590px}footer{padding:24px 50px 35px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;color:var(--muted)}footer a{font-size:13px}dialog{width:min(620px,calc(100% - 40px));padding:30px;border:1px solid var(--line);background:var(--paper);color:var(--ink);max-height:85dvh}dialog::backdrop{background:rgba(0,0,0,.72)}.close{display:block;margin-left:auto;font-size:14px;text-decoration:underline}dialog blockquote{font:25px/1.6 Georgia,serif;margin:28px 0;overflow-wrap:anywhere;white-space:pre-wrap}#report-form{border-top:1px solid var(--line);padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:13px}#report-form button{text-decoration:underline}#report-status{font-size:13px;line-height:1.5;color:var(--muted)}.no-script{margin:50px;line-height:1.6}
@media(max-width:900px){header,.gallery-room{padding-left:30px;padding-right:30px}header nav{gap:20px}.gathering,.collection,.contribute,.colophon{margin-left:30px;margin-right:30px;gap:40px}.art-stage{margin-top:25px}.collection-list{gap:16px}.contribute h2{font-size:39px}footer{padding-left:30px;padding-right:30px}}
@media(max-width:650px){header{padding:20px;align-items:flex-start;gap:12px}.wordmark{font-size:23px;max-width:130px}header nav{gap:9px;flex-wrap:wrap;justify-content:flex-end;font-size:12px;max-width:190px}select{font-size:13px}.gallery-room{padding:25px 20px 10px}.room-heading{font-size:12px;gap:20px;align-items:flex-start}.room-heading p:first-child{max-width:210px}.room-heading p:last-child{font-size:12px}.art-stage{height:77vw;min-height:240px;margin:25px auto}.art-caption{align-items:flex-start;gap:12px}h1{font-size:30px}.eyebrow{font-size:12px;letter-spacing:.05em}.view-controls{gap:10px;flex-wrap:wrap;justify-content:flex-end;max-width:140px}.view-controls button{font-size:12px;min-height:35px}.art-note{margin-top:15px}.gathering{margin:35px 20px 50px;grid-template-columns:1fr;gap:24px;padding:25px 0}#total-count{font-size:50px}.gathering>div:first-child{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8px}#total-count{grid-column:2;grid-row:1/3;text-align:right;margin:0}.collection{margin:0 20px 55px}.section-heading{display:block;margin-bottom:22px}h2{font-size:32px}.section-heading p{margin-top:15px;max-width:100%}.collection-list{grid-template-columns:1fr}.work-card{display:grid;grid-template-columns:55px 1fr 1fr;align-items:center;gap:15px;padding:15px 0}.work-card .number{font-size:25px}.work-card .state{text-align:right}.contribute{margin:0 20px 40px;display:block;padding-top:35px}.contribute h2{max-width:none;font-size:39px}.contribute>div>p:last-child{max-width:100%;margin:18px 0 30px}.byte-row span{max-width:190px}.colophon{margin:0 20px 30px;display:block}.colophon details{margin:20px 0}footer{padding:25px 20px;gap:18px;flex-wrap:wrap;font-size:12px}footer>span{order:3;width:100%}.no-script{margin:30px 20px}dialog{padding:22px}dialog blockquote{font-size:21px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.notes-reader{max-width:930px;margin:25px auto 0;font-size:14px}.notes-reader summary{cursor:pointer;text-decoration:underline;list-style:none;text-underline-offset:5px}#notes-list{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}#notes-list button{text-align:left;padding:15px 0;border-top:1px solid var(--line);font-size:16px;line-height:1.6;overflow-wrap:anywhere}#more-notes{font-size:14px;text-decoration:underline}@media(max-width:650px){#notes-list{grid-template-columns:1fr}}

/* The empty field is part of the work: ivory words remain visible on charcoal. */
.art-stage{background:#111312;overflow:hidden;height:min(64vw,640px)}.art-stage.legacy-work{background:#fafaf8}.art-stage.legacy-work .stage-message{color:#555}select option{background:var(--paper);color:var(--ink)}.view-controls button{font-size:14px}.zoom-note{font-size:14px;line-height:1.7}.art-note{font-size:13px}dialog{box-shadow:0 20px 100px #0008}textarea::placeholder{color:var(--muted)}@media(max-width:650px){.art-stage{height:92vw;margin-left:-12px;margin-right:-12px}.view-controls{max-width:145px}.view-controls button{font-size:14px;min-height:44px}}

/* Participation follows the work and its caption, before the collection. */
.gallery-room .contribute{max-width:930px;margin:30px auto 0;padding-top:26px;border-top:1px solid var(--line);grid-template-columns:1fr 1.4fr;gap:40px;scroll-margin-top:24px}.gallery-room .contribute h2{font-size:30px;max-width:280px}.gallery-room .contribute>div>p:last-child{margin-top:16px}.gallery-room .contribute textarea{min-height:108px}.gallery-room .notes-reader{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}@media(max-width:650px){.gallery-room .contribute{margin-top:24px;padding-top:24px;display:block}.gallery-room .contribute h2{font-size:28px;max-width:none}.gallery-room .contribute>div>p:last-child{margin:12px 0 22px}}

/* Keep all language variants usable at narrow widths and with large text. */
header{flex-wrap:wrap}header nav{flex-wrap:wrap}header a,footer a{display:inline-flex;align-items:center;min-height:44px}select{min-height:44px}.notes-reader summary,.colophon summary{min-height:44px;padding:12px 0}.art-caption>div:first-child{min-width:0;overflow-wrap:anywhere}.room-heading{flex-wrap:wrap}.work-card .name,.work-card .state{overflow-wrap:anywhere}.byte-row{flex-wrap:wrap}button,select{max-width:100%}
@media(max-width:380px){.art-caption{flex-direction:column}.view-controls{max-width:100%;justify-content:flex-start;gap:18px}.wordmark{max-width:none}header nav{max-width:100%;margin-left:auto}.work-card{grid-template-columns:42px minmax(0,1fr) minmax(0,1fr);gap:10px}#report-form{flex-wrap:wrap}}

/* Thai marks need natural spacing and more vertical room. */
:lang(th){font-family:"Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif;letter-spacing:normal}html:lang(th) h1,html:lang(th) h2,html:lang(th) h3,html:lang(th) .wordmark{letter-spacing:normal;line-height:1.4}
