:root{--paper:#f6f2e9;--sheet:#fffdf8;--ink:#26221d;--sub:#6d665c;--line:#ddd5c6;--accent:#a8352a;--accent-ink:#fffdf8;--ok:#3f6b4a;--warn:#9a6a12;--focus:#2f5d8a;--serif:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;--sans:"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#1d1b18;--sheet:#26231f;--ink:#ece6da;--sub:#a8a093;--line:#3d3832;--accent:#d0675a;--accent-ink:#1d1b18;--ok:#8fbf98;--warn:#d9a64a;--focus:#8db6de}}*{box-sizing:border-box}body,html{margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}a{color:inherit}h1,h2,h3{font-family:var(--serif);font-weight:600;letter-spacing:.04em;line-height:1.5}h1{font-size:1.55rem;margin:0 0 .4rem}h2{font-size:1.15rem;margin:2rem 0 .8rem}h3{font-size:1rem;margin:1.2rem 0 .4rem}p{margin:0 0 .8rem}.muted{color:var(--sub)}.small{font-size:.85rem}.wrap{max-width:1080px;margin:0 auto;padding:0 16px}.narrow{max-width:720px}header.top{border-bottom:1px solid var(--line);background:var(--sheet)}header.top .wrap{display:flex;align-items:center;gap:24px;min-height:60px;flex-wrap:wrap}header.top .brand{font-family:var(--serif);font-weight:600;letter-spacing:.08em;text-decoration:none}header.top nav{display:flex;gap:18px;flex-wrap:wrap;font-size:.92rem}header.top nav a{text-decoration:none;color:var(--sub)}header.top nav a:hover{color:var(--ink)}header.top .spacer{flex:1 1}main{padding:32px 0 80px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:.95rem;padding:9px 18px;min-height:42px;border:1px solid var(--ink);background:transparent;color:var(--ink);border-radius:2px;cursor:pointer;text-decoration:none}.btn:hover{background:color-mix(in srgb,var(--ink) 6%,transparent)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{filter:brightness(1.06)}.btn.quiet{border-color:var(--line);color:var(--sub)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.small{min-height:32px;padding:4px 12px;font-size:.85rem}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sheet{background:var(--sheet);border:1px solid var(--line);padding:24px}.rule{border:0;border-top:1px solid var(--line);margin:28px 0}label.f{display:block;margin-bottom:16px}label.f>span{display:block;font-size:.88rem;margin-bottom:4px}label.f>span em{font-style:normal;color:var(--sub)}label.f>span b,label.f>span em{font-size:.75rem;margin-left:6px}label.f>span b{font-weight:400;color:var(--accent)}input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],select,textarea{width:100%;font:inherit;color:var(--ink);background:var(--sheet);border:1px solid var(--line);border-radius:2px;padding:9px 11px;min-height:42px}textarea{min-height:96px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--focus);outline:none}table.list{width:100%;border-collapse:collapse;font-size:.92rem}table.list td,table.list th{text-align:left;padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:top}table.list th{font-weight:400;color:var(--sub);font-size:.8rem}table.list tr:hover td{background:color-mix(in srgb,var(--ink) 3%,transparent)}.table-scroll{overflow-x:auto}.status{display:inline-block;font-size:.78rem;padding:1px 8px;border:1px solid;border-radius:2px;white-space:nowrap}.status.completed{color:var(--ok)}.status.sent,.status.viewed{color:var(--warn)}.status.canceled,.status.expired{color:var(--sub)}.notice{border:1px solid var(--line);background:var(--sheet);padding:12px 16px;margin:0 0 20px;font-size:.92rem}.notice.err{border-color:var(--accent);color:var(--accent)}.notice.ok{border-color:var(--ok);color:var(--ok)}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 20px;gap:0 20px}@media (max-width:640px){.grid2{grid-template-columns:1fr}}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:14px;gap:14px}.card{display:block;background:var(--sheet);border:1px solid var(--line);padding:16px 18px;text-decoration:none}.card.selectable{cursor:pointer}.card.selected{border-color:var(--accent);outline:1px solid var(--accent)}.card .t{font-family:var(--serif);font-weight:600}.pdf-pages{display:flex;flex-direction:column;gap:14px;align-items:center}.pdf-page{position:relative;background:#fff;border:1px solid var(--line);max-width:100%}.pdf-page canvas{display:block;width:100%;height:auto}.pdf-overlay{position:absolute;inset:0}.pdf-loading{padding:40px;color:var(--sub);text-align:center}.fill-text{position:absolute;white-space:nowrap;color:#1b3f8f;font-family:var(--serif);line-height:1}.fill-text.pending{color:#9aa6c4}.ph{position:absolute;white-space:nowrap;line-height:1;border:1px dashed #2f5d8a;background:rgba(47,93,138,.08);color:#1d3c5e;font-family:var(--sans);cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.ph.sel{border-style:solid;background:rgba(47,93,138,.18)}.ph .lbl{display:none;position:absolute;left:0;top:-15px;font-size:10px;background:#2f5d8a;color:#fff;padding:0 4px;line-height:14px}.editor{display:grid;grid-template-columns:260px 1fr;grid-gap:24px;gap:24px;align-items:start}.editor aside{position:-webkit-sticky;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto}@media (max-width:820px){.editor{grid-template-columns:1fr}.editor aside{position:static;max-height:none}}.palette button{display:flex;width:100%;justify-content:space-between;text-align:left;margin-bottom:6px}.palette button.on{border-color:var(--focus);color:var(--focus)}.sign-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:28px;gap:28px;align-items:start}.sign-layout aside{position:-webkit-sticky;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto}@media (max-width:900px){.sign-layout{grid-template-columns:1fr}.sign-layout aside{position:static;max-height:none}}.kv{display:grid;grid-template-columns:9em 1fr;grid-gap:6px 14px;gap:6px 14px;font-size:.92rem}.kv dt{color:var(--sub)}.kv dd{margin:0;word-break:break-all}.steps{counter-reset:s;list-style:none;padding:0;margin:0 0 18px;display:flex;gap:10px;flex-wrap:wrap;font-size:.85rem;color:var(--sub)}.steps li:before{counter-increment:s;content:counter(s) ". "}.steps li.now{color:var(--ink)}.ph.sel .lbl,.ph:hover .lbl{display:block;z-index:2}.seal-target{position:absolute;padding:0;border-radius:50%;cursor:pointer;border:2px dashed #c7211a;background:rgba(199,33,26,.07);color:#c7211a;font:600 12px var(--serif);display:flex;align-items:center;justify-content:center;animation:seal-pulse 1.6s ease-in-out infinite}.seal-target.done{border:0;background:transparent;animation:none}@keyframes seal-pulse{50%{background:rgba(199,33,26,.18)}}@media (prefers-reduced-motion:reduce){.seal-target{animation:none}}.fill-text.clickable{cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.checklist{list-style:none;padding:0;margin:0 0 14px;font-size:.88rem}.checklist li{padding:2px 0;color:var(--sub)}.checklist li.ok{color:var(--ok)}.checklist li:before{content:"○ "}.checklist li.ok:before{content:"● "}.seal-callout{position:absolute;transform:translate(calc(-100% - 10px),-50%);white-space:nowrap;pointer-events:none;z-index:3;background:#c7211a;color:#fff;font:600 12px var(--sans);line-height:1;padding:6px 8px;border-radius:3px;animation:callout-nudge 1s ease-in-out infinite}.seal-callout .arrow{margin-left:6px}@keyframes callout-nudge{0%,to{transform:translate(calc(-100% - 14px),-50%);opacity:1}50%{transform:translate(calc(-100% - 4px),-50%);opacity:.55}}.seal-target:not(.done){box-shadow:0 0 0 0 rgba(199,33,26,.5);animation:seal-pulse 1.6s ease-in-out infinite,seal-ring 1.6s ease-out infinite}@keyframes seal-ring{0%{box-shadow:0 0 0 0 rgba(199,33,26,.55)}to{box-shadow:0 0 0 14px rgba(199,33,26,0)}}.seal-side{border:0;background:none;padding:0;cursor:pointer;border-radius:50%;flex:none}.seal-side:not(.done){animation:seal-ring 1.6s ease-out infinite}.seal-side-label{color:#c7211a;font-weight:600;animation:label-blink 1.2s ease-in-out infinite}@keyframes label-blink{50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.seal-callout,.seal-side-label,.seal-side:not(.done),.seal-target:not(.done){animation:none}}label.f input[aria-invalid=true]{border-color:#c7211a;background:#fff6f5}.field-err{display:block;margin-top:5px;color:#c7211a;font-size:.82rem;line-height:1.5}.field-err:before{content:"！ ";font-weight:700}.btn.primary.not-ready{opacity:.55}