/*! HI Tools — © 2026 Hagop Ipdjian. All rights reserved in original design. */
.tools-hero { padding-bottom: 74px; }
.tools-promise { display: flex; flex-wrap: wrap; gap: 12px 26px; margin-top: 30px; color: #b7d8d4; font-size: .88rem; }
.tools-promise span::before { content: '✓'; margin-right: 8px; color: var(--teal); }
.tools-directory { padding: 48px 0 38px; }
.tool-jump-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
.tool-jump-grid a { display: flex; flex-direction: column; padding: 25px; background: white; border-top: 4px solid var(--teal); text-decoration: none; box-shadow: 0 8px 25px #0c223508; }
.tool-jump-grid a:nth-child(2) { border-color: var(--coral); }
.tool-jump-grid a:nth-child(3) { border-color: var(--gold); }
.tool-jump-grid a span { color: #496c77; font-size: .66rem; letter-spacing: .08em; font-weight: 800; }
.tool-jump-grid strong { font-family: Manrope, sans-serif; line-height: 1.2; font-size: 1.3rem; margin: 24px 0 0; }
.tool-jump-grid p { font-size: .88rem; color: #53636e; }
.tool-jump-grid b { margin-top: auto; align-self: flex-end; font-size: 1.5rem; }
.tools-privacy { margin: 26px 0 0; max-width: 930px; color: #53636e; font-size: .86rem; }
.tool-section { padding: 72px 0; border-top: 1px solid var(--line); }
.tool-section:nth-of-type(even) { background: #e9edf0; }
.tool-heading { max-width: 830px; margin-bottom: 32px; }
.tool-heading h2 { font-size: clamp(2rem,3.8vw,3.4rem); letter-spacing: -.045em; margin-bottom: 18px; }
.tool-heading > p:last-child { color: #53636e; font-size: 1.05rem; }
.tool-workspace { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); border: 1px solid #cdd6d8; background: white; border-radius: 12px; overflow: hidden; box-shadow: 0 12px 30px #0c223507; }
.tool-inputs { padding: 34px; }
.tool-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px 18px; align-items: start; }
.tool-field { display: flex; flex-direction: column; gap: 7px; font-size: .85rem; font-weight: 700; }
.tool-field input,.tool-field select { width: 100%; min-width: 0; height: 48px; padding: 10px 12px; border: 1px solid #aebdc4; border-radius: 5px; background: white; color: var(--ink); font: 500 1rem 'DM Sans',Arial,sans-serif; }
.tool-field small { font-weight: 400; line-height: 1.45; color: #53636e; }
.tool-field input:focus-visible,.tool-field select:focus-visible,.tool-summary:focus-visible { outline: 3px solid var(--teal); outline-offset: 2px; }
.tool-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; margin-top: 28px; }
.tool-actions button { border: 0; cursor: pointer; }
.tool-reset { text-decoration: underline; text-underline-offset: 4px; background: transparent; padding: 12px 0; }
.tool-error { color: #9a301c; font-weight: 700; font-size: .9rem; }
.tool-error:empty { display: none; }
.tool-status { margin: 15px 0 0; color: #3c6863; font-size: .85rem; min-height: 1.5em; }
.tool-results { padding: 34px; background: #edf3f2; border-left: 1px solid #d4e0de; min-width: 0; }
.tool-result-eyebrow { margin: 0 0 22px; font-size: .72rem; font-weight: 800; color: #316c67; letter-spacing: .09em; }
.tool-metrics { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; margin: 0 0 28px; }
.tool-metrics > div { padding-bottom: 17px; border-bottom: 1px solid #c4d5d1; min-width: 0; }
.tool-metrics dt { font-size: .77rem; color: #47655e; }
.tool-metrics dd { margin: 8px 0 0; font-family: Manrope,sans-serif; font-size: clamp(1.3rem,2.2vw,2rem); font-weight: 800; line-height: 1.15; letter-spacing: -.03em; overflow-wrap: anywhere; }
.tool-summary { width: 100%; min-width: 0; padding: 17px; line-height: 1.6; resize: vertical; border: 1px solid #bdcfca; border-radius: 5px; background: #fff; color: #233b47; font: .88rem/1.65 'DM Sans',Arial,sans-serif; }
.result-label { display: block; font-size: .85rem; font-weight: 700; margin: 12px 0 10px; }
.result-details summary,.tool-notes summary { cursor: pointer; font-size: .86rem; font-weight: 700; }
.tool-export { display: flex; flex-wrap: wrap; gap: 12px; margin: 18px 0 25px; }
.tool-export button { background: #173650; border: 0; border-radius: 5px; padding: 10px 15px; color: #fff; font-size: .82rem; font-weight: 700; cursor: pointer; }
.tool-export button:disabled { opacity: .5; cursor: default; }
.tool-notes { font-size: .85rem; color: #415f5a; }
.tool-notes > p:first-child { margin-top: 0; }
.tool-notes a { text-underline-offset: 3px; font-weight: 700; }
.tool-notes > a { display: block; margin-top: 20px; }
.tool-checks { grid-column: 1 / -1; border: 0; padding: 10px 0 0; margin: 0; }
.tool-checks legend { font-size: .85rem; font-weight: 700; padding: 0; }
.tool-check { display: flex; align-items: flex-start; gap: 10px; margin: 12px 0; font-size: .88rem; }
.tool-check input { margin: 4px 0 0; width: 18px; height: 18px; accent-color: #237b77; flex: none; }
.reminder-timing { font-size: .82rem; font-weight: 700; color: #386963; }
.tools-ownership { padding: 15px 0 35px; font-size: .82rem; color: #53636e; }
@media (max-width: 1020px) { .tool-jump-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .tool-inputs,.tool-results { padding: 25px; } }
@media (max-width: 760px) { .tool-workspace { grid-template-columns: 1fr; } .tool-results { border-left: 0; border-top: 1px solid #d4e0de; } .tool-heading h2 { font-size: 2.25rem; } .tool-section { padding: 54px 0; } .tool-metrics dd { font-size: 1.55rem; } }
@media (max-width: 480px) { .tool-jump-grid,.tool-fields { grid-template-columns: 1fr; } .tool-jump-grid a { padding: 21px; } .tool-jump-grid strong { margin-top: 15px; } .tool-inputs,.tool-results { padding: 22px; } }
/* Report upgrade — October 2026 */
.tool-workspace { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); align-items:start; }
.tool-results { min-height:100%; }
.tool-results .tool-result-eyebrow { margin-bottom:25px; }
.output-placeholder { font-size:.92rem; color:#4a6769; }
.result-details { margin-top:24px; }
.tool-export { border-top:1px solid #c4d5d1; padding-top:20px; gap:9px; }
.tool-export button { min-height:43px; }
.tool-export [data-report] { background:#276e68; }
.tool-export [data-print] { background:white; color:#173650; border:1px solid #91aaa5; }
.editor-help { font-size:.8rem; color:#47626c; }
.client-wording { margin:25px 0; padding:18px; border:1px solid #b2c9c3; border-radius:6px; background:white; }
.client-wording summary { font-size:.9rem; font-weight:700; cursor:pointer; }
.editor-copy { background:white; border:1px solid #759b92; border-radius:5px; padding:9px 12px; margin:10px 0 20px; font-size:.8rem; font-weight:700; cursor:pointer; color:#173650; }
.editor-heading { font-size:1.3rem; letter-spacing:-.02em; margin-top:25px; }
.plan-phase { border:0; padding:0; margin:26px 0; min-width:0; }
.plan-phase legend { font-size:1rem; font-weight:700; padding:0; margin-bottom:14px; }
.plan-task { padding:17px; background:white; border:1px solid #ccdad5; border-radius:7px; margin-bottom:12px; }
.plan-task.is-complete { border-color:#2e8074; background:#e3f1ec; }
.plan-complete { display:flex; gap:10px; font-size:.87rem; font-weight:700; align-items:flex-start; }
.plan-complete input { flex:none; accent-color:#276e68; width:19px; height:19px; margin:3px 0 0; }
.plan-evidence { font-size:.78rem; color:#49636c; margin:10px 0 16px; }
.plan-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.plan-fields .tool-field { font-size:.73rem; }
.plan-fields input { height:42px; padding:8px; font-size:.84rem; }
.tool-summary { display:block; }
@media (max-width:1020px) { .tool-workspace { grid-template-columns:1fr; } .tool-results { border-left:0; border-top:1px solid #d4e0de; } }
@media (max-width:480px) { .tool-inputs,.tool-results { padding:20px 16px; } .plan-fields { grid-template-columns:1fr; } .tool-export button { flex:1 1 auto; } }

html { scroll-behavior:auto; }
.editor-copy + .editor-copy { margin-left:8px; }
