:root{--bg:#f6f5f1;--surface:#fff;--surface2:#efede6;--ink:#21221e;--muted:#6e6c63;--line:#e0ded5;--accent:#a66e06;--accent-ink:#7a5104;--company:#1e7a4c;--personal:#b3372b;--radius:12px}@media (prefers-color-scheme:dark){:root{--bg:#17181a;--surface:#1f2124;--surface2:#26282c;--ink:#eceae2;--muted:#9c9a90;--line:#35373c;--accent:#e3a427;--accent-ink:#e3a427;--company:#4cc38a;--personal:#f0705e}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Hiragino Sans,Noto Sans JP,Yu Gothic,sans-serif;font-size:16px;line-height:1.7}a{color:var(--accent-ink)}.wrap{max-width:560px;margin:0 auto;padding:20px 16px 64px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:14px;padding:20px}.eyebrow{letter-spacing:.12em;color:var(--accent-ink);font-size:12px;font-weight:700}h1{text-wrap:balance;margin:4px 0 8px;font-size:24px;line-height:1.35}h2{margin:0 0 8px;font-size:16px}p.muted,.muted{color:var(--muted);font-size:14px}.btn{text-align:center;cursor:pointer;border:1px solid var(--line);background:var(--surface2);width:100%;min-height:52px;color:var(--ink);border-radius:10px;margin-top:10px;padding:14px;font-family:inherit;font-size:16px;font-weight:700;text-decoration:none;display:block}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}@media (prefers-color-scheme:dark){.btn.primary{color:#1b1405}}.btn:disabled{opacity:.5;cursor:default}input[type=email]{border:1px solid var(--line);background:var(--surface2);width:100%;min-height:52px;color:var(--ink);border-radius:10px;padding:12px 14px;font-family:inherit;font-size:17px}input:focus,.btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}ul.features{margin:0;padding-left:1.3em}ul.features li{margin:6px 0}.price{font-variant-numeric:tabular-nums;font-size:34px;font-weight:800}.price small{color:var(--muted);font-size:15px;font-weight:600}.topbar{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;font-size:14px;display:flex}.topbar .links{gap:14px;display:flex}.calc-frame{border:none;width:100%;height:calc(100dvh - 49px);display:block}.notice{color:var(--muted);margin-top:10px;font-size:13px}footer.site{text-align:center;color:var(--muted);margin-top:28px;font-size:12px}footer.site a{margin:0 8px}
