/* Source: src/styles/calculator-input-panel.css */
.input-panel,.forecast-panel{
  border-color:transparent!important;
  box-shadow:none!important;
}
.input-panel label,.forecast-panel label,
.input-panel .field-label,.forecast-panel .field-label{font-weight:400!important}
.method h2,.faq h2{font-size:20px!important;font-weight:600!important}
.faq h3,.faq summary{font-size:18px!important;font-weight:600!important;color:#3a3b41!important}
.result-intro{margin-bottom:56px}
.fs-calculator-intro{
  box-sizing:border-box;
  width:calc(100% - var(--fs-intro-left) - var(--fs-intro-right));
  max-width:none;
  margin-left:var(--fs-intro-left);
  margin-right:var(--fs-intro-right);
  padding-left:0;
  padding-right:0;
}
/* Questions share the subtitle's typography and the introduction's background. */
:is(.forecast-question,.questions,.question-examples,.example){
  margin:27px 0 0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.fs-calculator-intro :is(.forecast-question,.questions,.question-examples,.example),
.fs-calculator-intro :is(.forecast-question,.questions,.question-examples,.example) *{
  font-family:var(--fs-intro-font-family)!important;
  font-size:var(--fs-intro-font-size)!important;
  font-weight:var(--fs-intro-font-weight)!important;
  font-style:var(--fs-intro-font-style)!important;
  color:var(--fs-intro-color)!important;
  line-height:var(--fs-intro-line-height)!important;
  letter-spacing:var(--fs-intro-letter-spacing)!important;
  text-transform:var(--fs-intro-text-transform)!important;
}
:is(.forecast-question,.questions,.question-examples,.example)>:is(span,strong){display:block;margin-bottom:8px}
:is(.forecast-question,.questions)>strong+strong{margin-top:16px}
:is(.question-examples,.example) :is(ul,ol){display:block;margin:0;padding:0;list-style:none}
.example ol{counter-reset:intro-question}
.example li{counter-increment:intro-question}
.example li::before{content:counter(intro-question) '. '}
:is(.question-examples,.example) li{margin:0;padding:0;border:0;background:transparent}
:is(.question-examples,.example) li+li{margin-top:16px}
.fs-panel-heading-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.fs-panel-heading-row .reset{
  flex:0 0 auto;
  margin:2px 0 0!important;
  padding:0!important;
}/* Match the card typography established by the route-comparison calculator. */

.chart-card .chart-heading h3,
.chart-card>h3,
.formula-card h3{
  font-size:24px!important;
  line-height:1.2!important;
}
.chart-card .chart-heading p,
.chart-card>.chart-copy,
.chart-card>.chart-description,
.formula-card .formula{
  font-size:15px!important;
  line-height:1.55!important;
}/* Let chart explanations use the card width instead of an arbitrary text cap. */

.chart-card .chart-heading>div{
  flex:1 1 auto!important;
  min-width:0!important;
}
.chart-card .chart-heading p,
.chart-card>.chart-copy,
.chart-card>.chart-description{
  width:100%!important;
  max-width:none!important;
}
.chart-card .legend,
.chart-card .chart-tag,
.chart-card .chart-status span,
.chart-card svg text,
.summary-card p,
.summary-card span,
.metric span,
.metric small,
.metric-label,
.metric-note,
.insight span,
.architecture span,
.architecture small,
.formula-card .formula-note{
  font-size:11px!important;
}
.summary-card strong,
.metric b,
.metric-value,
.architecture b{
  font-size:24px!important;
  line-height:1.15!important;
}
.insight b{
  font-size:15px!important;
  line-height:1.35!important;
}/* Give unprefixed values a comfortable inset without widening symbol-prefixed fields. */

.input-panel :is(.input-box,.input-wrap,.advanced-number,.advanced-input-wrap)>input:first-child,
.forecast-panel :is(.input-box,.input-wrap,.advanced-number,.advanced-input-wrap)>input:first-child{
  padding-left:14px!important;
}
.input-panel .slider-row .input-box>input:first-child,
.forecast-panel .slider-row .input-box>input:first-child{
  padding-left:10px!important;
  padding-right:2px!important;
}
@media(min-width:901px){
  .input-panel,
  .forecast-panel{
    width:390px!important;
    max-width:390px!important;
  }
  .input-panel .field-grid,
  .forecast-panel .field-grid,
  .input-panel .advanced-pair,
  .forecast-panel .advanced-pair{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .input-panel .split-row,
  .forecast-panel .split-row{
    flex-direction:column!important;
  }
  .input-panel :is(.input-box,.input-wrap,.advanced-number,.advanced-input-wrap),
  .forecast-panel :is(.input-box,.input-wrap,.advanced-number,.advanced-input-wrap){
    width:100%!important;
    max-width:338px!important;
    min-width:0;
    flex:none!important;
  }
  .input-panel .slider-row .input-box,
  .forecast-panel .slider-row .input-box{
    width:108px!important;
    max-width:108px!important;
  }
}
@media(min-width:841px){
  .input-panel,
  .forecast-panel{
    padding-left:29px!important;
  }
}
/* Full-bleed tonal sections keep their existing field alignment. */
@media(min-width:841px){
  .input-panel--fee-carry>.input-group{
    margin-right:-23px!important;
    margin-left:-29px!important;
    padding-right:29px!important;
    padding-left:29px!important;
  }
  .input-panel--allocation-capacity>.input-group{
    margin-right:-25px!important;
    margin-left:-29px!important;
    padding-right:25px!important;
    padding-left:29px!important;
  }
  .input-panel--liquidity-stress>.input-group{
    margin-right:-24px!important;
    margin-left:-29px!important;
    padding-right:24px!important;
    padding-left:29px!important;
  }
}
@media(min-width:561px) and (max-width:840px){
  .input-panel--fee-carry>.input-group{
    margin-inline:-23px!important;
    padding-inline:29px!important;
  }
  .input-panel--allocation-capacity>.input-group{
    margin-inline:-25px!important;
    padding-inline:25px!important;
  }
  .input-panel--liquidity-stress>.input-group{
    margin-inline:-24px!important;
    padding-inline:24px!important;
  }
}
@media(min-width:841px){
  .input-panel--route-comparison>.input-group{
    margin-right:0!important;
    margin-left:-29px!important;
    padding-right:16px!important;
    padding-left:29px!important;
  }
}
@media(max-width:560px){
  .input-panel--fee-carry>.input-group{
    margin-inline:-17px!important;
    padding-inline:23px!important;
  }
  .input-panel--allocation-capacity>.input-group,
  .input-panel--liquidity-stress>.input-group{
    margin-inline:-17px!important;
    padding-inline:17px!important;
  }
}
/* Match the commitment-pacing desktop geometry across the calculator series. */
@media(min-width:1200px){
  :is(main,section,div):has(>.input-panel),
  :is(main,section,div):has(>.forecast-panel){
    width:calc(100% - 145px)!important;
    max-width:none!important;
    margin-left:45px!important;
    margin-right:100px!important;
    padding-left:0!important;
    padding-right:0!important;
    grid-template-columns:390px minmax(0,1fr)!important;
    column-gap:63px!important;
  }
  .results,.forecast-results{
    grid-column:2!important;
    margin-left:0!important;
    min-width:0!important;
  }
  .forecast-chart{min-width:0!important}
}
.fs-resizable-input-panel{
  isolation:isolate;
  translate:var(--fs-input-panel-outer-shift,0) 0;
}/* Reserve a small gutter where the aligned input panel outgrows its grid track. */

.fs-calculator-results-spacing{
  margin-left:var(--fs-calculator-results-inset);
}
.fs-calculator-results-spacing .chart-heading:has(.chart-status){
  flex-wrap:wrap;
}
.fs-input-panel-side-grip{
  position:fixed;
  top:var(--fs-input-panel-grip-top,0);
  left:var(--fs-input-panel-grip-left,0);
  z-index:100;
  width:12px;
  height:var(--fs-input-panel-grip-height,0);
  padding:0;
  border:0;
  background:transparent;
  cursor:ew-resize;
  touch-action:none;
}
.fs-input-panel-side-grip::after{
  position:absolute;
  top:50%;
  left:2px;
  width:3px;
  height:46px;
  border-right:1px solid #b9b5ac;
  border-left:1px solid #d7d3ca;
  content:"";
  opacity:0;
  transform:translateY(-50%);
  transition:opacity .14s ease;
}
.fs-input-panel-side-grip:hover::after,
.fs-input-panel-side-grip:focus-visible::after{
  border-color:#9b783d;
  opacity:1;
}
.fs-input-panel-side-grip:focus-visible{
  outline:2px solid #9b783d;
  outline-offset:-2px;
}
.fs-resizable-input-panel.fs-input-panel-widened{
  z-index:90!important;
  width:var(--fs-input-panel-width)!important;
  max-width:calc(100vw - var(--fs-input-panel-left) - 12px)!important;
  transform:none!important;
  background:#fff!important;
  box-shadow:none!important;
}
.fs-input-panel-resizing,
.fs-input-panel-resizing *{
  cursor:ew-resize!important;
  user-select:none!important;
}
@media(max-width:900px){
  .fs-input-panel-side-grip{display:none}
  .fs-resizable-input-panel.fs-input-panel-widened{
    width:auto!important;
    max-width:none!important;
    transform:none!important;
    box-shadow:none!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .fs-input-panel-side-grip::after{transition:none}
}
