:root{color:#17211b;font-synthesis:none;background:#f4f1e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}a{color:inherit}button,textarea,select{font:inherit}button{cursor:pointer}.site-header,footer{justify-content:space-between;align-items:center;max-width:1120px;margin:auto;padding:1.25rem;display:flex}.site-header nav{gap:1rem;display:flex}.brand{font-weight:800;text-decoration:none}main{max-width:880px;margin:auto;padding:2rem 1.25rem 5rem}.hero{padding:4rem 0 2.5rem}.hero h1{letter-spacing:-.06em;margin:.5rem 0 1rem;font-size:clamp(2.25rem,8vw,4.75rem);line-height:.98}.eyebrow,.step{color:#28724b;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;font-weight:800}.lead{color:#46534a;max-width:55ch;font-size:1.2rem}.tool,.content-section{background:#fffdf6;border:1px solid #d7d2c4;border-radius:1.25rem;margin-top:1.5rem;padding:clamp(1.25rem,4vw,2.5rem);box-shadow:0 18px 60px #2a362d14}.tool-heading{justify-content:space-between;align-items:start;gap:1rem;display:flex}h2{margin-top:.2rem}label{margin:1rem 0 .5rem;font-weight:700;display:block}textarea,select{background:#fff;border:1px solid #aeb8b0;border-radius:.7rem;width:100%;padding:.85rem}textarea{resize:vertical;min-height:8rem}.constraint{color:#647067;font-size:.85rem}button{border:1px solid #1c5f3d;border-radius:999px;padding:.75rem 1rem;font-weight:750}.primary{color:#fff;background:#1c5f3d}.secondary,.feedback button{color:#1c5f3d;background:0 0}.result{border-top:1px solid #ded9cd;margin-top:2rem;padding-top:2rem}pre{color:#e8f4eb;white-space:pre-wrap;background:#17211b;border-radius:.8rem;padding:1rem;overflow:auto}.feedback{background:#eef4ef;border-radius:.8rem;margin-top:2rem;padding:1rem}.feedback-buttons{gap:.5rem;display:flex}.error{color:#a62a20;font-weight:700}.legal{box-shadow:none}footer{color:#556258;border-top:1px solid #d7d2c4;font-size:.85rem}@media (width<=620px){.site-header nav{display:none}.tool-heading,footer{flex-direction:column;align-items:stretch}.hero{padding-top:2rem}}input[type=text]{font:inherit;background:#fff;border:1px solid #aeb8b0;border-radius:.7rem;width:100%;padding:.85rem}.field-row{grid-template-columns:1fr 1fr;gap:0 1rem;display:grid}.field{min-width:0}fieldset{border:1px solid #ded9cd;border-radius:.8rem;margin:1.5rem 0 0;padding:.5rem 1rem 1rem}legend{padding:0 .4rem;font-weight:750}fieldset .constraint{margin:.4rem 0 .8rem}.elder-row{grid-template-columns:1fr 1fr auto;align-items:center;gap:.5rem;margin-bottom:.6rem;display:grid}.elder-row .remove-elder{white-space:nowrap;padding:.55rem .8rem}#add-elder:disabled{color:#8a948c;border-color:#aeb8b0}.checkbox{align-items:center;gap:.6rem;margin:.5rem 0;font-weight:400;display:flex}.checkbox input{accent-color:#1c5f3d;width:1.1rem;height:1.1rem;margin:0}#pack-summary{margin-bottom:.8rem}@media (width<=640px){.field-row{grid-template-columns:1fr}.elder-row{grid-template-columns:1fr 1fr}.elder-row .remove-elder{grid-column:1/-1;justify-self:start}}.style-options{gap:.6rem;display:grid}.style-option{cursor:pointer;background:#fff;border:1px solid #ded9cd;border-radius:.8rem;grid-template-columns:auto auto 1fr;align-items:center;gap:.8rem;margin:0;padding:.8rem;font-weight:400;display:grid}.style-option:has(input:checked){border-color:#1c5f3d;box-shadow:inset 0 0 0 1px #1c5f3d}.style-option input{accent-color:#1c5f3d;width:1.1rem;height:1.1rem;margin:0}.style-swatch{border:1px solid #ded9cd;border-radius:.4rem;width:2.4rem;height:2.4rem;display:block}.style-swatch[data-theme=classic]{background:linear-gradient(135deg,#fdfbf6 55%,#8a6a26 55%)}.style-swatch[data-theme=modern]{background:linear-gradient(135deg,#fff 55%,#2f5d50 55%)}.style-swatch[data-theme=hanji]{background:linear-gradient(135deg,#fbf6f1 55%,#9c4a2f 55%)}.style-copy{gap:.15rem;display:grid}.style-copy strong{font-weight:750}.style-copy span{color:#647067;font-size:.85rem}#pdf-preview{aspect-ratio:1/1.15;background:#fff;border:1px solid #ded9cd;border-radius:.8rem;width:100%;margin-bottom:1rem;display:block}.text-preview{margin-bottom:1rem}.text-preview summary{color:#1c5f3d;cursor:pointer;font-weight:700}.text-preview pre{max-height:22rem;margin-top:.8rem}.sheet-preview{margin:0 0 1rem}.sheet-preview #sign-preview{background:#fff;border:1px solid #ded9cd;border-radius:.4rem;overflow:hidden;box-shadow:0 6px 20px #17211b1f}.sheet-preview svg{width:100%;height:auto;display:block}.sheet-preview figcaption{color:#647067;text-align:center;margin-top:.6rem;font-size:.85rem}
