/* A quiet exhibition wall. Artwork stays in its original colors. */
:root{--gallery-paper:#f5f2eb;--gallery-ink:#343c35;--gallery-muted:#79796d;--gallery-line:#d8d4c8;--gallery-accent:#966c49;--pw-body-font:"PingFang SC","Microsoft YaHei",Arial,sans-serif;--gallery-serif:"Songti SC","Noto Serif CJK SC","Source Han Serif SC",SimSun,serif;color-scheme:light}
*{box-sizing:border-box}html{background:var(--gallery-paper);scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--gallery-paper);color:var(--gallery-ink);font:14px/1.7 var(--pw-body-font);-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{cursor:pointer;color:inherit}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}button{border:0;background:none}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}[hidden]{display:none!important}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #8e653b;outline-offset:5px}button:disabled{opacity:.45;cursor:default}::selection{background:#d9c5a4;color:#29372b}.pw-skip{position:fixed;top:-100px;left:30px;z-index:100;background:var(--gallery-ink);color:white;padding:10px 20px}.pw-skip:focus{top:10px}
.gallery-header{height:92px;margin:0 auto;padding:0 4.5%;display:flex;align-items:center;gap:28px;border-bottom:1px solid var(--gallery-line);background:#f5f2ebf5;position:relative;z-index:5}.pw-brand{font:650 27px/1 Arial,sans-serif;letter-spacing:-1.4px;white-space:nowrap}.pw-brand>span{color:var(--gallery-accent)}.gallery-name{display:flex;flex-direction:column;font:17px/1.3 var(--gallery-serif);letter-spacing:.15em;border-left:1px solid var(--gallery-line);padding-left:28px}.gallery-name span{font:8px/1.5 Arial,sans-serif;letter-spacing:.2em;margin-top:5px;color:var(--gallery-muted)}.gallery-header nav{display:flex;gap:29px;margin-left:auto;font-size:12px}.gallery-header nav a,.gallery-header nav button{padding:8px 0;border-bottom:1px solid transparent}.gallery-header nav a:hover,.gallery-header nav button:hover{border-color:var(--gallery-accent);color:var(--gallery-accent)}.pw-account{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:240px;padding:10px 0 10px 25px;border-left:1px solid var(--gallery-line);font-size:12px}.pw-account #wish-account-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pw-account:hover{color:var(--gallery-accent)}.pw-main{max-width:1440px;margin:auto;padding:0 6.25%}.wish-preview{display:flex;align-items:center;gap:16px;font-size:10px;color:#786c52;padding:9px 0;border-bottom:1px dashed var(--gallery-line)}.wish-preview span{margin-right:auto}.wish-preview button{text-decoration:underline;text-underline-offset:4px}
.pw-hero{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:8%;padding:76px 0 64px}.wish-kicker{font:10px/1.5 Arial,sans-serif;letter-spacing:.19em;color:var(--gallery-accent);margin-bottom:22px}.gallery-dot{display:inline-block;width:5px;height:5px;margin:0 8px 2px 0;border-radius:50%;background:var(--gallery-accent)}.pw-hero h1{font:400 clamp(48px,4.2vw,66px)/1.38 var(--gallery-serif);letter-spacing:.025em}.pw-hero h1 span{color:#8f6c51}.gallery-description{font-size:14px;line-height:2.05;color:#74796d;margin-top:22px}.gallery-tour{display:inline-flex;align-items:center;gap:55px;margin-top:26px;padding:8px 0;border-bottom:1px solid #8c907f;font-size:12px}.gallery-tour span{font-size:18px;transition:transform .25s}.gallery-tour:hover span{transform:translate(3px,-3px)}.gallery-room{font:10px/1.5 Georgia,serif;letter-spacing:.08em;margin-top:38px;color:var(--gallery-accent)}.gallery-room span{font:11px/1.5 var(--pw-body-font);margin-left:20px;letter-spacing:.2em;color:#929184}.gallery-frame{padding:9px;background:#a69271;box-shadow:0 0 0 1px #867352,inset 0 0 0 2px #c9bb9d,0 0 0 5px #e4ded1,0 18px 32px -15px #5b4c3f65;position:relative}.gallery-frame::after{content:"";position:absolute;inset:9px;box-shadow:inset 0 1px 7px #2d382d75;pointer-events:none}.gallery-hero-work img{width:100%;height:auto}.gallery-hero-work figcaption{display:flex;justify-content:space-between;gap:20px;margin-top:22px;font:9px/1.6 Arial,sans-serif;letter-spacing:.04em;color:var(--gallery-muted)}.gallery-hero-work figcaption i{font:11px/1.6 var(--gallery-serif);margin-left:12px}.gallery-hero-work figcaption>span:last-child{font:10px/1.7 var(--pw-body-font)}
.pw-start{padding:44px 0 54px;border-top:1px solid var(--gallery-line)}.gallery-section-title,.wish-section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px}.gallery-section-title .wish-kicker,.wish-section-heading .wish-kicker{margin-bottom:10px}.gallery-section-title h2,.wish-section-heading h2{font:30px/1.5 var(--gallery-serif);letter-spacing:.07em}.gallery-section-title>p,.gallery-section-note{color:var(--gallery-muted);font-size:12px;line-height:1.9}.pw-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:35px}.gallery-entry{min-width:0;padding:0;text-align:left;display:flex;flex-direction:column;position:relative}.pw-step-art{display:block;position:relative;width:100%;height:214px;padding:6px;background:#cec5b4;box-shadow:0 1px 0 1px #b3a991,0 8px 15px -10px #352c2866;overflow:hidden;transition:transform .3s,box-shadow .3s}.pw-step-art img{width:100%;height:100%;object-fit:cover}.gallery-entry:nth-child(2) .pw-step-art{border-radius:48% 48% 0 0 / 62% 62% 0 0;padding:7px;background:#d9d3c3}.gallery-entry:nth-child(2) img{border-radius:inherit}.gallery-entry:nth-child(3) .pw-step-art{background:#82908b;padding:5px;box-shadow:0 1px 0 1px #596962,0 8px 15px -10px #352c2866}.gallery-entry-overlay{position:absolute;left:6px;right:6px;bottom:6px;padding:38px 17px 14px;background:linear-gradient(transparent,#112e2ed1);color:#fffdf5;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.1em}.gallery-entry-label{display:flex;align-items:baseline;gap:15px;padding:19px 0 0;width:100%}.pw-number{font:11px/1.5 Georgia,serif;color:var(--gallery-accent);letter-spacing:.08em}.gallery-entry-label strong{display:block;font:21px/1.5 var(--gallery-serif);letter-spacing:.08em}.gallery-entry-label small{display:block;font:11px/1.8 var(--pw-body-font);color:var(--gallery-muted);margin-top:5px}.gallery-entry-arrow{display:grid;place-items:center;margin-left:auto;align-self:center;border:1px solid var(--gallery-line);width:32px;height:32px;border-radius:50%;font-size:15px;transition:background .2s,color .2s}.gallery-entry:hover .pw-step-art{transform:translateY(-4px);box-shadow:0 0 0 1px #b3a991,0 15px 25px -12px #352c2855}.gallery-entry:hover .gallery-entry-arrow{background:var(--gallery-ink);border-color:var(--gallery-ink);color:var(--gallery-paper)}.wish-hint{color:var(--gallery-muted);font-size:11px;line-height:1.9;margin-top:18px}.gallery-policy{display:flex;justify-content:space-between;gap:18px;padding-top:26px;margin-top:20px}.gallery-policy>span{font-family:var(--gallery-serif);letter-spacing:.1em}
.pw-included{padding:68px 0 24px;border-top:1px solid var(--gallery-line)}.wish-section-copy{color:var(--gallery-muted);font-size:13px;margin-top:16px;margin-bottom:40px}.pw-text-button{font-size:12px;border-bottom:1px solid #aaa28e;padding:5px 0;text-underline-offset:5px}.pw-text-button:hover{color:var(--gallery-accent)}.wish-progress-row{display:grid;grid-template-columns:.62fr 1.38fr;gap:72px;align-items:center;margin:50px 0 66px}.wish-progress-row:nth-child(even){grid-template-columns:1.38fr .62fr}.wish-progress-row:nth-child(even) .wish-project-panel{grid-column:1;grid-row:1}.wish-progress-row:nth-child(even) .wish-progress-person{grid-column:2;grid-row:1}.wish-progress-person{padding:25px 0;border-top:1px solid var(--gallery-line)}.wish-person{display:flex;align-items:center;gap:12px;min-width:0}.wish-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;object-fit:cover;flex:none;background:#e2e4d9;border:1px solid #c5cbb9;color:#59664f;font-family:var(--gallery-serif);font-size:17px}.wish-person strong{display:block;font-size:13px;font-weight:500;overflow-wrap:anywhere}.wish-person small{display:block;color:#87877b;font:10px/1.6 Arial,sans-serif;margin-top:4px}.wish-tags{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0}.wish-tags:empty{display:none}.wish-tag{font-size:10px;color:#667158;padding:3px 10px;background:#e4e7dc;border:1px solid #ccd3bc;border-radius:2px}.wish-tag.pending{background:#f1e7d7;border-color:#ddccaf;color:#927444}.wish-tag.rejected{background:#efe0d9;border-color:#ddc5b7;color:#946956}.wish-notes{font-size:12px;color:var(--gallery-muted);margin:16px 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.wish-dev-note{font-size:13px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:20px;padding-top:20px;border-top:1px solid var(--gallery-line)}.wish-project-panel{display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;padding:20px;background:#f9f7f1;border:1px solid #ded9cd;box-shadow:0 15px 30px -25px #51493880;gap:26px;min-width:0}.wish-project-panel>img,.wish-project-panel>picture>img{height:245px;width:100%;object-fit:cover;box-shadow:0 0 0 3px #baa788,0 0 0 4px #9f8b6d}.wish-project-label{padding:8px 8px 8px 0;min-width:0}.wish-project-panel h3{font:23px/1.65 var(--gallery-serif);margin:11px 0}.wish-content{font-size:13px;line-height:2;color:#697162;white-space:pre-wrap;overflow-wrap:anywhere}.pw-included>#progress-list>.wish-project-panel{max-width:880px;margin:45px auto 60px}
.pw-why{padding:60px 0 85px;border-top:1px solid var(--gallery-line)}.wish-date-filter{display:flex;align-items:end;gap:16px;padding:22px 0;border-top:1px solid var(--gallery-line);border-bottom:1px solid var(--gallery-line);margin-top:32px}.wish-date-filter>span{margin:0 0 10px;color:#8b8b7f}.wish-date-filter label{font-size:10px;color:var(--gallery-muted);display:grid;gap:7px}.wish-date-filter input{width:178px;padding:8px 12px;border:1px solid var(--gallery-line);background:#fbfaf6;color:var(--gallery-ink);border-radius:0;font-size:12px}.wish-date-filter small{margin:0 0 9px auto;color:var(--gallery-muted);font-size:10px}.wish-date-filter .pw-text-button{margin-bottom:4px}.pw-button{display:inline-flex;justify-content:center;align-items:center;padding:11px 22px;font-size:12px;min-height:39px;border:1px solid #4e5c46;color:#fffdf8;background:#4e5c46;letter-spacing:.06em;transition:background .2s}.pw-button:hover{background:#36472e}.wish-paging{display:flex;justify-content:center;align-items:center;gap:22px;font-size:12px;margin:35px 0}.wish-paging:empty{display:none}.wish-paging button{border:1px solid var(--gallery-line);padding:9px 16px}.pw-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:80px 92px;padding:34px 24px 0}.pw-feature{display:flex;flex-direction:column;gap:30px;min-width:0}.pw-feature:nth-child(even){padding-top:70px}.pw-feature-copy{padding:0 15px}.pw-feature h3{font:25px/1.55 var(--gallery-serif);margin:19px 0 13px;letter-spacing:.04em}.pw-feature .wish-content{font-size:13px}.pw-art{padding:14px;background:#ede8dd;box-shadow:0 0 0 1px #c4b497,0 0 0 4px #a89374,0 0 0 5px #c7b89e,0 17px 27px -13px #514b3950}.pw-art img{width:100%;height:auto;max-height:480px;object-fit:contain}.pw-art.user-image{background:#eee9df}.wish-empty{padding:30px 0;color:var(--gallery-muted);grid-column:1/-1;text-align:center}.wish-empty-art{grid-column:1/-1;width:430px;margin:0 auto}.wish-notice{margin-bottom:24px;padding:13px 18px;border-left:2px solid #8e9478;background:#e7e9dd;font-size:13px}.wish-error{color:#ad4b39!important;font-size:13px;line-height:1.8}.gallery-footer{border-top:1px solid var(--gallery-line);padding:35px 0 42px;display:flex;align-items:center;gap:30px}.gallery-footer .pw-brand{font-size:23px}.gallery-footer p{font:12px/1.7 var(--gallery-serif);color:var(--gallery-muted);letter-spacing:.09em}.gallery-footer nav{display:flex;gap:24px;margin-left:auto;font-size:11px;color:#727566}
.pw-dialog{color:var(--gallery-ink);background:#f8f6ef;border:1px solid #c3b397;border-radius:2px;padding:38px 42px;width:620px;max-width:calc(100% - 64px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 35px 100px #2d322840;font-family:var(--pw-body-font)}.pw-dialog::backdrop{background:#363d3366;backdrop-filter:blur(6px)}.pw-dialog-close{position:absolute;right:15px;top:13px;width:33px;height:33px;font-size:26px;line-height:1;color:#77796b;border-radius:50%}.pw-dialog-close:hover{background:#e9e4d8}.pw-dialog h2{font:30px/1.5 var(--gallery-serif);letter-spacing:.05em}.pw-dialog .wish-kicker{margin-bottom:9px}.wish-editor{width:760px}.wish-editor label{display:grid;gap:7px;font-size:12px;margin:17px 0}.wish-editor input:not([type=checkbox]),.wish-editor textarea{width:100%;min-width:0;padding:10px 12px;border:1px solid #d6cfbf;background:#fffefa;border-radius:0;color:var(--gallery-ink);font:13px/1.7 var(--pw-body-font)}.wish-editor input::placeholder,.wish-editor textarea::placeholder{color:#969689}.wish-editor textarea{resize:vertical}.wish-editor input[type=file]{font-size:10px;padding:8px}.wish-editor input[type=file]::file-selector-button{border:1px solid #c9c1af;background:#eee9dd;color:#4d5546;padding:5px 9px;margin-right:8px;font:inherit}.wish-editor input[type=checkbox]{accent-color:#5a664c}.wish-form-pair{display:grid;grid-template-columns:1fr 1fr;gap:22px}.wish-upload{margin:16px 0}.wish-upload>label{margin:0 0 8px}.wish-upload label.wish-remove{display:flex;align-items:center;gap:8px;margin:10px 0 0;font-size:10px;color:var(--gallery-muted)}.wish-upload-preview{max-width:100%;height:100px;object-fit:contain;object-position:left}.wish-upload-preview.avatar{height:56px;width:56px;border-radius:50%;object-fit:cover}.wish-form-actions{display:flex;gap:25px;align-items:center;justify-content:flex-end;margin-top:25px}.wish-mine-dialog{width:800px}.wish-own-card{padding:27px 0;border-bottom:1px solid var(--gallery-line)}.wish-own-card h3{font:23px/1.5 var(--gallery-serif);margin:10px 0}.wish-own-actions{display:flex;gap:24px;margin-top:15px}.wish-own-actions button{font-size:11px;text-decoration:underline;text-underline-offset:5px}.gallery-page .wy-auth .wy-auth-cover{background-image:url('assets/wish-gallery-optimized/morning-seine.webp');background-image:image-set(url('assets/wish-gallery-optimized/morning-seine.avif') type('image/avif'),url('assets/wish-gallery-optimized/morning-seine.webp') type('image/webp'))}.gallery-page dialog.wy-auth{border-radius:3px;background:#f8f6ef}.gallery-page .wy-auth-submit{border-radius:2px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

.gallery-language{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:11px;color:#87897d}.gallery-language button{padding:7px 2px}.gallery-language button[aria-pressed=true]{color:#354332;font-weight:600}.gallery-language button:focus-visible{outline:2px solid #64755c;outline-offset:3px}.gallery-header{gap:22px}.gallery-header nav{gap:20px}
html[lang=en] .gallery-name{font-size:14px}html[lang=en] .gallery-name>span{display:none}html[lang=en] .gallery-intro h1{font-size:66px;line-height:1.22;letter-spacing:-.025em}html[lang=en] .gallery-header nav{gap:16px}html[lang=en] .gallery-entry-label small{font-size:11px}

/* Keep gallery sizing and rounded frames when a format source is selected. */
.gallery-page picture { display:block; min-width:0; }
.pw-step-art>picture { height:100%; border-radius:inherit; }
