.fn-tool{margin:28px 0;padding:20px;border:1px solid #c5d0be;border-radius:8px;background:#f6f5ed;max-width:100%;box-sizing:border-box}
.fn-tool summary{font-family:Georgia,serif;font-size:23px;line-height:1.35;cursor:pointer;color:#294d37;min-height:44px}
.fn-tool[open] summary{margin-bottom:18px}.fn-tool fieldset{border:0;padding:0;margin:22px 0;min-width:0}.fn-tool legend{font-weight:700;margin-bottom:16px}
.fn-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.fn-field{display:grid;gap:7px;align-content:start;min-width:0}.fn-field label{font-weight:600;line-height:1.5}
.fn-tool input,.fn-tool select,.fn-tool textarea{width:100%;box-sizing:border-box;font:inherit;color:#263c2f;border:1px solid #919e88;border-radius:5px;min-height:44px;padding:10px;background:#fffdf8;max-width:100%}.fn-tool textarea{resize:vertical}.fn-field small{font-size:13px;line-height:1.55;color:#465344}
.fn-actions{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.fn-actions .button{white-space:normal;min-height:44px;line-height:1.45;max-width:100%}.fn-actions .button:disabled{opacity:.6;cursor:not-allowed}
.fn-tool :focus-visible{outline:3px solid #895332;outline-offset:3px}.fn-errors{padding:14px;border:2px solid #9d482c;background:#fff5ec;margin:16px 0}.fn-error{color:#8b351f;font-size:14px}.fn-field [aria-invalid=true]{border:2px solid #9d482c}
.fn-example-label,.fn-static-example{padding:12px 15px;background:#ebe9d8;border-left:3px solid #8a653e}.fn-tool [hidden]{display:none!important}.fn-tool p,.fn-tool label{overflow-wrap:anywhere}
.fn-figure{margin:26px 0;padding:16px;border:1px solid #d5d9ca;background:#faf8ef;border-radius:8px;box-sizing:border-box}.fn-figure img{display:block;width:100%;height:auto}.fn-figure figcaption{margin-top:12px;font-weight:600;line-height:1.6}.fn-figure p{margin-bottom:0;font-size:14px}
.fn-checklist{border-left:3px solid #9b6f45;background:#f0efdf;padding:18px 22px;margin:22px 0}.fn-checklist h3{margin-top:0}.fn-tool svg{display:block;width:100%;height:auto;max-width:100%;margin:18px 0}
@media(max-width:600px){.fn-fields{grid-template-columns:1fr}.fn-tool{padding:16px}.fn-tool summary{font-size:21px}.fn-figure{padding:10px}.fn-actions{gap:10px}.fn-actions .button{width:100%}}
@media print{.fn-tool,.fn-figure,.fn-checklist{break-inside:avoid;box-shadow:none;background:#fff}.fn-actions,.fn-errors{display:none}.fn-fields{display:block}.fn-field{margin:12px 0}.fn-tool textarea{overflow:visible;min-height:8em}}

.fn-plan-figure{margin:18px 0}.fn-plan-figure figcaption{font-size:15px;line-height:1.7;overflow-wrap:anywhere}
.fn-confirm[hidden]{display:none!important}.fn-confirm{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;box-sizing:border-box;background:rgba(25,44,32,.55);overflow:auto;overscroll-behavior:contain}.fn-confirm-card{box-sizing:border-box;width:min(100%,38rem);max-height:90vh;overflow:auto;padding:24px;border:2px solid #294d37;border-radius:10px;background:#faf7ed;color:#263c2f}.fn-confirm h3{margin-top:0}.fn-confirm p{line-height:1.65;overflow-wrap:anywhere}.fn-confirm :focus-visible{outline:3px solid #895332;outline-offset:3px}
@media(max-width:600px){.fn-confirm{padding:12px}.fn-confirm-card{padding:18px}}
@media print{.fn-confirm{display:none!important}}
