:root { font-family:Pretendard,"Apple SD Gothic Neo",system-ui,sans-serif; color:#111; background:#d9d9d6; }
* { box-sizing:border-box; }
body { margin:0; }
.toolbar { position:sticky; top:0; z-index:10; display:flex; justify-content:center; gap:8px; padding:12px; background:rgba(20,20,20,.9); }
.toolbar a,.toolbar button { border:1px solid #555; border-radius:999px; padding:9px 14px; background:#fff; color:#111; font:700 13px inherit; text-decoration:none; cursor:pointer; }
.toolbar .active { background:#1473e6; color:#fff; border-color:#1473e6; }
main { display:grid; gap:18px; justify-content:center; padding:18px; }
.sheet { position:relative; overflow:hidden; background:#fff; box-shadow:0 8px 30px rgba(0,0,0,.18); break-after:page; }
.sheet:last-child { break-after:auto; }
.landscape .sheet { width:297mm; height:210mm; }
.portrait .sheet { width:210mm; height:297mm; }
.cover { display:grid; align-content:end; padding:18mm; background:#090909; color:#fff; }
.cover .kicker,.copy .kicker { margin:0 0 7mm; color:#8d8d8d; font-size:10pt; font-weight:900; letter-spacing:.16em; }
.cover h1 { margin:0; font-size:50pt; line-height:.94; letter-spacing:-.065em; }
.cover p { max-width:150mm; margin:10mm 0 0; color:#cfcfcf; font-size:14pt; line-height:1.65; }
.cover .meta { position:absolute; top:14mm; left:18mm; right:18mm; display:flex; justify-content:space-between; font-size:9pt; font-weight:800; }
.feature { display:grid; background:#f2f2f0; }
.landscape .feature { grid-template-rows:auto minmax(0,1fr); padding:10mm; }
.portrait .feature { grid-template-rows:auto auto 1fr; padding:12mm; }
.copy { display:grid; background:#080808; color:#fff; }
.landscape .copy { grid-template-columns:28mm 1fr 83mm; gap:8mm; align-items:start; padding:7mm 10mm; border-radius:7mm 7mm 0 0; }
.portrait .copy { grid-template-columns:1fr; align-content:start; gap:2.5mm; padding:7mm 9mm; border-radius:7mm 7mm 0 0; }
.copy .kicker { margin:1mm 0 0; }
.copy h2 { margin:0; font-size:27pt; line-height:1.02; letter-spacing:-.05em; }
.copy p { margin:0; color:#d0d0d0; font-size:10.5pt; line-height:1.55; }
.portrait .copy h2 { font-size:23pt; }
.portrait .copy p { font-size:10pt; }
.visual { margin:0; overflow:hidden; background:#fff; }
.landscape .visual { border-radius:0 0 7mm 7mm; }
.visual img { display:block; width:100%; height:100%; object-fit:contain; background:#fff; }
.portrait .visual { height:104.625mm; }
.details { display:none; }
.portrait .details { display:grid; grid-template-columns:repeat(3,1fr); gap:4mm; align-content:start; padding:8mm 0 0; }
.detail { padding:5mm 0; border-top:.4mm solid #111; }
.detail span { display:block; color:#777; font-size:8pt; font-weight:800; }
.detail strong { display:block; margin-top:2mm; font-size:11pt; line-height:1.35; }
.page-no { position:absolute; right:10mm; bottom:7mm; color:#777; font-size:8pt; font-weight:800; }
@media (max-width:1200px) {
  .landscape .sheet { transform-origin:top center; }
}
@page { margin:0; }
@media print {
  :root,body { background:#fff; }
  .toolbar { display:none; }
  main { display:block; padding:0; }
  .sheet { box-shadow:none; margin:0; }
}
