.sdplan{--sp-ink:#17302c;--sp-soft:#f0f7f4;--sp-line:#c7d6cf;--sp-accent:#215d4f;color:var(--sp-ink);border:1px solid var(--sp-line);overflow-wrap:anywhere;background:#fff;border-radius:20px;margin:2.2rem 0;font-family:system-ui,-apple-system,Noto Sans CJK JP,sans-serif;line-height:1.85}.sdplan *{box-sizing:border-box}.sdplan [hidden]{display:none!important}.sdplan .sdplan-heading{background:var(--sp-soft);border-radius:20px 20px 0 0;padding:1.6rem 1.6rem 1rem}.sdplan h3{margin:.3rem 0 .7rem;font-size:clamp(1.3rem,3vw,1.8rem);line-height:1.55}.sdplan p{margin:.6rem 0}.sdplan .sdplan-kicker{letter-spacing:.12em;color:var(--sp-accent);font-size:.78rem;font-weight:750}.sdplan .sdplan-static,.sdplan .sdplan-interactive{padding:0 1.6rem}.sdplan .sdplan-static{padding-top:.9rem}.sdplan .sdplan-static p,.sdplan .sdplan-help,.sdplan .sdplan-selected,.sdplan .sdplan-privacy{font-size:.86rem}.sdplan fieldset{border:1px solid var(--sp-line);border-radius:12px;min-width:0;margin:1.3rem 0;padding:1rem 1.1rem}.sdplan legend{padding:0 .4rem;font-size:1rem;font-weight:750}.sdplan label{min-width:0;margin:.8rem 0 .3rem;font-size:.95rem;font-weight:650;display:block}.sdplan input,.sdplan select{width:100%;min-width:0;font:inherit;color:#17302c;background:#fff;border:1px solid #81998f;border-radius:8px;min-height:48px;margin-top:.4rem;padding:.7rem .75rem;font-size:16px;line-height:1.5;display:block}.sdplan input:focus,.sdplan select:focus,.sdplan button:focus-visible,.sdplan .sdplan-result:focus,.sdplan .sdplan-errors:focus{outline-offset:3px;outline:3px solid #648dca}.sdplan [aria-invalid=true]{border:2px solid #b4362f}.sdplan .sdplan-three{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.sdplan .sdplan-help{color:#53665f}.sdplan .sdplan-selected{color:#33594b;border-left:3px solid #b6d2c4;padding-left:.7rem}.sdplan .sdplan-actions{flex-wrap:wrap;gap:.8rem;display:flex}.sdplan button{font:inherit;border:1px solid var(--sp-accent);background:var(--sp-accent);color:#fff;cursor:pointer;border-radius:10px;min-height:48px;padding:.65rem 1.2rem;font-size:1rem;font-weight:700}.sdplan .sdplan-secondary{color:var(--sp-accent);background:#fff}.sdplan .sdplan-status{min-height:1.85em;font-size:.9rem}.sdplan .sdplan-errors{background:#fff4ed;border:1px solid #e3a17d;border-radius:10px;margin:1rem 0;padding:1rem}.sdplan .sdplan-errors ul{padding-left:1.4rem}.sdplan .sdplan-result{background:var(--sp-soft);border:1px solid #afc9bd;border-radius:12px;margin:1.2rem 0 1.6rem;padding:1.25rem}.sdplan .sdplan-result h4{margin:0 0 .6rem;font-size:1.05rem}.sdplan .sdplan-amount{letter-spacing:-.03em;font-size:clamp(1.8rem,5vw,2.8rem);font-weight:800;line-height:1.4}.sdplan .sdplan-result dl{grid-template-columns:minmax(0,1fr) auto;gap:.5rem 1rem;font-size:.92rem;display:grid}.sdplan .sdplan-result dd{font-variant-numeric:tabular-nums;text-align:right;margin:0}.sdplan .sdplan-result dt{min-width:0}.sdplan .sdplan-result-note{border-top:1px solid #bed0c6;padding-top:.8rem;font-size:.88rem}.sdplan .sdplan-privacy{color:#53665f;padding:1rem 1.6rem 1.5rem}.sdplan .sdplan-notice{background:#fff4ed;border-radius:8px;padding:1rem;margin:1rem 1.6rem!important}@media (width<=600px){.sdplan .sdplan-heading{padding:1.15rem 1rem .8rem}.sdplan .sdplan-static,.sdplan .sdplan-interactive{padding-left:1rem;padding-right:1rem}.sdplan .sdplan-three{grid-template-columns:1fr;gap:0}.sdplan fieldset{padding:.8rem}.sdplan .sdplan-actions{grid-template-columns:1fr;display:grid}.sdplan button{width:100%;font-size:.94rem}.sdplan .sdplan-result{padding:1rem}.sdplan .sdplan-result dl{grid-template-columns:1fr}.sdplan .sdplan-result dd{text-align:left;margin-bottom:.5rem;font-weight:700}.sdplan .sdplan-privacy{padding:1rem}.sdplan select{font-size:16px}}.editorial-copy .sdplan{--sp-ink:var(--foreground);--sp-soft:var(--surface-soft);--sp-line:var(--border);--sp-accent:var(--foreground);background:var(--background);border-radius:8px}.editorial-copy .sdplan :is(h3,h4){color:var(--foreground);border:0;padding:0}.editorial-copy .sdplan :is(input,select){background:var(--background);color:var(--foreground);border-color:var(--border)}.editorial-copy .sdplan :is(.sdplan-help,.sdplan-selected,.sdplan-privacy){color:var(--muted-foreground)}.editorial-copy .sdplan :is(.sdplan-notice,.sdplan-errors){background:var(--surface-note);color:var(--foreground)}.editorial-copy .sdplan button{color:var(--background);max-width:100%}.editorial-copy .sdplan .sdplan-secondary{color:var(--foreground);background:0 0}
