.htwn-app{max-width:820px;margin:1.5rem auto;padding:0 10px}.htwn-screen{display:none}.htwn-screen.is-active{display:block}.htwn-progress{height:6px;background:#e7e7e7;border-radius:10px;margin:0 0 24px;overflow:hidden}.htwn-progress span{display:block;height:100%;width:0;background:currentColor;transition:width .25s}.htwn-badge{display:inline-block;font-size:.75rem;font-weight:800;letter-spacing:.08em;border:1px solid currentColor;border-radius:4px;padding:3px 7px;margin-bottom:8px}.htwn-lead{font-size:1.25rem;font-weight:700}.htwn-choices,.htwn-grid{display:grid;gap:10px;margin:18px 0}.htwn-grid{grid-template-columns:repeat(auto-fit,minmax(235px,1fr))}.htwn-choice,.htwn-goal,.htwn-next,.htwn-open,.htwn-feedback-submit,#htwn-other-submit,#htwn-mini-send{display:block;width:100%;box-sizing:border-box;padding:12px 15px;border:1px solid #aaa;border-radius:6px;background:#fff;color:#222!important;cursor:pointer;text-align:left;font-size:1rem}.htwn-next,.htwn-open,.htwn-feedback-submit,#htwn-other-submit,#htwn-mini-send{width:auto;display:inline-block;font-weight:700;text-decoration:none;color:#222!important}.htwn-choice:hover,.htwn-goal:hover{border-color:#333}.htwn-secondary{padding:8px 12px;margin:8px 8px 8px 0;background:transparent;color:#222!important;border:1px solid #aaa;border-radius:5px;cursor:pointer}.htwn-beta-box,.htwn-feedback,.htwn-mini-feedback{border:1px solid #bbb;border-radius:7px;padding:16px 18px;margin:20px 0;background:#fafafa}.htwn-beta-title{font-weight:800}.htwn-feedback textarea,#htwn-other-text,#htwn-mini-comment{display:block;width:100%;box-sizing:border-box;margin:8px 0 12px}.htwn-rating{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:12px}.htwn-small{font-size:.88rem;opacity:.8}.htwn-summary{margin:20px 0}.htwn-result-actions{margin:16px 0}.htwn-mini-feedback [data-mini]{padding:6px 12px;margin:8px 4px 8px 0;border:1px solid #aaa;background:#fff;color:#222!important;border-radius:5px;cursor:pointer}.htwn-mini-feedback [data-mini].is-selected{font-weight:800;border-width:2px}@media(max-width:600px){.htwn-grid{grid-template-columns:1fr}.htwn-rating{display:block}.htwn-rating label{display:block;margin:8px 0}}

.htwn-feedback-submit,#htwn-other-submit,#htwn-mini-send,.htwn-open{background:#078b3b!important;color:#fff!important;border-color:#078b3b!important}.htwn-feedback-submit:hover,#htwn-other-submit:hover,#htwn-mini-send:hover,.htwn-open:hover{filter:brightness(.94);color:#fff!important}


/* v0.1.2: aggressively isolate navigator controls from theme button styles. */
#htwn-app button.htwn-choice,
#htwn-app button.htwn-goal {
  -webkit-appearance:none!important;
  appearance:none!important;
  display:block!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:12px 15px!important;
  border:1px solid #aaa!important;
  border-radius:6px!important;
  background:#fff!important;
  background-image:none!important;
  color:#222!important;
  -webkit-text-fill-color:#222!important;
  opacity:1!important;
  visibility:visible!important;
  font-family:inherit!important;
  font-size:16px!important;
  font-weight:400!important;
  font-style:normal!important;
  line-height:1.4!important;
  letter-spacing:normal!important;
  text-transform:none!important;
  text-indent:0!important;
  text-shadow:none!important;
  text-align:left!important;
  white-space:normal!important;
  cursor:pointer!important;
}
#htwn-app button.htwn-choice:hover,
#htwn-app button.htwn-choice:focus,
#htwn-app button.htwn-goal:hover,
#htwn-app button.htwn-goal:focus {
  background:#f5f5f5!important;
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  border-color:#555!important;
  outline-offset:2px;
}
#htwn-app button.htwn-choice:active,
#htwn-app button.htwn-goal:active {
  background:#ededed!important;
  color:#111!important;
  -webkit-text-fill-color:#111!important;
}

/* v0.1.3: use link-based action controls to avoid themes that suppress native button text. */
#htwn-app a.htwn-choice,
#htwn-app a.htwn-goal,
#htwn-app a.htwn-secondary,
#htwn-app a#htwn-other-submit,
#htwn-app a#htwn-mini-send,
#htwn-app .htwn-mini-feedback a[data-mini],
a.htwn-feedback-submit {
  text-decoration:none!important;
  opacity:1!important;
  visibility:visible!important;
  -webkit-text-fill-color:currentColor!important;
}
#htwn-app a.htwn-choice,
#htwn-app a.htwn-goal {
  color:#222!important;
  -webkit-text-fill-color:#222!important;
}
#htwn-app a#htwn-other-submit,
#htwn-app a#htwn-mini-send,
a.htwn-feedback-submit {
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
a.htwn-feedback-submit.is-disabled {
  opacity:.6!important;
  pointer-events:none;
}

/* v0.1.4: clearer Beta styling and stronger visual separation of the navigator. */
.htwn-beta-box {
  background:#fffbea!important;
  border-color:#e0a800!important;
}

#htwn-app.htwn-app {
  background:#f8f9f9;
  border:1px solid #d9ddda;
  border-radius:8px;
  padding:24px;
  margin:22px 0;
  box-sizing:border-box;
}

#htwn-app a.htwn-choice,
#htwn-app a.htwn-goal {
  background:#078b3b!important;
  border-color:#078b3b!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:600!important;
}
#htwn-app a.htwn-choice:hover,
#htwn-app a.htwn-choice:focus,
#htwn-app a.htwn-goal:hover,
#htwn-app a.htwn-goal:focus {
  background:#067632!important;
  border-color:#067632!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

.htwn-feedback {
  background:#f7f7f7!important;
  border-color:#d5d5d5!important;
}

.htwn-fallback-options {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:20px 0;
}
.htwn-fallback-card {
  background:#fff;
  border:1px solid #d6d6d6;
  border-radius:7px;
  padding:16px;
}
.htwn-fallback-card h3 { margin-top:0; }
.htwn-fallback-link {
  display:inline-block;
  background:#078b3b!important;
  border:1px solid #078b3b!important;
  border-radius:5px;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:600;
  padding:9px 13px;
  text-decoration:none!important;
}
.htwn-fallback-link:hover,.htwn-fallback-link:focus {
  background:#067632!important;
  color:#fff!important;
}
.htwn-search-form { display:flex; gap:8px; align-items:stretch; flex-wrap:wrap; }
.htwn-search-form input[type=search] { flex:1 1 220px; min-width:0; padding:9px 10px; }
.htwn-search-submit {
  -webkit-appearance:none!important;
  appearance:none!important;
  background:#078b3b!important;
  border:1px solid #078b3b!important;
  border-radius:5px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font:inherit!important;
  font-weight:600!important;
  padding:9px 13px!important;
  cursor:pointer!important;
  opacity:1!important;
}
.htwn-other-feedback {
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid #d6d6d6;
}
@media(max-width:750px){
  #htwn-app.htwn-app{padding:16px;}
  .htwn-fallback-options{grid-template-columns:1fr;}
}

/* v0.1.5: compact beta treatment and polished result feedback selector. */
.htwn-beta-box {
  background:#fff6cf!important;
  border:1px solid #e0a800!important;
  padding:10px 14px!important;
  margin:14px 0!important;
  border-radius:6px!important;
}
.htwn-beta-box .htwn-beta-title {
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:800;
}
.htwn-beta-box .htwn-badge {
  margin:0!important;
  line-height:1.2;
}
.htwn-beta-box p {
  margin:7px 0 0!important;
}
.htwn-beta-box p:last-child {
  margin-bottom:0!important;
}

/* The navigator keeps its badge, but wastes less space above the first question. */
#htwn-app.htwn-app {
  padding-top:20px;
  margin-top:16px;
}
#htwn-app .htwn-progress {
  margin-bottom:18px;
}

/* Result-page Yes / Partly / No selector. */
#htwn-app .htwn-mini-feedback {
  background:#f7f7f7;
  border:1px solid #d5d5d5;
  border-radius:7px;
  padding:16px 18px;
  margin:18px 0 0;
}
#htwn-app .htwn-mini-feedback > strong {
  display:block;
  margin:0 0 9px;
}
#htwn-app .htwn-mini-feedback .htwn-mini-options {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  max-width:430px;
  margin:0 0 12px;
}
#htwn-app .htwn-mini-feedback a[data-mini] {
  display:block!important;
  width:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:9px 12px!important;
  background:#fff!important;
  border:1px solid #aeb4b0!important;
  border-radius:5px!important;
  color:#222!important;
  -webkit-text-fill-color:#222!important;
  text-align:center!important;
  font-weight:600!important;
  text-decoration:none!important;
}
#htwn-app .htwn-mini-feedback a[data-mini]:hover,
#htwn-app .htwn-mini-feedback a[data-mini]:focus {
  background:#eef6f1!important;
  border-color:#078b3b!important;
}
#htwn-app .htwn-mini-feedback a[data-mini].is-selected {
  background:#078b3b!important;
  border-color:#078b3b!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:700!important;
}
#htwn-app .htwn-mini-feedback textarea {
  margin-top:6px!important;
}

@media(max-width:520px){
  #htwn-app .htwn-mini-feedback .htwn-mini-options{grid-template-columns:1fr;}
}

/* v0.1.6: robust mini-feedback spacing; avoids theme styles colliding with the question text. */
#htwn-app .htwn-mini-feedback > strong{display:block!important;margin:0 0 14px!important;line-height:1.4!important;}
#htwn-app .htwn-mini-feedback .htwn-mini-options{display:grid!important;grid-template-columns:repeat(3,minmax(90px,1fr))!important;gap:10px!important;max-width:430px!important;margin:0 0 14px!important;padding:0!important;clear:both!important;}
#htwn-app .htwn-mini-feedback .htwn-mini-options a[data-mini]{position:static!important;float:none!important;line-height:1.3!important;min-height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
@media(max-width:520px){#htwn-app .htwn-mini-feedback .htwn-mini-options{grid-template-columns:1fr!important;}}

/* v0.1.7: fully separate the mini-feedback question from its controls. */
#htwn-app .htwn-mini-feedback .htwn-mini-question{
  display:block!important;
  position:static!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0 0 14px!important;
  font-weight:700!important;
  line-height:1.45!important;
}
#htwn-app .htwn-mini-feedback .htwn-mini-options{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 14px!important;
  padding:0!important;
  position:static!important;
  float:none!important;
  clear:both!important;
}
#htwn-app .htwn-mini-feedback .htwn-mini-options a[data-mini]{
  display:inline-flex!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:76px!important;
  min-height:0!important;
  margin:0!important;
  padding:7px 14px!important;
  align-items:center!important;
  justify-content:center!important;
  position:static!important;
  float:none!important;
}
@media(max-width:520px){
  #htwn-app .htwn-mini-feedback .htwn-mini-options{display:flex!important;}
  #htwn-app .htwn-mini-feedback .htwn-mini-options a[data-mini]{min-width:70px!important;}
}
