/* --- tool-enhancements.css --- */
.tool-enhancement-panel{
  margin:1.25rem auto;
  padding:1.15rem;
  border:1px solid rgba(80,44,29,.18);
  border-radius:16px;
  background:#fffaf3;
  box-shadow:0 10px 28px rgba(44,24,16,.06)
}
.tool-enhancement-panel h2{margin:.1rem 0 .45rem;font:700 1.35rem/1.2 Georgia,'Times New Roman',serif}
.tool-enhancement-panel>p{margin:.2rem 0 .9rem;color:#665044;line-height:1.55}
.tool-enhancement-toolbar{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}
.tool-enhancement-toolbar button,.tool-enhancement-toolbar select{
  min-height:42px;padding:.58rem .72rem;border-radius:9px;border:1px solid rgba(80,44,29,.24);
  background:#fff;color:#43291e;font:700 .82rem/1.1 Arial,sans-serif
}
.tool-enhancement-toolbar button{cursor:pointer}
.tool-enhancement-toolbar button.primary{background:#6e3c22;color:#fff;border-color:#6e3c22}
.tool-enhancement-toolbar button[aria-pressed="true"]{background:#f0bd78;color:#2d190f}
.tool-enhancement-status{min-height:1.3rem;margin:.7rem 0 0;color:#6c4f40;font-size:.86rem}
.tool-enhancement-status.is-error{color:#9b2f21;font-weight:800}
.tool-enhancement-help{margin-top:.8rem}
.tool-enhancement-help summary{cursor:pointer;font-weight:850;color:#5f3420}
.tool-enhancement-help p{line-height:1.55;color:#665044}
.scenario-comparison{margin-top:1rem;overflow:auto}
.scenario-comparison[hidden]{display:none}
.scenario-comparison table{width:100%;border-collapse:collapse;background:#fff}
.scenario-comparison th,.scenario-comparison td{padding:.55rem;border:1px solid rgba(80,44,29,.16);text-align:left;vertical-align:top}
.tool-result-explanation{margin:.8rem 0 0;padding:.85rem 1rem;border-left:5px solid #9b5734;background:#f6e8dc;border-radius:9px;color:#5e493e;line-height:1.55}
.tool-related-next{margin:1.5rem 0;padding:1.15rem;background:#f6eee5;border-radius:14px}
.tool-related-next h2{margin:.1rem 0 .7rem;font-family:Georgia,'Times New Roman',serif}
.tool-related-next-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}
.tool-related-next a{display:flex;flex-direction:column;gap:.25rem;padding:.8rem;background:#fff;border:1px solid rgba(80,44,29,.15);border-radius:10px;text-decoration:none;color:inherit}
.tool-related-next a strong{color:#4e2c1d}.tool-related-next a span{font-size:.83rem;color:#70584c}
.tool-directory-controls{display:grid;grid-template-columns:minmax(240px,1.4fr) repeat(2,minmax(150px,.7fr));gap:.7rem;margin:1rem 0}
.tool-directory-controls input,.tool-directory-controls select{width:100%;padding:.72rem;border:1px solid #b7a69a;border-radius:9px;font:inherit;background:#fff}
.tool-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.tool-directory-card{position:relative;padding:1rem;background:#fff;border:1px solid rgba(80,44,29,.16);border-radius:13px}
.tool-directory-card>a{display:flex;flex-direction:column;gap:.4rem;padding-right:2rem;text-decoration:none;color:inherit}
.tool-directory-card strong{font:700 1.08rem/1.2 Georgia,'Times New Roman',serif;color:#3e2419}
.tool-directory-card span{color:#6c5549;font-size:.88rem;line-height:1.45}
.tool-directory-card small{color:#94502e;font-weight:850}
.tool-favorite-star{position:absolute;top:.65rem;right:.65rem;width:34px;height:34px;border-radius:50%;border:1px solid rgba(80,44,29,.18);background:#fff;cursor:pointer;font-size:1.1rem}
.tool-favorite-star[aria-pressed="true"]{background:#f0bd78}
.tool-personal-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.2rem 0}
.tool-personal-list{padding:1rem;background:#f6eee5;border-radius:13px}
.tool-personal-list h3{margin:.1rem 0 .6rem;font-family:Georgia,'Times New Roman',serif}
.tool-personal-list a{display:block;padding:.35rem 0}
.tool-directory-count{margin:.6rem 0;color:#6b5143;font-weight:800}
@media(max-width:850px){.tool-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-related-next-grid{grid-template-columns:1fr}.tool-directory-controls{grid-template-columns:1fr 1fr}.tool-directory-controls input{grid-column:1/-1}}
@media(max-width:560px){.tool-directory-grid,.tool-personal-lists,.tool-directory-controls{grid-template-columns:1fr}.tool-directory-controls input{grid-column:auto}.tool-enhancement-toolbar>*{flex:1 1 135px}}
@media print{.tool-enhancement-panel,.tool-related-next,.tool-result-explanation{display:none!important}}
/* --- tool-completion.css --- */
/* Simple completed-form actions */
.tool-completion-panel{
  margin:1.15rem 0 1.35rem;
  padding:1.1rem;
  border:1px solid rgba(80,44,29,.18);
  border-radius:17px;
  background:
    radial-gradient(circle at 92% 8%,rgba(225,168,92,.18),transparent 32%),
    linear-gradient(135deg,#fffdf9,#f5e9dd);
  box-shadow:0 12px 30px rgba(44,23,13,.065);
}
.tool-completion-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
  gap:1rem;
  align-items:center;
}
.tool-completion-copy h2{
  margin:.15rem 0 .45rem;
  color:#3a2217;
  font:700 clamp(1.65rem,3vw,2.45rem)/1 Georgia,"Times New Roman",serif;
}
.tool-completion-copy p:last-child{
  max-width:720px;
  margin:.35rem 0 0;
  color:#6c5549;
  line-height:1.58;
}
.tool-completion-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.65rem;
}
.tool-completion-button{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  min-height:112px;
  padding:.85rem;
  border:1px solid rgba(80,44,29,.2);
  border-radius:13px;
  background:#fff;
  color:#3f261a;
  text-align:left;
  cursor:pointer;
  box-shadow:0 7px 18px rgba(44,23,13,.045);
}
.tool-completion-button:hover,
.tool-completion-button:focus-visible{
  border-color:#9a5030;
  transform:translateY(-1px);
  box-shadow:0 10px 23px rgba(44,23,13,.09);
}
.tool-completion-button.primary{
  border-color:#67361f;
  background:linear-gradient(145deg,#67361f,#8e4a2b);
  color:#fff;
}
.tool-completion-button strong{
  display:block;
  font:800 .88rem/1.2 Arial,sans-serif;
}
.tool-completion-button span{
  display:block;
  margin-top:.3rem;
  color:#71594c;
  font-size:.75rem;
  line-height:1.42;
}
.tool-completion-button.primary span{color:#efded2}
.tool-completion-status{
  min-height:1.4rem;
  margin:.75rem 0 0;
  color:#4d684f;
  font-size:.82rem;
  font-weight:800;
}
.tool-completion-status.is-error{color:#992f25}
.tool-completion-note{
  margin:.65rem 0 0;
  color:#776055;
  font-size:.76rem;
  line-height:1.48;
}
@media(max-width:850px){
  .tool-completion-layout{grid-template-columns:1fr}
}
@media(max-width:560px){
  .tool-completion-panel{padding:.85rem;border-radius:14px}
  .tool-completion-actions{grid-template-columns:1fr}
  .tool-completion-button{min-height:88px}
}
@media print{
  .tool-completion-panel{display:none!important}
}
/* --- tool-disclaimer-popup.css --- */
/* Compact "Read before using" launcher and accessible popup */
.tool-disclaimer-link{
  display:grid;
  grid-template-columns:40px minmax(0,1fr) auto;
  gap:.7rem;
  align-items:center;
  margin:1rem 0;
  padding:.68rem .75rem;
  border:1px solid rgba(109,57,36,.18);
  border-radius:12px;
  background:linear-gradient(135deg,#faf4ed,#fffdf9);
  box-shadow:0 7px 18px rgba(45,23,13,.045);
}
.tool-disclaimer-link-icon{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:50%;
  background:#6d3924;
  color:#fff;
  font:900 1rem/1 Georgia,"Times New Roman",serif;
}
.tool-disclaimer-link-copy{
  display:grid;
  gap:.12rem;
  min-width:0;
}
.tool-disclaimer-link-copy strong{
  color:#40261a;
  font:700 .9rem/1.2 Georgia,"Times New Roman",serif;
}
.tool-disclaimer-link-copy span{
  color:#715b4f;
  font-size:.76rem;
  line-height:1.38;
}
.tool-disclaimer-open{
  min-height:38px;
  padding:.55rem .72rem;
  border:1px solid #875037;
  border-radius:999px;
  background:#fff;
  color:#6b3924;
  cursor:pointer;
  font:900 .72rem/1 Arial,sans-serif;
  letter-spacing:.02em;
  white-space:nowrap;
}
.tool-disclaimer-open:hover,
.tool-disclaimer-open:focus-visible{
  background:#6d3924;
  color:#fff;
  border-color:#6d3924;
  box-shadow:0 0 0 3px rgba(109,57,36,.15);
}
.tool-disclaimer-dialog{
  width:min(720px,calc(100% - 1.5rem));
  max-height:min(82vh,760px);
  margin:auto;
  padding:0;
  border:0;
  border-radius:18px;
  background:#fffdf9;
  color:#382117;
  box-shadow:0 28px 80px rgba(20,9,5,.35);
  overflow:hidden;
}
.tool-disclaimer-dialog::backdrop{
  background:rgba(24,10,5,.72);
  backdrop-filter:blur(3px);
}
.tool-disclaimer-dialog[open]{
  animation:tool-disclaimer-enter .16s ease-out;
}
@keyframes tool-disclaimer-enter{
  from{opacity:0;transform:translateY(10px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
.tool-disclaimer-dialog-shell{
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  max-height:min(82vh,760px);
}
.tool-disclaimer-dialog-header{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:.8rem;
  align-items:start;
  padding:1rem 1.1rem .85rem;
  border-bottom:1px solid rgba(90,48,29,.14);
  background:
    radial-gradient(circle at 90% 10%,rgba(226,171,99,.22),transparent 34%),
    linear-gradient(135deg,#f5e9dc,#fffaf5);
}
.tool-disclaimer-dialog-header .eyebrow{
  margin:0 0 .18rem;
}
.tool-disclaimer-dialog-header h2{
  margin:0;
  color:#392117;
  font:700 clamp(1.55rem,3vw,2.15rem)/1 Georgia,"Times New Roman",serif;
}
.tool-disclaimer-dialog-header p{
  margin:.45rem 0 0;
  color:#70594d;
  font-size:.83rem;
  line-height:1.48;
}
.tool-disclaimer-close-icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid rgba(77,39,24,.2);
  border-radius:50%;
  background:#fff;
  color:#5e3421;
  cursor:pointer;
  font-size:1.25rem;
  line-height:1;
}
.tool-disclaimer-close-icon:hover,
.tool-disclaimer-close-icon:focus-visible{
  border-color:#8a4a2c;
  background:#f7eee5;
}
.tool-disclaimer-dialog-content{
  overflow:auto;
  padding:1rem 1.15rem;
  color:#5e493e;
  line-height:1.65;
}
.tool-disclaimer-dialog-content p{
  margin:.05rem 0 .85rem;
}
.tool-disclaimer-dialog-content p:last-child{
  margin-bottom:0;
}
.tool-disclaimer-dialog-content strong{
  color:#40261a;
}
.tool-disclaimer-dialog-footer{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:center;
  gap:.65rem;
  padding:.8rem 1.1rem;
  border-top:1px solid rgba(90,48,29,.14);
  background:#faf3eb;
}
.tool-disclaimer-dialog-footer a{
  color:#744129;
  font-size:.78rem;
  font-weight:850;
}
.tool-disclaimer-accept{
  min-height:42px;
  padding:.65rem .9rem;
  border:1px solid #63321e;
  border-radius:999px;
  background:#63321e;
  color:#fff;
  cursor:pointer;
  font-size:.78rem;
  font-weight:900;
}
.tool-disclaimer-accept:hover,
.tool-disclaimer-accept:focus-visible{
  background:#8d492b;
  border-color:#8d492b;
}
body.tool-disclaimer-fallback-open{
  overflow:hidden;
}
.tool-disclaimer-dialog.tool-dialog-fallback[open]{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  width:100%;
  max-width:none;
  max-height:none;
  border-radius:0;
  background:rgba(24,10,5,.72);
}
.tool-disclaimer-dialog.tool-dialog-fallback[open] .tool-disclaimer-dialog-shell{
  width:min(720px,calc(100% - 1.5rem));
  border-radius:18px;
  overflow:hidden;
  background:#fffdf9;
  box-shadow:0 28px 80px rgba(20,9,5,.35);
}
@media(max-width:650px){
  .tool-disclaimer-link{
    grid-template-columns:36px minmax(0,1fr);
  }
  .tool-disclaimer-open{
    grid-column:1/-1;
    width:100%;
  }
  .tool-disclaimer-dialog{
    width:calc(100% - .8rem);
    max-height:92vh;
    border-radius:14px;
  }
  .tool-disclaimer-dialog-shell{
    max-height:92vh;
  }
  .tool-disclaimer-dialog-footer{
    align-items:stretch;
    flex-direction:column-reverse;
  }
  .tool-disclaimer-accept{
    width:100%;
  }
}
@media(prefers-reduced-motion:reduce){
  .tool-disclaimer-dialog[open]{animation:none}
}
@media print{
  .tool-disclaimer-link,
  .tool-disclaimer-dialog{
    display:none!important;
  }
}

/* Page-specific notices moved out of the main reading/form flow */
.tool-specific-notice{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(90,48,29,.16)}
.tool-specific-notice h3{margin:0 0 .65rem;color:#4b291c;font:700 1.08rem/1.25 Georgia,"Times New Roman",serif}
.chapter-important-popup{margin:1.15rem 0 1.35rem}
.chapter-content .chapter-important-popup .tool-disclaimer-link{margin:0}
@media (max-width:620px){.chapter-important-popup{margin:1rem 0 1.2rem}}

/* Document-grade print profile */
.document-profile{
  margin-top:1rem;
  border:1px solid rgba(80,44,29,.18);
  border-radius:14px;
  background:rgba(255,255,255,.72);
  overflow:hidden;
}
.document-profile summary{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:space-between;
  gap:.35rem .8rem;
  padding:.78rem .9rem;
  cursor:pointer;
  color:#42281c;
  font-weight:900;
  list-style:none;
}
.document-profile summary::-webkit-details-marker{display:none}
.document-profile summary::after{content:"＋";margin-left:auto;color:#8d472a;font-size:1.1rem}
.document-profile[open] summary::after{content:"−"}
.document-profile summary span{font-size:.84rem}
.document-profile summary small{color:#755e51;font-size:.72rem;font-weight:650}
.document-profile-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.72rem;
  padding:.9rem;
  border-top:1px solid rgba(80,44,29,.13);
  background:#fffdf9;
}
.document-profile-grid>label{
  display:grid;
  gap:.3rem;
  min-width:0;
  color:#5f4639;
  font-size:.69rem;
  font-weight:900;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.document-profile-grid input,
.document-profile-grid select{
  width:100%;
  min-height:42px;
  padding:.58rem .65rem;
  border:1px solid #c7b6a9;
  border-radius:9px;
  background:#fff;
  color:#38241b;
  font:700 .8rem/1.2 Arial,sans-serif;
  letter-spacing:normal;
  text-transform:none;
}
.document-profile-logo{grid-column:span 2}
.document-profile-logo span{color:#7b665a;font-size:.66rem;font-weight:600;letter-spacing:normal;text-transform:none}
.document-profile-logo input{padding:.46rem}
.document-profile-options{
  grid-column:1/-1;
  display:flex;
  flex-wrap:wrap;
  gap:.65rem 1rem;
  padding:.7rem .8rem;
  border-radius:10px;
  background:#f5ece3;
}
.document-profile-options label{
  display:flex;
  align-items:center;
  gap:.4rem;
  color:#543a2e;
  font-size:.75rem;
  font-weight:800;
}
.document-profile-options input{width:18px;height:18px;min-height:0;margin:0}
.document-profile-status{min-height:1.2rem;margin:0;padding:0 .9rem .75rem;color:#4f704f;font-size:.75rem;font-weight:800}
@media(max-width:900px){.document-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){
  .document-profile-grid{grid-template-columns:1fr;padding:.75rem}
  .document-profile-logo{grid-column:auto}
  .document-profile-options{grid-column:auto;display:grid}
  .document-profile summary{align-items:flex-start;flex-direction:column;padding:.72rem .78rem}
  .document-profile summary::after{position:absolute;right:1.6rem}
}
@media print{.document-profile{display:none!important}}
