:root{--red:#9b3426;--red-dark:#7c2a1f;--ink:#2a2622;--muted:#736b62;--line:#ebe5dc;--bg:#fdfcf9;--bg-alt:#f6f2ea;--radius:14px;--serif:"Noto Serif KR","Noto Serif CJK KR","Nanum Myeongjo","AppleMyungjo","Batang",serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Pretendard","Noto Sans KR","Malgun Gothic",sans-serif;color:var(--ink);background:var(--bg);line-height:1.7;word-break:keep-all;overflow-wrap:anywhere}
a{color:var(--red)}
img{max-width:100%;height:auto}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.narrow{max-width:640px}
.muted{color:var(--muted)}.small{font-size:.875rem}
.site-header{position:sticky;top:0;z-index:10;background:rgba(253,252,249,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:60px;gap:12px}
.brand{display:flex;align-items:center;gap:8px;font-weight:800;color:var(--ink);text-decoration:none;font-size:1.05rem}
.brand-mark{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--red);color:#fff;font-weight:900}
.nav{display:flex;gap:16px}.nav a{color:var(--ink);text-decoration:none;font-size:.95rem}.nav a:hover{color:var(--red)}
.hero{background:linear-gradient(180deg,#fdfcf9 0%,#f6f1e7 100%);border-bottom:1px solid var(--line);padding:84px 0 76px;text-align:center}
.eyebrow{letter-spacing:.24em;font-size:.72rem;font-weight:600;color:var(--muted);margin:0 0 14px}
.hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(2rem,6vw,3rem);line-height:1.25;margin:0 0 18px;letter-spacing:-.01em}
.lead{font-size:clamp(1rem,2.6vw,1.15rem);color:#4a443d;margin:0 auto 32px;max-width:560px;line-height:1.85}
.hero-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-block;padding:12px 22px;border-radius:999px;font-weight:700;text-decoration:none;border:1px solid transparent;font-size:1rem;cursor:pointer}
.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{background:var(--red-dark)}
.btn-ghost{background:transparent;color:var(--ink);border-color:#d8d0c4}.btn-ghost:hover{border-color:var(--red);color:var(--red)}
.btn-small{padding:8px 14px;font-size:.9rem}
.btn-disabled{background:#eee;color:#888}
.btn-buy{min-width:180px;text-align:center}
.section{padding:56px 0}.section-alt{background:var(--bg-alt)}
.section-title{font-family:var(--serif);font-weight:600;font-size:1.5rem;margin:0 0 24px}
.book-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:24px}
.book-card a{display:block;color:inherit;text-decoration:none}
.book-card h3{font-size:1rem;margin:10px 0 2px;line-height:1.4}
.book-card:hover h3{color:var(--red)}
.cover{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:8px;box-shadow:0 6px 18px rgba(0,0,0,.12);background:#f3f3f5}
.cover-placeholder{display:grid;place-items:center;padding:16px;text-align:center;background:linear-gradient(160deg,#a8473a,#5e2219);color:#fbf6ee;font-family:var(--serif);font-weight:600}
.cover-large{max-width:320px}picture{display:block}.cover-thumb{width:84px;flex:none}
.price-line{margin:4px 0}.price{color:var(--red)}.price-line.big{font-size:1.4rem;margin:16px 0}
.badge{display:inline-block;font-size:.8rem;padding:2px 10px;border-radius:999px;background:#f3e6df;color:var(--red);font-weight:700}
.empty{text-align:center;padding:52px 20px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.empty-mark{font-size:1.6rem;color:var(--red);margin:0;line-height:1}.empty-title{font-family:var(--serif);font-size:1.3rem;font-weight:600;margin:12px 0 8px}
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:28px}
.features h3{font-family:var(--serif);font-weight:600;font-size:1.08rem;margin:0 0 6px;color:var(--red)}.features p{margin:0;color:#4a443d}
.book-page{padding:28px 20px 56px}.crumbs{margin-bottom:20px;color:var(--muted)}.crumbs a{color:var(--muted)}
.book-detail{display:grid;grid-template-columns:minmax(200px,320px) 1fr;gap:40px;align-items:start}
.book-info h1{font-size:clamp(1.5rem,4vw,2.2rem);line-height:1.3;margin:0 0 8px}
.subtitle{font-size:1.1rem;color:#444;margin:0 0 16px}
.hook{font-family:var(--serif);font-size:1.02rem;line-height:1.75;color:var(--ink);border-left:3px solid var(--red);padding:2px 0 2px 14px;margin:0 0 18px}
.book-meta{list-style:none;padding:0;margin:0;display:grid;gap:4px}
.book-meta span{display:inline-block;min-width:64px;color:var(--muted)}
.buy-box{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0}
.external{margin-top:20px}.tags{margin-top:16px}.tag{color:var(--muted);font-size:.9rem}
.description,.preview{margin-top:48px;max-width:760px}
.preview-text{background:var(--bg-alt);border-left:4px solid var(--red);padding:16px 20px;border-radius:0 var(--radius) var(--radius) 0;font-family:var(--serif)}
.checkout{padding:40px 20px 64px}
.checkout-item{display:flex;gap:16px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:var(--radius);margin:16px 0 24px}
.checkout-title{font-weight:800;margin:0}
.notice{background:#fff7ed;border:1px solid #fed7aa;border-radius:var(--radius);padding:20px;margin-bottom:24px}
.notice-title{font-weight:800;font-size:1.15rem;margin:0 0 6px}
.message{padding:64px 20px;text-align:center}.status-code{font-size:3rem;font-weight:900;color:var(--red);margin:0}
.site-footer{background:#2a2622;color:#d9d2c7;padding:48px 0 24px;margin-top:0}
.site-footer h2{color:#fff;font-size:1rem;margin:0 0 10px}
.site-footer a{color:#e4b9a5}
.site-footer .muted{color:#a89f93}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}
.footer-links{list-style:none;padding:0;margin:0}
.copyright{margin-top:32px;padding-top:16px;border-top:1px solid #45403a;font-size:.85rem;color:#a89f93}
@media (max-width:760px){
  .nav{gap:12px}.nav a{font-size:.9rem}
  .book-detail{grid-template-columns:1fr;gap:24px}.cover-large{max-width:240px;margin:0 auto}
  .footer-grid{grid-template-columns:1fr;gap:24px}
  .book-grid{grid-template-columns:repeat(2,1fr);gap:16px}
  .hero{padding:52px 0 44px}
}
.pay-box{border:1px solid var(--line);border-radius:var(--radius);padding:20px;margin-bottom:24px}
.pay-amount{margin:0 0 12px}.pay-amount strong{font-size:1.3rem;color:var(--red)}
.pay-notes{padding-left:18px;margin:12px 0 0}
#paypal-buttons{max-width:420px}
.ok-title{font-weight:800;font-size:1.2rem;color:#15803d;margin:0 0 8px}
code{background:#f4f4f5;padding:1px 6px;border-radius:6px;font-size:.9em}
.faq{margin-top:48px;max-width:760px}
.faq dl{margin:0;border-top:1px solid var(--line)}
.faq dt{font-weight:700;margin:16px 0 4px}
.faq dd{margin:0 0 16px;color:#444;padding-bottom:16px;border-bottom:1px solid var(--line)}
.btn-read{font-size:1.15rem;padding:15px 34px;min-width:220px;box-shadow:0 6px 18px rgba(155,52,38,.22)}
.checkout-item picture{flex:none;width:84px}
