*{box-sizing:border-box}body{margin:0;font-family:"Hiragino Sans","Noto Sans JP","Yu Gothic",sans-serif;background:#f4f2ee;color:#1d1d1b;line-height:1.6}
.top{background:#23382f;color:#fff;padding:22px 18px}.top h1{margin:0 0 8px;font-size:1.45rem;max-width:980px}.lead{margin:0;max-width:980px}.top b{color:#ffd88a}
main{max-width:1020px;margin:0 auto;padding:14px}.card{background:#fff;border-radius:10px;padding:16px;margin:0 0 14px;box-shadow:0 1px 3px #0002}
h2{font-size:1.1rem;margin:0 0 8px}h3{font-size:1rem;margin:14px 0 6px}.hint{color:#555;font-size:.9rem}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}label{display:block;font-size:.88rem;margin:4px 0}
input,select,textarea{width:100%;font:inherit;padding:6px 8px;border:1px solid #bbb;border-radius:6px;background:#fff}label.chk{display:flex;align-items:center;gap:8px}label.chk input{width:auto}
.tbl{overflow-x:auto}table{border-collapse:collapse;width:100%}#lines td,#lines th{padding:3px;border-bottom:1px solid #eee;font-size:.85rem;text-align:left}
#lines td input,#lines td select{padding:4px 5px}#lines input.n{width:96px}#lines input.u{width:56px}#lines input.d{width:60px}.amt{white-space:nowrap;text-align:right}
button,.buy{font:inherit;background:#23382f;color:#fff;border:0;border-radius:6px;padding:8px 14px;cursor:pointer;text-decoration:none;display:inline-block}
.ghost,.ghostbuy{background:#fff;color:#23382f;border:1px solid #23382f}button.x{background:none;color:#a33;border:0;padding:2px 4px;font-size:.8rem}
.result .big{font-size:1.25rem;font-weight:700;margin:0 0 6px}.bad{color:#b3261e}.ok{color:#1f6b3a}.loss{margin:0 0 10px}
.sum th,.sum td{padding:5px 8px;border-bottom:1px solid #eee;text-align:left}.sum td{text-align:right;white-space:nowrap}.sum tr.tot{font-weight:700}
ul.chk{padding-left:18px}ul.chk li.bad::marker{content:"✕ ";color:#b3261e}ul.chk li.ok::marker{content:"✓ ";color:#1f6b3a}
.upsell{background:#fff7e6;border-left:4px solid #e0a800;padding:10px;margin-top:12px}.list{padding-left:18px}.file{display:inline-block;padding:7px 12px;border-radius:6px}.file input{display:none}
.src{font-size:.8rem;color:#666}.sheet{display:none}
@media print{@page{size:A4;margin:14mm}body{background:#fff}.top,main{display:none}.sheet{display:block}.pg{page-break-after:always;font-size:10.5pt}
.pg h1{text-align:center;letter-spacing:.4em;border-bottom:2px solid #000}.hd{display:flex;justify-content:space-between}.to{font-size:14pt;border-bottom:1px solid #000}
.gt{font-size:15pt;font-weight:700;border:2px solid #000;padding:6px;text-align:center}.pg th,.pg td{border:1px solid #555;padding:3px 6px}.pg td:last-child{text-align:right}
.gk td{background:#eee;font-weight:700}.st td{font-weight:700}}
