*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,"Hiragino Sans","Noto Sans JP",sans-serif;color:#1d2430;background:#f5f3ee;line-height:1.65}
.wrap{max-width:980px;margin:0 auto;padding:20px 16px 60px}
h1{font-size:1.7rem;margin:.2em 0 .4em;line-height:1.3}
h2{font-size:1.2rem;margin:0 0 .7em}
h3{font-size:1rem;margin:1.2em 0 .4em}
.kicker{font-size:.82rem;color:#5b6472;margin:0}
.lead{font-size:1rem}
.hero{background:#fff;border:2px solid #1f6f5c;border-radius:12px;padding:14px 16px;margin:14px 0}
.hero-title{font-weight:700;margin:0 0 6px}
.card{background:#fff;border-radius:12px;padding:18px;margin:18px 0;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.grid.five{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
label{display:flex;flex-direction:column;font-size:.9rem;font-weight:600;gap:4px}
label small{font-weight:400;color:#5b6472}
input,select{font:inherit;padding:8px 10px;border:1px solid #b9c0ca;border-radius:8px;background:#fff}
button{font:inherit;padding:9px 16px;border-radius:8px;border:0;background:#1f6f5c;color:#fff;cursor:pointer;font-weight:700}
button.ghost{background:#fff;color:#1f6f5c;border:1px solid #1f6f5c}
.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0}
.t{border-collapse:collapse;width:100%;font-size:.93rem;margin:8px 0}
.t th,.t td{border-bottom:1px solid #e3e0d8;padding:6px 8px;text-align:left;vertical-align:top}
.t td.n{text-align:right;font-variant-numeric:tabular-nums}
.t tr.win{background:#e6f4ee;font-weight:700}
.verdict{font-size:1.15rem;font-weight:800;color:#1f6f5c;margin:10px 0}
.note{background:#fff7e6;border-left:4px solid #e0a100;padding:6px 10px;margin:6px 0;font-size:.9rem}
.muted{color:#5b6472;font-size:.88rem}
.spec{font-size:.8rem;color:#5b6472;margin:14px 0 4px}
.paidline{background:#f0f6ff;border-radius:8px;padding:10px 12px;font-size:.92rem}
a.buy{display:inline-block;margin:4px 6px 0 0;padding:8px 14px;border-radius:8px;background:#c2410c;color:#fff;text-decoration:none;font-weight:700}
a.buy.alt{background:#fff;color:#c2410c;border:1px solid #c2410c}
.lock{border:1px dashed #c2410c;border-radius:10px;padding:10px 14px;margin-top:14px}
body.pro .lock{display:none}
.pro-only{display:none}
body.pro .pro-only{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center}
.filebtn{display:inline-flex;flex-direction:row;align-items:center;padding:8px 12px;border:1px solid #1f6f5c;border-radius:8px;color:#1f6f5c;cursor:pointer;font-weight:700}
.filebtn input{display:none}
.chk{display:inline-flex;flex-direction:column;align-items:center;font-size:.7rem;font-weight:400;margin:0 2px}
.del{background:#fff;color:#a33;border:1px solid #a33;padding:2px 8px;font-size:.8rem}
@media print{.card:not(#memo),header,.lock,.paidline,button{display:none!important}#memo{display:block!important}}
