/* Free tools: Bitrada and the Readiness Check. Loaded after opensource.css. */

.msc-oss-tool { background: #fff !important; scroll-margin-top: 80px; }
.msc-oss-tool h3 { font-family: var(--msc-serif); color: var(--msc-navy); font-size: 1.35rem; margin: 2rem 0 .75rem; }
.msc-oss-tool h4 { color: var(--msc-navy); font-size: 1rem; margin: 1.5rem 0 .5rem; }
.msc-oss-notice { background: #e6f2ea; border-left: 4px solid #2e7d4f; color: #1d4f32 !important; padding: 12px 16px; border-radius: 3px; }

/* Bitrada inputs ----------------------------------------------------------- */

.msc-bitrada__assumptions { margin: 1.25rem 0 1.75rem; }
.msc-bitrada__inputs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
@media (max-width: 860px) { .msc-bitrada__inputs { grid-template-columns: minmax(0, 1fr); } }
.msc-bitrada__group {
  border: 1px solid var(--msc-mist); border-top: 3px solid var(--msc-slate);
  border-radius: 4px; margin: 0; padding: 14px 16px 6px; min-width: 0; background: var(--msc-off);
}
.msc-bitrada__group--a { border-top-color: var(--msc-navy); }
.msc-bitrada__group--b { border-top-color: #2e7d4f; }
.msc-bitrada__group--wide { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
.msc-bitrada__group--wide legend { grid-column: 1 / -1; }
@media (max-width: 860px) { .msc-bitrada__group--wide { grid-template-columns: minmax(0, 1fr); } }
.msc-bitrada__group legend { font-weight: 700; color: var(--msc-navy); padding: 0 6px; font-size: 1rem; }
.msc-bitrada__field { margin: 0 0 12px; }
.msc-bitrada__field label { display: block; font-weight: 700; font-size: .88rem; color: var(--msc-navy); margin-bottom: 4px; }
.msc-bitrada__control { display: flex; align-items: center; gap: 8px; }
.msc-oss .msc-bitrada__control input,
.msc-oss .msc-bitrada__control select {
  width: 9.5rem; max-width: 100%; padding: 7px 9px; margin: 0;
  font-family: var(--msc-sans); font-size: .95rem; color: var(--msc-ink);
  background: #fff; border: 1px solid var(--msc-slate); border-radius: 4px;
}
.msc-oss .msc-bitrada__control select { width: 100%; }
.msc-oss .msc-bitrada__control input:focus,
.msc-oss .msc-bitrada__control select:focus { outline: 3px solid var(--msc-gold); outline-offset: 1px; }
.msc-bitrada__unit { font-size: .82rem; color: #5b6e8a; }
.msc-bitrada__field small { display: block; font-size: .8rem; color: #5b6e8a; line-height: 1.4; margin-top: 3px; }
.msc-bitrada__fx { display: inline-block; margin-left: 4px; padding: 0 6px; border-radius: 3px; background: #fff3cd; color: #5c4500; font-weight: 700; font-size: .72rem; }
.msc-oss .msc-bitrada [hidden] { display: none !important; }
.msc-oss .msc-bitrada__assumptions p.msc-bitrada__toolbar { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.msc-oss .msc-oss-btn--ghost-dark { background: #fff; color: var(--msc-navy); border-color: var(--msc-navy); }
.msc-bitrada__empty { background: var(--msc-off); border: 1px dashed var(--msc-slate); border-radius: 4px; padding: 18px 20px; color: var(--msc-ink); }

/* Tool pages ---------------------------------------------------------------- */

.msc-oss-toolnav { background: var(--msc-off); border-bottom: 1px solid var(--msc-mist); padding: 10px 0 !important; }
.msc-oss-toolnav p { margin: 0; font-size: .9rem; }
.msc-oss-toolnav a { color: var(--msc-navy); font-weight: 700; text-decoration: none; }
.msc-oss-toolnav a:hover { text-decoration: underline; }
.msc-oss-card--tool h3 { margin-top: 0; }
.msc-oss-card--tool .msc-oss-hero__eyebrow { margin-bottom: .35rem; }

/* Bitrada results ---------------------------------------------------------- */

.msc-bitrada__results { margin-top: 1rem; }
.msc-bitrada__verdict { font-size: 1.1rem; color: var(--msc-ink); }
.msc-bitrada__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 1rem 0; }
@media (max-width: 760px) { .msc-bitrada__cards { grid-template-columns: minmax(0, 1fr); } }
.msc-bitrada__card { border: 1px solid var(--msc-mist); border-top: 4px solid var(--msc-navy); border-radius: 4px; padding: 14px 16px; }
.msc-bitrada__card--b { border-top-color: #2e7d4f; }
.msc-bitrada__card--fx { border-top-color: var(--msc-gold); }
.msc-bitrada__card span { display: block; font-size: .8rem; text-transform: uppercase; letter-spacing: .05em; color: #5b6e8a; font-weight: 700; }
.msc-bitrada__card strong { display: block; font-size: 1.6rem; color: var(--msc-navy); margin: 4px 0; }
.msc-bitrada__card em { font-style: normal; font-size: .85rem; color: var(--msc-ink); }
.msc-bitrada__warnings { background: #fbeaea; border-left: 4px solid #b23b3b; padding: 4px 16px 8px; border-radius: 3px; margin: 1rem 0; }
.msc-bitrada__warnings h4 { color: #8a2a2a; margin-top: .75rem; }
.msc-bitrada__warnings li { margin-bottom: 6px; font-size: .92rem; }
.msc-bitrada__charts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 1rem 0; }
@media (max-width: 860px) { .msc-bitrada__charts { grid-template-columns: minmax(0, 1fr); } }
.msc-bitrada__charts figure { margin: 0; border: 1px solid var(--msc-mist); border-radius: 4px; padding: 12px; }
.msc-bitrada__charts figcaption { font-weight: 700; color: var(--msc-navy); margin-bottom: 6px; }
.msc-bitrada__chart { width: 100%; height: auto; display: block; }
.msc-bitrada__axis { font-family: var(--msc-sans); font-size: 11px; fill: #5b6e8a; }
.msc-bitrada__legend { font-family: var(--msc-sans); font-size: 10px; fill: var(--msc-ink); }
.msc-bitrada__value { font-family: var(--msc-sans); font-size: 13px; font-weight: 700; fill: var(--msc-navy); }
.msc-bitrada__stress table,
.msc-bitrada__table table { width: 100%; border-collapse: collapse; font-size: .9rem; margin: .5rem 0 1rem; }
.msc-bitrada__stress th, .msc-bitrada__stress td,
.msc-bitrada__table th, .msc-bitrada__table td { padding: 7px 8px; border-bottom: 1px solid var(--msc-mist); text-align: right; }
.msc-bitrada__stress th:first-child, .msc-bitrada__stress td:first-child,
.msc-bitrada__table th:first-child, .msc-bitrada__table td:first-child { text-align: left; }
.msc-bitrada__stress thead th, .msc-bitrada__table thead th { background: var(--msc-navy); color: #fff; font-weight: 700; }
.msc-bitrada__table tfoot td { font-weight: 700; border-top: 2px solid var(--msc-gold); background: var(--msc-off); }
.msc-bitrada__table, .msc-bitrada__stress { overflow-x: auto; }
.msc-bitrada__detail { margin: 1rem 0; }
.msc-bitrada__detail summary { cursor: pointer; font-weight: 700; color: var(--msc-navy); }

/* "Send my result" box: reuses the navy download-form styling -------------- */

.msc-oss-tool__lead { background: var(--msc-navy); color: #fff; border-radius: 6px; padding: 8px 24px 16px; margin-top: 2rem; }
.msc-oss-tool .msc-oss-tool__lead h3 { color: #fff; }
.msc-oss-tool__lead p { color: #cbd7e6; }
.msc-oss-tool__lead a { color: var(--msc-gold); }

/* Readiness Check ---------------------------------------------------------- */

.msc-oss-scorecard__area { border: 0; border-top: 3px solid var(--msc-gold); margin: 1.5rem 0 0; padding: 10px 0 0; min-width: 0; }
.msc-oss-scorecard__area legend { font-family: var(--msc-serif); font-weight: 700; color: var(--msc-navy); font-size: 1.15rem; padding-right: 8px; }
.msc-oss-scorecard__q { padding: 10px 0; border-bottom: 1px solid var(--msc-mist); }
.msc-oss-scorecard__q > p { margin: 0 0 8px; font-weight: 700; color: var(--msc-ink); }
.msc-oss-scorecard__opts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
@media (max-width: 680px) { .msc-oss-scorecard__opts { grid-template-columns: 1fr 1fr; } }
.msc-oss-scorecard__opts label {
  display: flex; gap: 8px; align-items: flex-start; cursor: pointer;
  border: 1px solid var(--msc-mist); border-radius: 4px; padding: 8px 10px; font-size: .85rem; line-height: 1.3;
}
.msc-oss-scorecard__opts label:has(input:checked) { border-color: var(--msc-gold); background: #fff8e1; }
.msc-oss .msc-oss-scorecard__opts input[type="radio"] {
  appearance: auto; accent-color: var(--msc-navy); width: 1rem; min-width: 1rem; height: 1rem; margin: 2px 0 0; padding: 0; flex: 0 0 auto;
}
.msc-oss-scorecard__result { margin-top: 1.5rem; }
.msc-oss-scorecard__progress { color: #5b6e8a; font-style: italic; }
.msc-oss-scorecard__band { font-size: 1.05rem; }
.msc-oss-scorecard__bars { list-style: none; padding: 0; margin: 1rem 0; }
.msc-oss-scorecard__bars li { display: grid; grid-template-columns: 11rem 1fr 3.5rem; gap: 10px; align-items: center; padding: 5px 0; font-size: .9rem; }
@media (max-width: 560px) { .msc-oss-scorecard__bars li { grid-template-columns: 1fr 3.5rem; } .msc-oss-scorecard__bar { grid-column: 1 / -1; grid-row: 2; } }
.msc-oss-scorecard__bar { background: var(--msc-mist); border-radius: 3px; height: 12px; overflow: hidden; }
.msc-oss-scorecard__bar span { display: block; height: 100%; background: #2e7d4f; }
.msc-oss-scorecard__bar span.is-weak { background: #b23b3b; }
.msc-oss-scorecard__advice { background: var(--msc-off); border-left: 4px solid var(--msc-gold); padding: 4px 16px 8px; }
