:root{color-scheme:light;--paper:#f7f0e9;--ink:#3a2631;--muted:#846d79;--berry:#753852;--rose:#b65f7a;--blue:#527b9d;--line:#decdd4;font-family:ui-sans-serif,system-ui,"Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:radial-gradient(circle at 14% 4%,#f3dfe5 0 8%,transparent 25%),radial-gradient(circle at 91% 34%,#dfeaf0 0 8%,transparent 23%),var(--paper)}a{color:inherit}button,input,textarea,select{font:inherit}[hidden]{display:none!important}
.topbar{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px clamp(20px,5vw,80px);border-bottom:1px solid var(--line);background:#fbf7f2db;backdrop-filter:blur(12px)}.brand{text-decoration:none;font:700 .8rem/1 Georgia,serif;letter-spacing:.16em}.brand span{color:var(--rose)}nav{display:flex;align-items:center;gap:24px;font-size:.84rem}nav a{text-decoration:none}.write-link{padding:10px 16px;border:1px solid #b894a3;border-radius:999px}
main{width:min(1220px,calc(100% - 40px));margin:auto}.eyebrow{margin:0 0 15px;color:var(--rose);font-size:.78rem;font-weight:700;letter-spacing:.14em}.intro{display:grid;grid-template-columns:1fr .8fr;align-items:end;gap:40px;padding:78px 0 58px}.intro h1{margin:0;font:500 clamp(3.3rem,7vw,6.5rem)/.98 "Songti SC",Georgia,serif;letter-spacing:-.055em}.intro>p{margin:0 0 10px;padding:28px 0 8px;border-top:1px solid #bd9aa8;color:var(--muted);font:500 clamp(1.05rem,2vw,1.35rem)/1.9 "Songti SC",serif}
.submit-panel{position:relative;display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(28px,6vw,76px);padding:clamp(28px,5vw,58px);border:1px solid #d5bec8;border-radius:24px;background:#fffcf8;box-shadow:0 26px 70px #5b2d4210}.submit-panel::before{content:"";position:absolute;top:-10px;left:8%;width:92px;height:20px;background:#d6b5a970;transform:rotate(-3deg)}.submit-copy h2,.wall-heading h2{margin:0;font:500 clamp(2rem,4vw,3.6rem)/1.12 "Songti SC",Georgia,serif;letter-spacing:-.045em}.submit-copy>p:last-child{max-width:330px;color:var(--muted);line-height:1.8}
form{display:grid;gap:19px}.type-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;border:0}.type-picker legend{margin-bottom:9px;font-size:.84rem;font-weight:700}.type-picker label{display:flex!important;align-items:center;gap:11px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fbf5f6;cursor:pointer}.type-picker label:has(input:checked){border-color:#a5637b;background:#f4e4e9;box-shadow:0 0 0 2px #a5637b18}.type-picker label:last-child:has(input:checked){border-color:#6f93ad;background:#eaf1f5;box-shadow:0 0 0 2px #6f93ad18}.type-picker input{accent-color:var(--berry)}.type-picker span{display:grid;gap:3px}.type-picker b{font-size:.86rem}.type-picker small{color:var(--muted);font-size:.68rem;font-weight:400}
label{display:grid;gap:8px;font-size:.88rem}label>span{font-weight:700}label i{margin-left:6px;color:var(--muted);font-size:.72rem;font-style:normal;font-weight:400}.form-grid,.release-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}input,textarea,select{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:#fff}textarea{min-height:122px;resize:vertical;line-height:1.7}label small{justify-self:end;color:var(--muted);font-size:.72rem}input[type=file]{padding:11px;border-style:dashed;background:#f8eef1;font-size:.76rem}input[type=file]::file-selector-button{margin-right:12px;padding:8px 12px;border:0;border-radius:7px;color:#fff;background:var(--berry)}form[data-type=wanted] input[type=file]{background:#edf4f7}form[data-type=wanted] input[type=file]::file-selector-button{background:var(--blue)}.image-hint{margin:-10px 0 0;color:var(--muted);font-size:.72rem;line-height:1.7}.selected-images{display:grid;gap:5px;margin:-9px 0 0;padding-left:20px;color:var(--muted);font-size:.72rem}.selected-images:empty{display:none}#merch-submit{display:flex;justify-content:space-between;width:100%;padding:15px 18px;border:0;border-radius:10px;color:#fff;background:var(--berry);cursor:pointer}form[data-type=wanted] #merch-submit{background:var(--blue)}#merch-submit:disabled{opacity:.55;cursor:wait}.status{min-height:1.4em;margin:0;color:#397050;font-size:.82rem}.status.error{color:#a23553}
.wall{padding:92px 0 110px}.wall-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:34px}.wall-heading>p{max-width:340px;margin:0;color:var(--muted);line-height:1.7}.dual-wall{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:24px}.merch-lane{position:relative;padding:24px;border:1px solid;border-radius:28px;overflow:hidden}.merch-lane::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,#fff9 0 16%,transparent 42%)}.merch-lane--release{border-color:#ddb9c6;background:#f4e2e8}.merch-lane--wanted{border-color:#b8cedb;background:#e3edf2}.merch-lane>header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 4px 24px}.merch-lane>header span{color:#a46178;font-size:.64rem;font-weight:800;letter-spacing:.2em}.merch-lane--wanted>header span{color:#527b9d}.merch-lane>header h3{margin:5px 0 0;font:600 1.55rem/1.25 "Songti SC",Georgia,serif}.merch-lane>header>b{display:grid;place-items:center;min-width:46px;height:46px;border-radius:50%;color:#fff;background:#a95d77;font:600 1.05rem/1 Georgia,serif}.merch-lane--wanted>header>b{background:#5b82a0}.card-stack{position:relative;display:flex;flex-direction:column;gap:22px}
.merch-card{position:relative;padding:15px 15px 20px;border:1px solid;border-radius:17px;background:#fffdfb;box-shadow:0 15px 34px #4a263410}.merch-card--release{border-color:#dfc1ca}.merch-card--wanted{border-color:#c3d5df;background:#fbfdfe}.merch-card__photos{position:relative}.merch-card__photos button{display:block;width:100%;padding:0;overflow:hidden;border:0;background:#eadfe3;cursor:zoom-in}.merch-card__cover{aspect-ratio:4/3;border-radius:11px}.merch-card__cover img,.merch-card__thumb img{display:block;width:100%;height:100%;object-fit:cover}.merch-card__thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:7px}.merch-card__thumb{aspect-ratio:1;border-radius:7px}.merch-card__image-count{position:absolute;right:10px;top:10px;padding:5px 8px;border-radius:999px;color:#fff;background:#321d2bb8;font-size:.66rem}.merch-card__placeholder{display:grid;place-items:center;min-height:190px;border:1px dashed #a9c0cf;border-radius:11px;color:#527b9d;background:linear-gradient(145deg,#edf5f8,#dceaf1);text-align:center}.merch-card__placeholder span{font-size:2.5rem}.merch-card__placeholder b{font:600 1rem/1 Georgia,serif;letter-spacing:.18em}.merch-card__placeholder small{color:#6c879a}.merch-card__tags{display:flex;flex-wrap:wrap;gap:7px;margin:17px 0 10px}.merch-card__type,.merch-card__category{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.7rem;font-weight:700}.merch-card__type{color:#77364f;background:#f1dfe5}.merch-card--wanted .merch-card__type{color:#3f617e;background:#e1ebf2}.merch-card__category{color:#806c46;background:#f3ead7}.merch-card h4{margin:0;font:600 1.42rem/1.4 "Songti SC",serif}.merch-card__description{margin:12px 0;color:#6f5b66;line-height:1.78;white-space:pre-wrap}.merch-card__quantity{display:flex;justify-content:space-between;gap:12px;margin:15px 0 0;padding:11px 13px;border-radius:9px;color:#78546a;background:#f8edf1;font-size:.74rem}.merch-card__quantity b{font-weight:700}.merch-card__footer{display:flex;justify-content:space-between;gap:14px;margin-top:16px;padding-top:14px;border-top:1px solid #eadfe3;color:#947d89;font-size:.74rem}.merch-card__footer strong{color:#604653}.empty{position:relative;margin:0;padding:48px 20px;border:1px dashed #c6aeb7;border-radius:14px;color:var(--muted);background:#fff7;text-align:center}.merch-lane--wanted .empty{border-color:#adc2ce}
dialog{width:min(960px,calc(100vw - 30px));max-width:none;max-height:calc(100vh - 30px);padding:0;overflow:visible;border:0;border-radius:14px;background:#21151d;box-shadow:0 20px 90px #0008}dialog::backdrop{background:#20121ce8;backdrop-filter:blur(6px)}dialog figure{display:grid;place-items:center;margin:0;min-height:260px}dialog img{display:block;max-width:calc(100vw - 70px);max-height:calc(100vh - 90px);object-fit:contain;border-radius:10px}dialog figcaption{position:absolute;bottom:12px;left:50%;padding:5px 10px;border-radius:999px;color:#fff;background:#251820b3;font-size:.72rem;transform:translateX(-50%)}#image-close,.image-step{position:absolute;z-index:2;border:0;border-radius:50%;color:#fff;background:#251820c9;cursor:pointer}#image-close{top:12px;right:12px;width:40px;height:40px;font-size:1.7rem}.image-step{top:50%;width:46px;height:46px;font-size:2.1rem;transform:translateY(-50%)}.image-step:disabled{display:none}.image-step--prev{left:12px}.image-step--next{right:12px}footer{display:flex;justify-content:center;gap:12px;padding:30px;border-top:1px solid var(--line);color:#896f7c;font-size:.76rem}
@media(max-width:820px){.intro,.submit-panel{grid-template-columns:1fr}.intro{gap:24px}.dual-wall{gap:14px}.merch-lane{padding:16px}.merch-card{padding:11px 11px 17px}.merch-card h4{font-size:1.18rem}}
@media(max-width:640px){.topbar{align-items:flex-start;flex-direction:column}nav{width:100%;justify-content:space-between;gap:12px}.intro{padding:48px 0 36px}.form-grid,.release-fields,.type-picker{grid-template-columns:1fr}.submit-panel{padding:24px}.wall-heading{align-items:flex-start;flex-direction:column}.dual-wall{grid-template-columns:1fr;gap:28px}.merch-lane{padding:20px}.merch-card{padding:14px 14px 20px}.merch-card h4{font-size:1.35rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
