/* 共通テンプレの道具用変数（template/public/style.css と逐語一致） */
:root, [data-theme="tool"] {
  color-scheme: light;
  --digit-bg:#f1f2ed;                /* ページの地 */
  --digit-surface:#fff;              /* 読む面 */
  --digit-surface-raised:#fff;       /* 一段だけ浮く面 */
  --digit-ink:#112c2a;               /* 主本文 */
  --digit-ink-muted:#5c6b67;         /* 補助本文 */
  --digit-line:#cbd4ce;              /* 構造の罫線（節の境目） */
  --digit-line-control:#748a86;      /* 操作の輪郭（入力欄・副操作） */
  --digit-signal:#087862;            /* 主操作と現在地 */
  --digit-signal-ink:#fff;           /* signal 上の文字 */
  --digit-signal-deep:#05604e;       /* 押している最中の signal */
  --digit-soft:#e2efe9;              /* 現在地をごく薄く塗る面 */
  --digit-ok:#0a6b4f;                /* 完了 */
  --digit-caution:#8a5a00;           /* 要確認 */
  --digit-danger:#a3261d;            /* 失敗 */
  --digit-paper-texture:none;        /* 棚固有のごく薄い質感 */
  --digit-font-body:"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic UI",Meiryo,system-ui,sans-serif;
  --digit-font-display:var(--digit-font-body);
  --digit-font-numeric:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  --digit-reading-measure:40em;      /* 35〜45字の行長（日本語は全角で約半分） */
  --digit-space-related:12px;        /* 同じ話の内部 */
  --digit-space-section:38px;        /* 話が変わる境目 */
  --digit-radius-control:2px;        /* 操作 */
  --digit-radius-surface:0px;        /* 面 */
  --digit-cut-size:18px;             /* 社章由来の切り角 */
  --digit-shadow-one:0 18px 45px #17352b14;  /* 唯一の影 */
  --digit-focus-ring:#b06c00;        /* フォーカス指輪 */
  --digit-trace:#183f3810;           /* 一本の結線（地に残る痕） */
  --digit-enter-duration:160ms;
  --digit-exit-duration:120ms;
  --digit-ease-out:ease-out;
  --digit-measure-frame:1120px;      /* 画面の器の幅 */
}
:root{--bg:var(--digit-bg);--surface:var(--digit-surface);--ink:var(--digit-ink);--ink-2:var(--digit-ink-muted);--line:var(--digit-line);--fill:var(--digit-soft);--accent:var(--digit-signal);--on-accent:var(--digit-signal-ink);--ok:var(--digit-ok);--warn:var(--digit-caution);--danger:var(--digit-danger);--radius:var(--digit-radius-surface);--base:16px;font-family:var(--digit-font-body)}
@media (prefers-color-scheme: dark) {
  :root, [data-theme="tool"] {
    color-scheme:dark;
    --digit-bg:#0f1512; --digit-surface:#17201d; --digit-surface-raised:#1d2724;
    --digit-ink:#e7efe9; --digit-ink-muted:#9fb0a9;
    --digit-line:#2f3d38; --digit-line-control:#63817a;
    --digit-signal:#5fd2b2; --digit-signal-ink:#06201a; --digit-signal-deep:#45b998;
    --digit-soft:#15302a;
    --digit-ok:#5fd2b2; --digit-caution:#f0c06a; --digit-danger:#ff9b91;
    --digit-shadow-one:0 18px 45px #00000059; --digit-focus-ring:#ffcc33;
    --digit-trace:#8fd8c41a;
  }
}
*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--digit-bg);color:var(--digit-ink);font:16px/1.8 var(--digit-font-body);overflow-wrap:anywhere}a{color:var(--digit-signal);text-underline-offset:4px}img,svg,canvas{max-width:100%;height:auto}[hidden]{display:none!important}
.ai-disclosure{padding:9px max(20px,calc((100vw - var(--digit-measure-frame))/2));border-bottom:1px solid var(--digit-line);background:var(--digit-surface);color:var(--digit-ink-muted);text-align:left;font-size:13px}.ai-disclosure::before{content:"◆ AI運営";margin-right:10px;color:var(--digit-signal);font:700 12px/1.7 var(--digit-font-numeric)}.brand-mark{width:32px;height:32px;flex:none;clip-path:polygon(0 0,72% 0,100% 28%,100% 100%,0 100%)}.site-header,main,.site-footer>*{max-width:var(--digit-measure-frame);margin-inline:auto}.site-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0}.brand{display:flex;align-items:center;gap:12px;color:var(--digit-ink);font-weight:700;text-decoration:none}.badge{border:1px solid var(--digit-line-control);border-radius:999px;padding:3px 12px;color:var(--digit-ink-muted);font-size:12px;font-weight:700}main{padding:clamp(30px, 6vw, 68px) 0 80px}.content{max-width:820px}
h1{max-width:20ch;margin:0 0 18px;font-size:clamp(32px,5.4vw,60px);line-height:1.14;letter-spacing:-.03em;text-wrap:balance;word-break:auto-phrase}h2{margin:0 0 12px;font-size:21px}.kicker{display:block;margin:0 0 10px;color:var(--digit-signal);font:700 12px/1.6 var(--digit-font-numeric);letter-spacing:.15em}.lead{max-width:var(--digit-reading-measure);margin:0 0 38px;font-size:18px}.journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:620px;margin:34px 0 38px;padding:0;list-style:none}.journey>*{border-top:1px solid var(--digit-line);padding:10px 8px 0 0;font-weight:700}.journey>.is-now{border-top-color:var(--digit-signal)}.journey b{display:block;color:var(--digit-signal);font:700 12px/1.6 var(--digit-font-numeric)}
.card{margin:0 0 24px;padding:22px;border:1px solid var(--digit-line);background:var(--digit-surface)}.panel{margin-bottom:24px;padding:26px;background:var(--digit-surface-raised);box-shadow:var(--digit-shadow-one);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%)}button,input,textarea{font:inherit;color:inherit}textarea{display:block;width:100%;min-height:104px;padding:11px 13px;border:1px solid var(--digit-line-control);border-radius:var(--digit-radius-control);background:var(--digit-surface);resize:vertical;line-height:1.6}.primary,.secondary,.copy-row>button{min-width:48px;min-height:48px;padding:10px 22px;border-radius:var(--digit-radius-control);font-weight:700}.primary{border:1px solid var(--digit-signal);background:var(--digit-signal);color:var(--digit-signal-ink)}.secondary,.copy-row>button{border:1px solid var(--digit-line-control);background:var(--digit-surface)}.actions,.copy-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}:focus-visible{outline:3px solid var(--digit-focus-ring);outline-offset:3px}
.field-group{margin-top:24px}.field-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:6px}.field-heading label{display:flex;flex-direction:column;font-weight:700}.field-heading span,.field-heading output,.muted,.field-help{color:var(--digit-ink-muted);font-size:14px}.save-note{margin:0;padding:8px 12px;background:var(--digit-soft)}.privacy-note{margin:0 0 8px;padding:10px 12px;border-left:4px solid var(--digit-caution);background:var(--digit-soft);font-size:14px}fieldset{margin:24px 0 0;padding:0;border:0}legend{font-weight:700}.check-row{display:flex;gap:10px;min-height:48px;padding:10px 0;border-top:1px solid var(--digit-line)}.check-row input{accent-color:var(--digit-signal)}.status{min-height:1.85em;color:var(--digit-signal);font-weight:700}.status[data-kind=error]{color:var(--digit-danger)}
.faq details{border-top:1px solid var(--digit-line);padding:10px 0}.faq summary{min-height:48px;display:flex;align-items:center;gap:10px;font-weight:700;cursor:pointer;list-style:none}.faq summary::before{content:"▶";display:grid;place-items:center;width:24px;height:24px;background:var(--digit-signal);color:var(--digit-signal-ink);font-size:11px}.ad-slot{min-height:100px;margin:38px 0;padding:16px;display:grid;place-items:center;border:1px dashed var(--digit-line-control);color:var(--digit-ink-muted);text-align:center}.ad-slot p,.ad-slot small{margin:0}.site-footer{margin-top:38px;padding:26px 0 34px;border-top:1px solid var(--digit-line);color:var(--digit-ink-muted);font-size:13px;text-align:left}.site-footer nav{display:flex;flex-wrap:wrap;gap:8px 20px}.site-footer p{margin:10px auto 0}
@media(max-width:640px){.ai-disclosure{padding:8px 20px}.ai-disclosure::before{display:block}main{padding:28px 0 56px;padding-inline:16px}h1{font-size:clamp(30px,10vw,44px)}.panel{padding:20px}.field-heading{align-items:flex-start}.actions>button{flex:1 1 100%}}@media(max-width:359px){.site-header{flex-wrap:wrap}.badge{order:3;flex-basis:100%}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
