@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+KR:wght@500;700&family=Gothic+A1:wght@400;500;700&family=Cormorant+Garamond:ital,wght@1,500&display=swap');
:root{
  --stone:#ECE9E1; --paper:#F8F6F1; --ink:#23271F; --ink2:#3C4137; --sub:#5E6359; --line:#D6D1C4;
  --sage:#4F6248; --sage-soft:#DDE3D6; --seal:#8C3B2E; --seal-in:#7A3226; --seal-ink:#F1D9CF; --warn-bg:#F3E3DE; --warn-ink:#5C2A21;
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--stone);color:var(--ink);font-family:'Gothic A1',-apple-system,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;-webkit-font-smoothing:antialiased}
.it{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:500}
.sr{font-family:'Noto Serif KR','Apple Myungjo',serif}
button{font:inherit;cursor:pointer}
a{color:inherit}
:focus-visible{outline:2px solid var(--sage);outline-offset:2px}
.btn{display:flex;justify-content:center;align-items:center;gap:10px;width:100%;height:56px;border:0;border-radius:28px;background:var(--ink);color:var(--paper);font-size:16px;font-weight:700;text-decoration:none}
.btn.sage{background:var(--sage)}
.btn.seal{background:var(--seal)}
.btn.ghost{background:transparent;border:1px solid currentColor}
.btn:disabled{opacity:.5;cursor:default}
.seal{border-radius:50%;background:var(--seal);box-shadow:inset 0 0 0 5px var(--seal-in),0 6px 14px rgba(0,0,0,.25);display:flex;align-items:center;justify-content:center;color:var(--seal-ink)}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(120px);background:var(--ink);color:var(--paper);padding:12px 18px;border-radius:14px;font-size:14px;transition:transform .3s,opacity .3s;opacity:0;pointer-events:none;z-index:50;max-width:calc(100% - 32px)}
.toast.show{transform:translateX(-50%) translateY(0);opacity:1}
@media print{ body{background:#fff} .noprint{display:none!important} }
