/* One scrolling dialog; fields and results grow with their text. */
.refined-tool-dialog { width:min(760px,calc(100vw - 24px));padding:0;max-height:92dvh;overflow-y:auto;scroll-padding-top:110px;color:#193c47 }
.refined-tool-dialog > .dialog-head { position:sticky;top:0;z-index:3;margin:0;padding:24px 28px 19px;align-items:center;background:var(--sheet,#fffdf7);border-bottom:1px solid #cdd2c9 }
.refined-tool-dialog .dialog-head h2 { font-size:30px;min-width:0 }
.refined-tool-dialog .dialog-head button { flex:0 0 auto;min-height:44px }
.refined-tool-dialog .tool-body { padding:23px 28px 28px }
.refined-tool-dialog [hidden] { display:none!important }
.refined-tool-dialog :is(h2,h3,.tool-stale) { scroll-margin-top:115px }
.refined-tool-dialog :is(h2,h3)[tabindex="-1"]:focus { outline:none }
.refined-tool-dialog .muted { color:#465b61;font-size:14px;line-height:1.6 }
.refined-tool-dialog .tool-storage { margin:20px 0 27px;padding:14px 17px;background:#eef1e8;border:1px solid #c1cbbd;border-radius:10px }
.refined-tool-dialog .tool-storage p { margin:5px 0 0 }
.refined-tool-dialog [data-storage-status]:empty { display:none }
.refined-tool-dialog .field { display:block;color:#193c47;font-size:15px;line-height:1.5;margin:0 0 20px }
.refined-tool-dialog :is(textarea,input[type="date"],select) { display:block;width:100%;margin-top:8px;border:1.5px solid #758b89;border-radius:8px;background:#fff;color:#173944;padding:12px 13px;font:inherit;font-size:16px;font-weight:400;line-height:1.55;box-shadow:none;min-height:48px }
.refined-tool-dialog textarea { resize:none;overflow:hidden;max-height:none }
.refined-tool-dialog textarea::placeholder { color:#5e7074;opacity:1 }
.refined-tool-dialog :is(textarea,input,select,button,summary):focus-visible { outline:3px solid var(--berry,#af365b);outline-offset:3px }
.refined-tool-dialog .tool-form-title { margin:24px 0 20px;font-size:24px }
.refined-tool-dialog .tool-actions { display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px }
.refined-tool-dialog .tool-actions button { min-height:44px }
.refined-tool-dialog button:disabled { opacity:.55;cursor:not-allowed }
.refined-tool-dialog .tool-entry-list { margin:28px 0 }
.refined-tool-dialog .tool-entry-list > h3 { font-size:23px;margin-bottom:13px }
.refined-tool-dialog .tool-entry { padding:0 16px 14px;margin-bottom:12px;border:1px solid #c3cdc6;border-radius:10px;background:#fff }
.refined-tool-dialog .tool-entry > summary { display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:52px;cursor:pointer;padding:12px 0 0 }
.refined-tool-dialog .tool-entry > summary::after { content:'+';font-size:22px;flex:0 0 auto }
.refined-tool-dialog .tool-entry[open] > summary::after { content:'−' }
.refined-tool-dialog .tool-entry p { white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0 0;line-height:1.6 }
.refined-tool-dialog .tool-entry > summary .muted { margin-left:auto;text-align:right }
.refined-tool-dialog .tool-legacy,.refined-tool-dialog .tool-contact { margin:22px 0;padding:14px 16px;border:1px solid #c3cdc6;border-radius:9px }
.refined-tool-dialog :is(.tool-legacy,.tool-contact) > summary { min-height:36px;cursor:pointer;font-weight:600 }
.refined-tool-dialog .tool-contact > .field { margin-top:18px }
.refined-tool-dialog .tool-contact fieldset { border:0;margin:0;padding:0 }
.refined-tool-dialog [data-legacy-text] { white-space:pre-wrap;line-height:1.6;margin-top:18px }
.refined-tool-dialog .tool-result { padding:22px;margin-top:28px;border:1px solid #c8cdbf;border-radius:11px;background:#f7f6eb }
.refined-tool-dialog .tool-result h3 { margin:0 0 20px;font-size:25px }
.refined-tool-dialog .tool-output-text { white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.7 }
.refined-tool-dialog .tool-output-editor { min-height:100px;max-height:none;overflow:hidden }
.refined-tool-dialog #tool-result-hint { margin-top:20px }
.refined-tool-dialog .tool-stale,.refined-tool-dialog .tool-confirm { padding:18px;margin:18px 0;background:#fff0e2;border:1px solid #b9875f;border-radius:9px;color:#4b3729 }
.refined-tool-dialog .tool-stale p,.refined-tool-dialog .tool-confirm p { margin-top:8px;font-size:15px;line-height:1.6 }
.refined-tool-dialog .tool-confirm h3 { margin:0;font-size:24px }
.refined-tool-dialog .tool-pending { padding:11px 14px;background:#fff5e3;border-left:3px solid #c19b4c }
.refined-tool-dialog .tool-status { margin:20px 0;font-size:14px;line-height:1.6 }
.refined-tool-dialog .tool-status:empty { display:none }
.refined-tool-dialog .tool-delete { border-top:1px solid #cdd2c9;padding-top:20px;margin-top:30px }
.refined-tool-dialog .tool-delete button { color:#9f3550;text-align:left }
.refined-tool-dialog .tool-version-notice { padding:14px 16px;background:#fff1dc;border-left:3px solid #b9875f;line-height:1.6;font-size:14px }
.refined-tool-dialog .tool-versions { margin:18px 0 26px;padding:15px 17px;border:1px solid #bac9c2;border-radius:9px;background:#f3f6f0 }
.refined-tool-dialog .tool-versions > summary { min-height:34px;cursor:pointer;font-weight:600 }
.refined-tool-dialog .tool-versions > p { margin:12px 0 16px }
.refined-tool-dialog .tool-versions select { white-space:normal;font-size:14px }
.refined-tool-dialog .tool-version-preview { margin:12px 0 18px }
.refined-tool-dialog .tool-version-preview > summary { min-height:40px;cursor:pointer }
.refined-tool-dialog [data-version-preview] { white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.65;padding:14px;background:#fff;border:1px solid #cad3cc;border-radius:7px }
@media(max-width:600px) {
  .refined-tool-dialog { width:calc(100vw - 20px);padding:0 }
  .refined-tool-dialog > .dialog-head { padding:18px 18px 15px;gap:10px }
  .refined-tool-dialog .dialog-head h2 { font-size:25px }
  .refined-tool-dialog .dialog-head button { font-size:13px;padding:9px }
  .refined-tool-dialog .tool-body { padding:19px 18px 23px }
  .refined-tool-dialog .tool-storage { padding:12px 13px }
  .refined-tool-dialog .tool-result { padding:18px 14px }
  .refined-tool-dialog .tool-actions { gap:8px }
  .refined-tool-dialog .tool-actions button { font-size:13px;padding:10px 12px }
  .refined-tool-dialog .tool-entry { padding-inline:13px }
  .refined-tool-dialog .tool-entry > summary { gap:9px;font-size:14px }
  .refined-tool-dialog .tool-entry > summary .muted { font-size:12px }
  .refined-tool-dialog .tool-confirm,.refined-tool-dialog .tool-stale { padding:14px }
}
@media(prefers-reduced-motion:reduce) { .refined-tool-dialog,.refined-tool-dialog * { scroll-behavior:auto } }
