.zp {max-width:52rem;margin:0 auto}
.zp [hidden] {display:none!important}
.zp-tool {border:1px solid var(--rule);border-radius:var(--radius-lg);padding:clamp(16px,4vw,38px)}
.zp-tool h2,.zp-guide h2{margin-top:1.2em}.zp-tool h2{margin-top:0}
.zp-tool h3{margin:2em 0 .4em}.zp h3 small{color:var(--ink-muted);font-size:.75em}
.zp-controls,.zp-memos{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
.zp-controls label,.zp-leaf{display:grid;gap:4px;font-weight:600}
.zp input,.zp select{font:inherit;width:100%;min-width:0;min-height:44px;color:var(--ink);border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper);padding:7px 10px}
.zp input:focus,.zp select:focus{outline:2px solid var(--accent);outline-offset:2px}
.zp-tool p{margin:1em 0}.zp-summary{font-weight:700;padding:12px;color:var(--accent);background:var(--accent-soft);border-radius:var(--radius)}
.zp-leaf{font-size:.875rem}.zp-leaf b{color:var(--accent)}.zp-paper-note{display:none}
.zp table{width:100%;border-collapse:collapse;margin:12px 0 22px;font-variant-numeric:tabular-nums}
.zp caption{text-align:left;font-size:.85rem;color:var(--ink-muted);padding-bottom:6px}
.zp th,.zp td{text-align:center;padding:7px 2px;border-bottom:1px solid var(--rule)}
.zp-pair{display:inline-grid;grid-template-columns:1fr 1fr;border:1px solid var(--rule);border-radius:3px;min-width:4em;color:var(--accent)}
.zp-pair span+span{border-left:1px dashed var(--rule)}
@media print {
  .site-head,.site-foot,.skip,.zp-guide,.zp-controls,.zp [data-print],.zp header p,.zp-tool>h2,.zp-tool>p:not(.zp-summary),.zp [data-result]>p{display:none!important}
  .zp,.wrap{max-width:none;width:auto;margin:0}.zp header,.zp-tool{padding:0;margin:0;border:0}.zp header h1{font-size:18pt}
  .zp-memos{display:grid;grid-template-columns:repeat(2,1fr);gap:1mm 5mm}
  .zp-leaf{display:block;break-inside:avoid;border-bottom:1px solid #aaa;min-height:10mm}
  .zp-enhanced .zp-leaf input{display:none}.zp-enhanced .zp-paper-note{display:block;white-space:pre-wrap;overflow-wrap:anywhere}
  .zp tr{break-inside:avoid}.zp-tool h3{break-after:avoid}.zp .zp-summary{background:none;color:black;padding:0}
}
