:root{font-family:"Microsoft YaHei","PingFang SC",sans-serif;color:#24262b;background:#fff;line-height:1.6;font-size:14px;--red:#b62b34;--line:#e6e7ea;--muted:#71757e}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}svg{width:24px;height:24px}button,a,summary{touch-action:manipulation}:focus-visible{outline:3px solid #b62b3470;outline-offset:3px}[hidden]{display:none!important}.skip:not(:focus),.sr-only{position:absolute;width:1px;height:1px;clip-path:inset(100%);overflow:hidden}.skip:focus{position:fixed;top:0;background:white;padding:12px;z-index:30}
main{max-width:1264px;margin:auto;padding:30px 32px 40px}.heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:24px}h1{font-size:29px;letter-spacing:-.7px;line-height:1.4}.heading p{font-size:13px;color:var(--muted);margin-top:7px}.search{display:flex;align-items:center;gap:12px;padding:12px 16px;width:440px;border:1px solid #d7d9de;border-radius:10px;background:#fafbfc}.search svg{width:20px;height:20px;color:#787d88}.search input{border:0;background:transparent;outline:none;width:100%;font-size:13px}.search:focus-within{outline:2px solid #b62b3440;border-color:var(--red)}.filterbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}#filters{display:flex;gap:7px;flex-wrap:wrap}#filters button{padding:7px 13px;border:1px solid transparent;border-radius:6px;background:#f4f5f7;color:#555b65;font-size:12px;min-height:36px}#filters button[aria-pressed=true]{background:#25272d;color:#fff}.category-picker{display:none}.count{white-space:nowrap;font-size:12px;color:var(--muted)}.count b{color:#30343a;font-weight:600}
.image-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 20px}.image-card{min-width:0}.card-open{border:0;padding:0;background:none;text-align:left;width:100%;display:block}.image-preview{position:relative;aspect-ratio:4/5;border-radius:12px;overflow:hidden;background:#f1f2f4}.image-preview img{width:100%;height:100%;object-fit:contain;display:block}.image-id{position:absolute;left:10px;top:10px;font-size:10px;background:#ffffffd9;border-radius:4px;padding:3px 6px;color:#444a54}.hover-action{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);background:#fffffff2;padding:9px 14px;border-radius:6px;font-size:12px;white-space:nowrap;opacity:0}.card-open:hover .hover-action,.card-open:focus-visible .hover-action{opacity:1}.image-copy{padding:10px 2px 0}.category{font-size:10px;color:var(--muted)}.image-copy h2{font-size:15px;line-height:1.65;font-weight:600;margin-top:2px;overflow-wrap:anywhere}.pagination{display:flex;flex-direction:column;align-items:center;margin:34px 0;gap:12px;font-size:12px;color:var(--muted)}#more,.empty button{background:white;border:1px solid #cfd2d8;border-radius:7px;padding:11px 24px;font-size:13px;min-height:44px}.empty{grid-column:1/-1;text-align:center;padding:55px 16px;color:var(--muted)}.empty h2{font-size:20px;color:#30343b;margin-bottom:12px}.empty p{margin:8px 0}.empty button{margin:16px 6px 0}.category-picker select{max-width:100%;border:1px solid #d7d9df;border-radius:7px;background:white;padding:9px 34px 9px 12px}
dialog{width:min(1160px,calc(100vw - 48px));max-height:92vh;border:0;border-radius:16px;padding:0;overflow:auto;box-shadow:0 30px 100px #0004}dialog::backdrop{background:#171a22b3;backdrop-filter:blur(5px)}.dialog-toolbar{position:sticky;top:0;z-index:3;background:#fffffff5;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);height:56px;padding:0 28px;font-size:12px;color:var(--muted)}.close{display:flex;align-items:center;gap:12px;border:0;background:transparent;font-size:12px;min-height:42px}.close span{font-size:24px;font-weight:300}#detail-content{padding:26px 32px 32px}.detail-heading{margin-bottom:24px}.detail-heading>p:first-child{font-size:11px;color:var(--red)}.detail-heading>p>span{color:var(--muted)}.detail-heading h2{font-size:26px;font-weight:650;line-height:1.5;margin:7px 0}.description{font-size:13px;color:var(--muted)}.detail-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:32px}.detail-image{border-radius:10px;overflow:hidden;background:#f1f2f4;display:flex;justify-content:center}.detail-image img{max-width:100%;width:100%;max-height:58vh;object-fit:contain;display:block}.requirements{margin-top:22px}.requirements h3,.replace-note h3,.boundary h3{font-size:13px;margin-bottom:8px}.requirements ul,.instructions ul{padding-left:20px;font-size:13px;color:#565d67;margin:10px 0;line-height:1.9}.replace-note{padding:0 0 18px}.replace-note p{font-size:14px;line-height:1.8;color:#555c66}.prompt-box{border:1px solid #d9dce2;border-radius:10px;background:#fafbfc;overflow:hidden}.prompt-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 16px;border-bottom:1px solid #e2e4e9;background:white}.prompt-heading h3{font-size:14px}.prompt-heading button{background:var(--red);color:white;border:0;border-radius:6px;padding:9px 13px;font-size:12px;min-height:38px}#prompt-editor{display:block;border:0;resize:vertical;width:100%;min-height:320px;max-height:65vh;padding:16px;background:transparent;font-size:14px;line-height:1.85}.copy-status{font-size:11px;color:#707681;padding:8px 16px 14px}.instructions{margin-top:20px;border-bottom:1px solid var(--line);padding-bottom:16px;font-size:13px}.instructions summary{cursor:pointer;min-height:34px;align-content:center}.instructions h3{font-size:13px;margin-top:10px}.instructions p{font-size:13px;line-height:1.9;color:#555c66;margin-top:10px}.boundary{margin-top:18px}.boundary p{font-size:12px;color:#727781;line-height:1.9}
@media(max-width:1000px){.image-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.search{width:350px}.heading{gap:20px}.filterbar{gap:10px}#filters{gap:5px}#filters button{padding:7px 9px}.detail-layout{gap:22px}}
@media(max-width:700px){.heading{display:block}.search{width:100%;margin-top:20px}.image-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.detail-layout{grid-template-columns:1fr}.detail-image img{max-height:42vh}.requirements{margin-top:16px}.detail-heading h2{font-size:23px}.image-column{margin-bottom:0}dialog{width:calc(100vw - 20px);max-height:96vh;border-radius:12px}#detail-content{padding:20px}.dialog-toolbar{padding:0 20px}.prompt-column{min-width:0}}
@media(max-width:480px){main{padding:24px 18px 28px}h1{font-size:25px}.heading p{font-size:12px}.heading{margin-bottom:18px}.search{margin-top:16px;padding:12px}.filterbar{margin-bottom:18px}#filters{display:none}.category-picker{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.category-picker select{width:137px;font-size:12px}.count{font-size:11px}.image-grid{gap:20px 12px}.image-preview{border-radius:9px;aspect-ratio:3/4}.image-copy h2{font-size:13px}.image-copy{padding-top:7px}.category{font-size:10px}.image-id{left:6px;top:6px;font-size:9px;padding:2px 4px}.hover-action{display:none}.detail-heading h2{font-size:21px}.detail-heading{margin-bottom:18px}.description{font-size:12px}.detail-layout{gap:22px}#prompt-editor{min-height:330px;font-size:14px}.prompt-heading{padding:12px}.replace-note p{font-size:13px}.detail-image img{max-height:36vh}}
@media(prefers-reduced-motion:no-preference){.hover-action,button{transition:opacity .16s,background-color .16s}}

/* ---------- 品牌层：颜色与字体接到 /resources/brand/brand.css ---------- */
:root{font-family:var(--xy-sans);color:var(--xy-ink);background:var(--xy-paper);--red:var(--xy-red);--line:var(--xy-rule);--muted:var(--xy-ink-3)}
body{background:var(--xy-paper)}
main h1{font-family:var(--xy-serif);font-weight:700;font-size:clamp(28px,2.4vw + 18px,42px);letter-spacing:-.01em;line-height:1.22}
:focus-visible{outline-color:var(--xy-ink)}
