@font-face{font-family:PN;src:url('../assets/fonts/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
*{box-sizing:border-box}body{margin:0;background:#f5f5ef;color:#243c32;font-family:PN,Arial,sans-serif}button,select,a{font:inherit}a{color:inherit;text-decoration:none}button,select{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #db723e;outline-offset:3px}header{max-width:1600px;padding:24px 40px;margin:auto;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dce0d8;font-size:13px}.brand{display:flex;gap:12px;align-items:center;font-weight:800;letter-spacing:1px}.brand b{font-size:27px;color:white;background:#243c32;padding:8px 11px;border-radius:6px}main{max-width:1600px;margin:auto;padding:0 40px}.intro{display:flex;align-items:center;justify-content:space-between;padding:34px 0 28px;gap:24px}.eyebrow{font-size:10px;letter-spacing:2px;color:#a55d38;font-weight:700}h1{font-size:clamp(26px,3vw,42px);letter-spacing:-1.5px;margin:12px 0}p{line-height:1.6}.intro p{font-size:14px;color:#657469;margin:0}.edition{font-size:10px;letter-spacing:1px;line-height:1.8;white-space:nowrap;color:#718071}.controls{border-top:1px solid #d7ddd3;border-bottom:1px solid #d7ddd3;padding:18px 0;display:flex;gap:16px;flex-wrap:wrap;align-items:center}.controls label{font-size:12px;display:flex;align-items:center;gap:8px}select{border:1px solid #d7ddd3;border-radius:5px;padding:9px 26px 9px 10px;background:white;color:#243c32;max-width:245px}.filters{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto}button{background:transparent;border:1px solid #cfd7cc;color:#243c32;border-radius:5px;padding:10px 12px;font-size:12px}.filters button[aria-pressed=true]{background:#243c32;color:white;border-color:#243c32}.list-head{display:flex;justify-content:space-between;align-items:center;color:#748071;font-size:11px;gap:14px;padding:12px 0}.list-head p{margin:0}#gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 20px}.card[hidden]{display:none}.card{min-width:0}.view{display:block;width:100%;padding:0;border:0;background:#deded5;overflow:hidden;border-radius:3px}.view img{display:block;width:100%;aspect-ratio:8/5;object-fit:cover;transition:transform .25s}.view:hover img{transform:scale(1.025)}.meta{display:flex;align-items:start;justify-content:space-between;gap:12px;padding-top:12px}.meta h2{font-size:15px;margin:4px 0}.meta small{font-size:10px;color:#7b847a}.tag{font-size:10px;padding:5px 7px;border:1px solid #d6dcd1;border-radius:3px;white-space:nowrap;margin-top:5px}footer{padding:42px 0;color:#7b847a;font-size:11px;line-height:1.8}dialog{width:min(1100px,94vw);max-height:94vh;overflow:auto;border:0;padding:24px;background:#f5f5ef;color:#243c32;border-radius:8px}dialog::backdrop{background:#14281ed9;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:15px}.dialog-top h2{font-size:20px;margin:0}#large{width:100%;display:block;border-radius:4px}#description{font-size:13px;color:#677569}.downloads{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.downloads a,.downloads button{background:#243c32;color:white;border:0;border-radius:4px;padding:12px;font-size:12px}#save-status{font-size:11px;color:#657469}
@media(min-width:1700px){#gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1050px){#gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{margin-left:0;width:100%}}@media(max-width:600px){header{padding:15px 18px}main{padding:0 18px}.intro{padding:25px 0 22px}.edition{display:none}.intro p{font-size:12px}h1{font-size:27px}.controls{gap:10px}.controls label:first-child{width:100%}.controls label:first-child select{flex:1;max-width:none}.filters{gap:5px}.filters button{padding:8px 9px;font-size:11px}.list-head span{display:none}#gallery{grid-template-columns:1fr;gap:24px}dialog{padding:14px}.dialog-top h2{font-size:16px}}
.view img{height:auto;aspect-ratio:297/210}
#print-sheet{display:none}
@page{size:A4 landscape;margin:0}
@media print{
 html,body{margin:0!important;padding:0!important;width:297mm;height:210mm;background:white!important}
 body>*{display:none!important}
 body>#print-sheet{display:block!important;width:297mm;height:210mm}
 #print-sheet img{display:block;width:297mm;height:210mm;object-fit:contain}
 dialog[open]{display:none!important}
 dialog::backdrop{display:none!important}
}
@media(prefers-reduced-motion:reduce){.view img{transition:none}}
