.advisor {
  max-width: 1040px;
}
.advisor-intro {
  padding: 42px 0 24px;
}
.advisor-intro h1 {
  max-width: 850px;
  margin: 13px 0;
  font-size: clamp(34px, 6vw, 62px);
  line-height: 1.16;
  letter-spacing: -0.045em;
}
.advisor-intro p {
  max-width: 760px;
  color: #465a55;
  font-size: 18px;
}
.advisor-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}
.advisor-input,
.advisor-guide {
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fff;
  box-shadow: var(--shadow);
}
.advisor-input h2 {
  margin: 0 0 5px;
}
.advisor-input label {
  display: block;
  margin-bottom: 10px;
  color: #52625f;
  font-size: 14px;
}
.advisor-input textarea {
  width: 100%;
  min-height: 170px;
  padding: 16px;
  border: 2px solid #b9c9c1;
  border-radius: 13px;
  background: #fbfdfc;
  color: #152421;
  font: inherit;
  font-size: 16px;
  line-height: 1.75;
  resize: vertical;
}
.advisor-input textarea:focus,
.advisor-continue textarea:focus,
.trial-feedback textarea:focus,
.pressure-question textarea:focus,
.implementation-prompt textarea:focus,
.migration-prompt textarea:focus,
.subscription-prompt textarea:focus {
  outline: 3px solid #8bb9aa;
  outline-offset: 2px;
  border-color: #145b4b;
}
.advisor-examples {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 11px 0 17px;
}
.advisor-examples button {
  min-height: 38px;
  padding: 6px 12px;
  border: 1px solid #bfcfc7;
  border-radius: 999px;
  background: #edf3ef;
  color: #21483f;
  font-weight: 800;
  cursor: pointer;
}
.advisor-submit {
  width: auto;
  border: 0;
  font-size: 16px;
  cursor: pointer;
}
.advisor-privacy {
  margin: 12px 0 0;
  color: #5a6865;
  font-size: 13px;
}
.advisor-guide {
  border-top: 6px solid #a98937;
}
.advisor-guide b {
  font-size: 18px;
}
.advisor-guide li {
  margin: 7px 0;
}
.advisor-guide p {
  color: #52625f;
  font-size: 14px;
}
.advisor-followup {
  margin-top: 22px;
}
.capacity-notice {
  margin: 0 0 16px;
  padding: 23px;
  border: 2px solid #a98937;
  border-radius: 16px;
  background: #fff9e8;
}
.capacity-notice h3 {
  margin: 5px 0 8px;
  color: #17354a;
  font-size: 24px;
}
.capacity-notice p {
  margin: 0;
  color: #344844;
}
.advisor-followup h2 {
  margin-bottom: 8px;
}
.followup-options {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.followup-options button {
  min-height: 45px;
  padding: 9px 15px;
  border: 1px solid #9db7ad;
  border-radius: 10px;
  background: #fff;
  color: #173f37;
  font-weight: 800;
  cursor: pointer;
}
.advisor-result {
  margin-top: 24px;
}
.result-path {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin: 0 0 14px;
  padding: 0;
  list-style: none;
}
.result-path li {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 8px 12px;
  border: 1px solid #d6ddd8;
  border-radius: 12px;
  background: #f3f4f1;
  color: #6b7773;
  font-size: 13px;
  font-weight: 800;
}
.result-path span {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  border-radius: 50%;
  background: #dfe5e1;
  color: #52625f;
}
.result-path li.is-current {
  border-color: #c6ad62;
  background: #fff7e3;
  color: #17354a;
}
.result-path li.is-current span {
  background: #145b4b;
  color: #fff;
}
.result-summary {
  padding: 26px;
  border-radius: 18px;
  background: #17354a;
  color: #fff;
}
@media (max-width: 600px) {
  .result-path { grid-template-columns: 1fr 1fr; }
  .result-path li { min-height: 44px; padding: 7px 9px; }
}
.result-summary h2 {
  margin: 5px 0 8px;
}
.result-summary p {
  margin: 0;
  color: #e5eef2;
}
.result-stage {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}
.result-kicker {
  color: #d7bd67;
  font-size: 13px;
  font-weight: 900;
}
.decision-stage {
  display: inline-block;
  padding: 5px 10px;
  border-radius: 999px;
  background: #e7efe9;
  color: #17483c;
  font-size: 13px;
  font-weight: 900;
}
.result-summary .decision-stage {
  background: #fff;
  color: #17354a;
}
.result-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 16px;
}
.answer-card {
  padding: 23px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
}
.answer-card h3 {
  margin: 0 0 9px;
}
.answer-card p,
.answer-card li {
  color: #465a55;
}
.candidate-card {
  border-top: 5px solid #145b4b;
}
.candidate-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: start;
}
.candidate-order {
  display: block;
  margin-bottom: 4px;
  color: #80651f;
  font-size: 13px;
  font-weight: 900;
}
.fit-score {
  white-space: nowrap;
  color: #145b4b;
  font-weight: 900;
}
.caution {
  padding: 12px 14px;
  border-radius: 10px;
  background: #f5efe0;
  color: #5b491d;
}
.candidate-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 14px;
}
.candidate-actions a {
  color: #145b4b;
  font-weight: 900;
}
.advisor-continue,
.trial-feedback {
  margin-top: 18px;
  padding: 22px;
  border: 1px solid #bfcfc7;
  border-radius: 16px;
  background: #fff;
}
.advisor-continue h3,
.trial-feedback h3 {
  margin: 0 0 6px;
}
.advisor-continue p,
.trial-feedback p {
  margin: 0 0 14px;
  color: #465a55;
}
.advisor-continue label,
.trial-feedback label {
  display: block;
  margin-bottom: 7px;
  font-weight: 800;
}
.advisor-continue textarea,
.trial-feedback textarea {
  box-sizing: border-box;
  width: 100%;
  padding: 12px;
  border: 2px solid #b9c9c1;
  border-radius: 10px;
  background: #fbfdfc;
  color: #152421;
  font: inherit;
  font-size: 16px;
  line-height: 1.6;
  resize: vertical;
}
.advisor-revise,
.advisor-trial-submit {
  margin-top: 10px;
  min-height: 44px;
  padding: 9px 15px;
  border: 0;
  border-radius: 9px;
  background: #17354a;
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}
.trial-feedback {
  border-top: 5px solid #a98937;
}
.pressure-question {
  margin-top: 18px;
  padding: 22px;
  border: 2px solid #a98937;
  border-radius: 16px;
  background: #fff;
}
.implementation-prompt,
.next-action-plan,
.migration-prompt,
.migration-plan,
.subscription-prompt,
.subscription-plan,
.human-review-prompt,
.human-review-plan,
.operating-reality-prompt,
.operating-reality-plan,
.free-trial-prompt,
.free-trial-plan,
.total-cost-prompt,
.total-cost-plan,
.confirmation-prompt,
.confirmation-plan,
.salience-prompt,
.salience-plan,
.present-bias-prompt,
.present-bias-plan,
.optimism-prompt,
.optimism-plan,
.feature-count-prompt,
.feature-count-plan,
.authority-prompt,
.authority-plan,
.reciprocity-prompt,
.reciprocity-plan {
  margin-top: 18px;
  padding: 22px;
  border: 2px solid #a98937;
  border-radius: 16px;
  background: #fff9e8;
}
.implementation-prompt h3,
.next-action-plan h3,
.migration-prompt h3,
.migration-plan h3,
.subscription-prompt h3,
.subscription-plan h3,
.human-review-prompt h3,
.human-review-plan h3,
.operating-reality-prompt h3,
.operating-reality-plan h3,
.free-trial-prompt h3,
.free-trial-plan h3,
.total-cost-prompt h3,
.total-cost-plan h3,
.confirmation-prompt h3,
.confirmation-plan h3,
.salience-prompt h3,
.salience-plan h3,
.present-bias-prompt h3,
.present-bias-plan h3,
.optimism-prompt h3,
.optimism-plan h3,
.feature-count-prompt h3,
.feature-count-plan h3,
.authority-prompt h3,
.authority-plan h3,
.reciprocity-prompt h3,
.reciprocity-plan h3 {
  margin: 5px 0 8px;
  color: #17354a;
}
.implementation-prompt p,
.next-action-plan p,
.migration-prompt p,
.migration-plan p,
.subscription-prompt p,
.subscription-plan p,
.human-review-prompt p,
.human-review-plan p,
.operating-reality-prompt p,
.operating-reality-plan p,
.free-trial-prompt p,
.free-trial-plan p,
.total-cost-prompt p,
.total-cost-plan p,
.confirmation-prompt p,
.confirmation-plan p,
.salience-prompt p,
.salience-plan p,
.present-bias-prompt p,
.present-bias-plan p,
.optimism-prompt p,
.optimism-plan p,
.feature-count-prompt p,
.feature-count-plan p,
.authority-prompt p,
.authority-plan p,
.reciprocity-prompt p,
.reciprocity-plan p {
  margin: 0 0 14px;
  color: #344844;
}
.implementation-prompt label,
.migration-prompt label,
.subscription-prompt label,
.human-review-prompt label,
.operating-reality-prompt label,
.free-trial-prompt label,
.total-cost-prompt label,
.confirmation-prompt label,
.salience-prompt label,
.present-bias-prompt label,
.optimism-prompt label,
.feature-count-prompt label,
.authority-prompt label,
.reciprocity-prompt label {
  display: block;
  margin-bottom: 7px;
  font-weight: 800;
}
.implementation-prompt textarea,
.migration-prompt textarea,
.subscription-prompt textarea,
.human-review-prompt textarea,
.operating-reality-prompt textarea,
.free-trial-prompt textarea,
.total-cost-prompt textarea,
.confirmation-prompt textarea,
.salience-prompt textarea,
.present-bias-prompt textarea,
.optimism-prompt textarea,
.feature-count-prompt textarea,
.authority-prompt textarea,
.reciprocity-prompt textarea {
  box-sizing: border-box;
  width: 100%;
  padding: 12px;
  border: 2px solid #b9c9c1;
  border-radius: 10px;
  background: #fff;
  color: #152421;
  font: inherit;
  font-size: 16px;
  line-height: 1.6;
  resize: vertical;
}
.implementation-prompt small,
.migration-prompt small,
.subscription-prompt small,
.human-review-prompt small,
.operating-reality-prompt small,
.free-trial-prompt small,
.total-cost-prompt small,
.confirmation-prompt small,
.salience-prompt small,
.present-bias-prompt small,
.optimism-prompt small,
.feature-count-prompt small,
.authority-prompt small,
.reciprocity-prompt small {
  display: block;
  margin-top: 10px;
  color: #52625f;
  font-size: 13px;
}
.advisor-plan-submit,
.advisor-migration-submit,
.advisor-subscription-submit,
.advisor-human-review-submit,
.advisor-operating-submit,
.advisor-free-trial-submit,
.advisor-total-cost-submit,
.advisor-confirmation-submit,
.advisor-salience-submit,
.advisor-present-bias-submit,
.advisor-optimism-submit,
.advisor-feature-count-submit,
.advisor-authority-submit,
.advisor-reciprocity-submit {
  margin-top: 10px;
  min-height: 44px;
  padding: 9px 15px;
  border: 0;
  border-radius: 9px;
  background: #17354a;
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}
.next-action-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.next-action-plan p,
.migration-plan p,
.subscription-plan p,
.human-review-plan p,
.operating-reality-plan p,
.free-trial-plan p,
.total-cost-plan p,
.confirmation-plan p,
.salience-plan p,
.present-bias-plan p,
.optimism-plan p,
.feature-count-plan p,
.authority-plan p,
.reciprocity-plan p {
  margin-bottom: 0;
}
.migration-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.migration-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.subscription-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.subscription-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.human-review-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.human-review-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.operating-reality-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.operating-reality-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.free-trial-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.free-trial-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.total-cost-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.total-cost-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.confirmation-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.confirmation-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.salience-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.salience-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.present-bias-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.present-bias-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.optimism-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.optimism-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.feature-count-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.feature-count-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.authority-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.authority-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.reciprocity-prompt {
  border-color: #8d5b46;
  background: #fff6f1;
}
.reciprocity-plan {
  border-color: #145b4b;
  background: #edf6f1;
}
.pressure-question h3 {
  margin: 0 0 6px;
}
.pressure-question p {
  margin: 0 0 14px;
  color: #465a55;
}
.pressure-question label {
  display: block;
  margin-bottom: 7px;
  font-weight: 800;
}
.pressure-question textarea {
  box-sizing: border-box;
  width: 100%;
  padding: 12px;
  border: 2px solid #b9c9c1;
  border-radius: 10px;
  background: #fbfdfc;
  color: #152421;
  font: inherit;
  font-size: 16px;
  line-height: 1.6;
  resize: vertical;
}
.advisor-pressure-submit {
  margin-top: 10px;
  min-height: 44px;
  padding: 9px 15px;
  border: 0;
  border-radius: 9px;
  background: #17354a;
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}
.pressure-decision {
  margin: 0 0 16px;
  padding: 23px;
  border: 2px solid #8d5b46;
  border-radius: 16px;
  background: #fff6f1;
}
.pressure-decision h3 {
  margin: 5px 0 8px;
  font-size: 24px;
}
.pressure-decision p {
  margin: 7px 0;
  color: #344844;
}
.trial-decision {
  margin: 0 0 16px;
  padding: 23px;
  border: 2px solid #a98937;
  border-radius: 16px;
  background: #fff9e8;
}
.trial-decision h3 {
  margin: 5px 0 8px;
  font-size: 24px;
}
.trial-decision p {
  margin: 7px 0;
  color: #344844;
}
.trial-stop,
.trial-compare,
.trial-hold {
  border-color: #8d5b46;
  background: #fff6f1;
}
.trial-continue {
  border-color: #145b4b;
  background: #edf6f1;
}
.trial-mixed {
  border-color: #a98937;
  background: #fff9e8;
}
.trial-balance {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}
.trial-balance p {
  margin: 0;
  padding: 13px;
  border: 1px solid #d8c995;
  border-radius: 10px;
  background: #fff;
}
.trial-balance strong,
.trial-balance span {
  display: block;
}
.trial-balance span {
  margin-top: 4px;
}
.contract-confirm {
  margin-top: 18px;
  padding: 18px;
  border: 1px solid #c7d5ce;
  border-radius: 13px;
  background: #edf3ef;
}
.contract-confirm label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-weight: 800;
}
.contract-confirm h3 {
  margin: 7px 0 12px;
  color: #17354a;
}
.contract-confirm label + label {
  margin-top: 9px;
}
.official-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 13px;
}
.official-actions a {
  padding: 9px 13px;
  border-radius: 9px;
  background: #145b4b;
  color: #fff;
  font-weight: 900;
  text-decoration: none;
}
.advisor-hold {
  display: inline-flex;
  min-height: 42px;
  margin-top: 13px;
  padding: 8px 13px;
  border: 1px solid #6f817a;
  border-radius: 9px;
  background: #fff;
  color: #17354a;
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}
.hold-note {
  margin: 8px 0 0;
  color: #596965;
  font-size: 13px;
}
.hold-result {
  margin: 0;
  color: #344844;
}
.advisor-limits {
  margin-top: 24px;
}
@media (max-width: 800px) {
  .advisor-workspace,
  .result-grid {
    grid-template-columns: 1fr;
  }
  .advisor-guide {
    order: -1;
  }
  .advisor-intro {
    padding-top: 26px;
  }
}
@media (max-width: 480px) {
  .trial-balance {
    grid-template-columns: 1fr;
  }
  .advisor-input,
  .advisor-guide,
  .answer-card,
  .result-summary,
  .advisor-continue,
  .trial-feedback,
  .trial-decision,
  .pressure-question,
  .pressure-decision {
    padding: 20px;
  }
  .advisor-examples {
    display: grid;
    grid-template-columns: 1fr;
  }
  .advisor-submit,
  .advisor-revise,
  .advisor-trial-submit,
  .advisor-pressure-submit {
    width: 100%;
  }
  .candidate-head,
  .result-stage {
    display: block;
  }
  .fit-score,
  .result-summary .decision-stage {
    display: inline-block;
    margin-top: 7px;
  }
}
