/* Lightweight interaction patterns shared by calculator tools. */
.scenario-panel{margin:22px 0 0;padding:17px 18px;border:1px solid #d9e3d3;border-radius:12px;background:#f7faf4}
.scenario-panel strong{display:block;color:#183228;font-size:15px}.scenario-panel p{margin:4px 0 12px;color:#536359;font-size:14px}
.scenario-chips{display:flex;flex-wrap:wrap;gap:8px}.scenario-chip,.example-button,.copy-result{appearance:none;border:1px solid #aebfa4;border-radius:999px;background:#fff;color:#183228;cursor:pointer;font:inherit;font-size:14px;font-weight:700;line-height:1.2;padding:8px 12px;transition:background-color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.scenario-chip:hover,.example-button:hover,.copy-result:hover{background:#e9f1e2;border-color:#6f9460}.scenario-chip:active,.example-button:active,.copy-result:active{transform:translateY(1px)}.scenario-chip[aria-pressed="true"]{background:#264a38;border-color:#264a38;color:#fff}
.scenario-panel .scenario-note{margin:11px 0 0;font-size:12px;color:#60705f}.answer-delta{margin:16px 0 0;padding:12px 14px;border-left:3px solid #7ca266;background:#f2f7ed;color:#263b2e;font-size:14px}.answer-delta strong{display:block;margin-bottom:3px}.answer-actions{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 0}.copy-result{border-radius:7px}
.example-button{display:inline-flex;align-items:center;gap:6px;margin:14px 0 0;border-radius:7px}.example-button::before{content:'Example';font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#587249}.example-button:hover::before{color:#36552d}
.offset-visual{width:100%;max-width:500px;height:auto;margin:20px 0 0;border:1px solid #d9e3d3;border-radius:10px;background:#fbfcfa}.offset-visual .wheel{transition:transform .36s ease}.offset-visual text{font-family:inherit;fill:#31503d;font-size:12px}.offset-visual .guide{stroke:#9aa99c;stroke-width:2}.offset-visual .dimension{stroke:#557b45;stroke-width:2;marker-end:url(#offset-arrow)}
.answer-first{animation:answer-arrive .32s ease both}.answer-metric strong{animation:metric-arrive .36s ease both}.diagram svg{transition:opacity .22s ease}
@keyframes answer-arrive{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes metric-arrive{from{opacity:.25;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:600px){.scenario-panel{padding:15px}.scenario-chip{flex:1 0 auto;text-align:center}.answer-actions{display:grid;grid-template-columns:1fr}.copy-result{width:100%}}
@media (prefers-reduced-motion:reduce){.scenario-chip,.example-button,.copy-result,.offset-visual .wheel,.diagram svg{transition:none}.answer-first,.answer-metric strong{animation:none}}
