:root{--fg: #1a1a1a;--muted: #555;--line: #ddd;--accent: #0b6b5f;--band-bg: #eef7f5;--warn-bg: #fff4e5;--dv-bg: #7a1020}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;color:var(--fg);line-height:1.7;background:#fafafa}.app{max-width:720px;margin:0 auto;padding:16px 16px 96px}h1{font-size:1.35rem;margin:.4em 0}.lead{color:var(--muted)}.tabs{display:flex;gap:8px;margin:16px 0}.tabs button{flex:1;padding:12px 8px;border:1px solid var(--line);background:#fff;border-radius:8px 8px 0 0;font-size:.95rem;cursor:pointer}.tabs button.active{border-color:var(--accent);color:var(--accent);font-weight:700}.calc-form{display:flex;flex-direction:column;gap:14px}.field{display:flex;flex-direction:column;gap:4px}.field span{font-weight:600}.field input{width:100%;padding:10px;font-size:1rem;border:1px solid var(--line);border-radius:6px}.help{color:var(--muted);font-size:.85rem;margin:0}fieldset{border:1px solid var(--line);border-radius:6px;margin:0}.income-type{display:flex;gap:16px;align-items:center}.income-type label{display:inline-flex;gap:4px;align-items:center}.children{display:flex;gap:16px;flex-wrap:wrap}.children .field{flex:1;min-width:120px}.submit{padding:14px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:1.05rem;font-weight:700;cursor:pointer}.result{margin-top:20px;padding:16px;background:var(--band-bg);border-radius:8px}.result.out-of-range{background:var(--warn-bg)}.result .band{font-size:1.25rem;font-weight:700;margin:0 0 8px}.result .note,.result .info,.result .desc{font-size:.9rem;color:var(--muted)}.result .cta{margin-top:12px;font-size:.9rem}footer{margin-top:28px;padding-top:16px;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}.dv-banner{position:fixed;left:0;right:0;bottom:0;background:var(--dv-bg);color:#fff;padding:10px 16px;font-size:.85rem;text-align:center}
