/* Tagline "Ask a question" widget — a floating button + modal on every page.
   Self-contained, no dependencies. Loaded by every page that includes ask.js. */

.ask-fab{
  position:fixed;bottom:22px;right:22px;z-index:900;
  display:inline-flex;align-items:center;gap:9px;
  background:#1a1a1a;color:#fbf9f3;
  font:inherit;font-weight:600;font-size:14px;
  padding:12px 18px;border-radius:999px;border:none;cursor:pointer;
  box-shadow:0 12px 30px rgba(0,0,0,.22),0 2px 6px rgba(0,0,0,.12);
  transition:transform .14s ease, box-shadow .14s ease, background .14s ease;
}
.ask-fab:hover{background:#b8501f;transform:translateY(-1px);box-shadow:0 16px 36px rgba(184,80,31,.28),0 3px 8px rgba(0,0,0,.14);}
.ask-fab svg{width:16px;height:16px;flex-shrink:0;}
@media (max-width:520px){
  .ask-fab{padding:11px 15px;font-size:13.5px;bottom:16px;right:16px;}
  .ask-fab .ask-fab-label{display:none;}
}

.ask-overlay{
  position:fixed;inset:0;z-index:1200;
  background:rgba(7,10,8,.75);backdrop-filter:blur(6px);
  display:none;align-items:flex-end;justify-content:center;
  padding:4vmin;
}
.ask-overlay.open{display:flex;}
@media (min-width:640px){.ask-overlay{align-items:center;}}

.ask-modal{
  width:100%;max-width:520px;
  background:#fbf9f3;color:#1a1a1a;
  border-radius:16px;
  box-shadow:0 32px 90px rgba(0,0,0,.55);
  overflow:hidden;display:flex;flex-direction:column;
  max-height:92vh;
}

.ask-head{
  display:flex;align-items:center;gap:14px;
  padding:18px 22px;border-bottom:1px solid rgba(0,0,0,.08);
}
.ask-head .ask-title{
  font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:19px;
  margin:0;letter-spacing:-0.01em;
}
.ask-head .ask-sub{font-size:13px;color:#6a6a6a;margin:2px 0 0;}
.ask-close{
  margin-left:auto;
  background:transparent;border:1px solid rgba(0,0,0,.14);
  font:inherit;font-size:12px;font-family:'JetBrains Mono','SF Mono',monospace;
  color:#5a5a5a;padding:4px 8px;border-radius:5px;cursor:pointer;
  letter-spacing:.04em;
}
.ask-close:hover{background:rgba(0,0,0,.05);}

.ask-body{
  overflow-y:auto;padding:18px 22px 8px;
}
.ask-field{margin-bottom:14px;}
.ask-field label{
  display:block;font-size:11.5px;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;color:#6a6a6a;margin-bottom:6px;
}
.ask-field input,
.ask-field textarea{
  width:100%;font:inherit;font-size:14.5px;color:#1a1a1a;
  background:#fff;border:1px solid rgba(0,0,0,.14);
  border-radius:8px;padding:10px 12px;line-height:1.5;
  outline:none;transition:border-color .12s, box-shadow .12s;
}
.ask-field input:focus,
.ask-field textarea:focus{
  border-color:#b8501f;box-shadow:0 0 0 3px rgba(184,80,31,.14);
}
.ask-field textarea{min-height:110px;resize:vertical;}
.ask-field[data-hp]{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;}
.ask-error{display:block;font-size:12.5px;color:#b8501f;margin-top:4px;}
.ask-input-hint{font-size:12px;color:#7a7a7a;margin-top:5px;}

.ask-turnstile{margin:4px 0 10px;min-height:0;}

.ask-foot{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:14px 22px 20px;border-top:1px solid rgba(0,0,0,.06);
}
.ask-note{font-size:12px;color:#7a7a7a;line-height:1.45;flex:1;}
.ask-note a{color:#b8501f;}
.ask-submit{
  background:#1a1a1a;color:#fbf9f3;
  border:none;font:inherit;font-weight:600;font-size:14px;
  padding:10px 20px;border-radius:999px;cursor:pointer;
  transition:background .12s;flex-shrink:0;
}
.ask-submit:hover{background:#b8501f;}
.ask-submit:disabled{opacity:.55;cursor:default;}

.ask-toast{
  padding:22px;text-align:center;
}
.ask-toast .ask-tick{
  width:56px;height:56px;border-radius:50%;background:#c49a3a;
  color:#fbf9f3;font-size:28px;line-height:56px;text-align:center;
  margin:6px auto 14px;
}
.ask-toast h3{
  font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:20px;
  margin:0 0 6px;
}
.ask-toast p{margin:0 0 18px;font-size:14px;color:#4a4a4a;line-height:1.55;}

/* Dark-theme opt-in — for pages with data-ts-theme="dark" (carbon guide, /eofy).
   Uses lighter FAB shadow + inverted button colours. */
[data-ts-theme="dark"] .ask-fab{background:#c49a3a;color:#1a1a1a;box-shadow:0 12px 30px rgba(196,154,58,.35);}
[data-ts-theme="dark"] .ask-fab:hover{background:#e0c074;}
