.tool-hero { margin: 22px 0 30px; }
.tool-hero h1 { max-width: 740px; margin: 14px 0 20px; }
.tool-hero p { max-width: 670px; }
.tool-pills, .tool-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.tool-pills span { border: 1px solid var(--border); border-radius: 999px; padding: 4px 12px; font-size: .78rem; color: #c5d9cc; }
.tool-actions { margin-top: 18px; }
.tool-actions button, .tool-actions a { border: 1px solid transparent; cursor: pointer; font: 700 .9rem/1.4 system-ui, sans-serif; min-height: 44px; }
.tool-actions .secondary { color: #e7f5ed; background: #17291f; border-color: #466252; }
.tool-actions button:disabled { opacity: .45; cursor: default; }
.tool-step { display: block; color: #73efa9; font-size: .76rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; }
.tool-panel h2 { margin: 8px 0 20px; font-size: 1.5rem; }
.tool-panel fieldset { padding: 0; margin: 20px 0; border: 0; min-width: 0; }
.tool-panel legend { font-weight: 700; margin-bottom: 10px; }
.tool-panel label { font-size: .9rem; color: #d8e9de; }
.tool-panel input, .tool-panel select, .tool-panel textarea { display: block; width: 100%; max-width: 100%; min-width: 0; background: #09130d; color: #f2faf5; border: 1px solid #516c5c; border-radius: 9px; padding: 11px 12px; margin-top: 6px; font: 16px/1.5 system-ui, sans-serif; }
.tool-panel textarea { resize: vertical; }
.tool-panel .check-row { display: flex; align-items: flex-start; gap: 12px; padding: 7px 0; }
.tool-panel .check-row input { width: 20px; height: 20px; flex: 0 0 20px; accent-color: #00d960; margin-top: 4px; }
.tool-note { color: #b5c9bd; font-size: .84rem; line-height: 1.6; }
.tool-status { min-height: 1.7em; font-size: .9rem; color: #a5f3bf; overflow-wrap: anywhere; }
.tool-status:empty { margin: 0; min-height: 0; }
.tool-result { background: #0b1810; border-left: 3px solid #00d960; border-radius: 10px; padding: 20px; }
.tool-result label { font-weight: 700; }
.tool-result textarea { min-height: 340px; }
.tool-nav { margin: 28px 0; display: flex; gap: 12px 22px; flex-wrap: wrap; font-size: .9rem; }
.tool-preview { padding: 20px; margin: 20px 0; background: #09150e; border-radius: 12px; border: 1px solid #34523e; }
.tool-preview strong { font-size: 1.5rem; color: #91f1b8; }
.tool-preview p { margin: 6px 0; }
.tool-card h2 { margin-top: 8px; }
.tool-card a.button { margin-top: 12px; }
.tool-faq details { border-top: 1px solid #344b3d; padding: 16px 0; }
.tool-faq summary { font-weight: 650; cursor: pointer; }
.tool-faq p { margin-bottom: 0; }
[hidden] { display: none !important; }
@media (max-width: 520px) {
  .tool-actions > button, .tool-actions > a { width: 100%; text-align: center; }
  .tool-result { padding: 14px; }
  .tool-pills { gap: 7px; }
}
