@layer legacy {
/* Utility content only; controls, panels and feedback belong to shell.css. */
.hn-tools{max-width:1200px;margin-inline:auto}
.hn-tools *{box-sizing:border-box}
.hn-tools h2{margin:0 0 var(--space-3)}
.hn-tools h3{margin:0 0 var(--space-2)}
.hn-tools p{margin:0 0 var(--space-3)}
.hn-tools .subtle{color:var(--color-secondary)}
.hn-tools a{overflow-wrap:anywhere}
.hn-tools .tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
.hn-tools .tool-service{display:flex;gap:var(--space-4);justify-content:space-between;align-items:center}
.hn-tools .tools-note{margin:var(--space-4) 0 0}
.hn-tools .panel{margin:0;min-width:0}
.hn-tools .tools-services{margin-top:var(--space-4)}
.hn-tools .tool-actions{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}
.hn-tools .tool-error{margin-bottom:var(--space-3)}
.hn-tools .tool-error p:last-child{margin-bottom:0}
.hn-tools .query-result:focus,.hn-tools .tool-error:focus{outline:2px solid var(--color-focus);outline-offset:2px}
.hn-tools .tool-loading{color:var(--color-secondary)}
@media(max-width:800px){.hn-tools .tools-grid{grid-template-columns:1fr}.hn-tools .tool-service{flex-direction:column;align-items:stretch;gap:var(--space-2)}.hn-tools .tool-service .button{align-self:flex-start}}
}

/* Shared generator content layout; controls and messages stay in theme/shell. */
.tool-generator-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);align-items:start}
.tool-generator-settings{display:grid;gap:var(--space-3)}
.tool-generator-settings :is(.hn-field,h2,p){margin:0}
.tool-generator-settings fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;gap:var(--space-3)}
.tool-result-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-3)}
.tool-result-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}
.tool-result-entry{min-width:0;border-top:1px solid var(--line);padding-top:var(--space-3)}
.tool-result-entry pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 var(--space-2)}
.tool-result-entry .tool-actions{justify-content:space-between}
.tool-result-entry dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin:var(--space-3) 0}
.tool-result-entry dd{margin:0;overflow-wrap:anywhere}
.tool-copy-fallback{margin-top:var(--space-3)}
.tool-copy-fallback textarea{width:100%;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:800px){.tool-generator-layout{grid-template-columns:minmax(0,1fr)}}

.tool-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.tool-field-grid :is(input,select){width:100%}
.tool-generate-actions>button:first-child{flex:1}
.tool-view-switch{margin-bottom:var(--space-4)}
.tool-view-switch>button{flex:1}
.tool-profile-title{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}
.tool-profile-title h3{margin:0}
.tool-result-entry .tool-profile-fields dt{color:var(--muted);margin-bottom:var(--space-1)}
.tool-result-entry h4{margin:var(--space-4) 0 var(--space-2)}
.tool-address-block{padding:var(--space-3);background:var(--soft);border-radius:var(--radius-control)}
.tool-map{width:100%;height:240px;border:1px solid var(--line);border-radius:var(--radius-control);display:block}
.tool-raw-data{max-height:600px;overflow:auto}
@media(max-width:560px){.tool-field-grid,.tool-result-entry dl{grid-template-columns:minmax(0,1fr)}.tool-view-switch{gap:var(--space-1)}.tool-result-heading>.tool-actions{width:100%}}
