/* Saved per-tool presentation, transcribed from the supplied Admissify HTML. */
html body { padding:0; margin:0; line-height:1.5; }
#calculator-content { max-width:none; }
.at-tool,.at-tool *, .at-tool *::before,.at-tool *::after { box-sizing:border-box; }
.at-tool { color:var(--text); font:16px/1.5 var(--font-body); margin-top:0; }
.at-tool [hidden] { display:none!important; }
.at-tool p { margin-top:0; }
.at-tool a { color:var(--text); }
.at-tool form { margin:0; min-width:0; }
.at-embed-header { padding:20px 0 24px; }
.at-embed-header h2 { font:750 30px/1.2 var(--font-head); margin:0 0 12px; }
.at-embed-header p { margin:0 0 12px; }
.at-embed-header .at-eyebrow { font-size:12px; text-transform:uppercase; letter-spacing:.12em; }
body[data-tool-presentation=page] .at-embed-header { display:none; }
.at-tool {
  --brand: #2f3440;
  --accent: #7c8246;
  --accent-ink: #585d2f;
  --text: #020817;
  --muted: #64748b;
  --bg: #ffffff;
  --surface: #fafaf8;
  --calc: #f7f8f4;
  --calc-line: #dde0e6;
  --soft: #e6e7e8;
  --line: rgba(2, 8, 23, 0.14);
  --line-strong: rgba(2, 8, 23, 0.24);
  --field: #839087;
  --tag-bg: #eff0e9;
  --tag-line: rgba(47, 52, 64, 0.2);
  --tag-ink: #272c38;
  --result-line: #e3e7df;
  --logo: #f2a01e;
  --font-body: "Poppins", "Segoe UI", sans-serif;
  --font-head: Arial, "Helvetica Neue", sans-serif;
  --font-mono: SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;
}

/* Tool: one component, two wrappers */
.at-tool { container-type: inline-size; margin-top: 32px; }
.at-tool-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.at-calc { background: var(--calc); border: 1px solid var(--calc-line); border-radius: 20px; padding: 28px; }
.at-calc-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 20px; }
.at-calc-title { font-family: var(--font-head); font-weight: 750; font-size: 20px; margin: 0; }
.at-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 20px; }
.at-fields-1 { grid-template-columns: minmax(0, 1fr); }
.at-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.at-field-wide { grid-column: 1 / -1; }
.at-label { font-size: 14px; font-weight: 700; color: var(--text); }
.at-help { font-size: 13px; line-height: 1.5; color: var(--muted); }
.at-input-wrap { position: relative; display: flex; align-items: center; }
.at-input, .at-select { width: 100%; min-height: 50px; padding: 12px 14px; border: 1px solid var(--field); border-radius: 8px; background: #fff; color: var(--text); font-family: var(--font-body); font-size: 16px; font-variant-numeric: tabular-nums; }
.at-input:focus-visible, .at-select:focus-visible, .at-chip:focus-visible, .at-btn:focus-visible { outline: 3px solid var(--brand); outline-offset: 2px; }
.at-input-unit { padding-right: 56px; }
.at-input-pre { padding-left: 34px; }
.at-unit { position: absolute; right: 14px; font-family: var(--font-mono); font-size: 13px; color: var(--muted); pointer-events: none; }
.at-pre { position: absolute; left: 14px; font-family: var(--font-mono); font-size: 14px; color: var(--muted); pointer-events: none; }
.at-select { appearance: none; padding-right: 40px; background-image: linear-gradient(45deg, transparent 50%, var(--text) 50%), linear-gradient(135deg, var(--text) 50%, transparent 50%); background-position: calc(100% - 20px) 22px, calc(100% - 14px) 22px; background-size: 6px 6px; background-repeat: no-repeat; }
.at-range { width: 100%; accent-color: var(--brand); min-height: 32px; }
.at-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.at-chip { min-height: 44px; padding: 0 14px; border: 1px solid var(--line-strong); border-radius: 8px; background: #fff; color: var(--text); font-family: var(--font-mono); font-size: 12.5px; font-weight: 750; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; text-decoration: none; }
.at-chip[aria-pressed="true"] { background: var(--brand); border-color: var(--brand); color: #fff; }
.at-chip-ghost { border-style: dashed; color: var(--muted); }
.at-seg { display: inline-flex; border: 1px solid var(--line-strong); border-radius: 10px; padding: 3px; background: #fff; gap: 3px; }
.at-seg button { min-height: 40px; padding: 0 14px; border: 0; border-radius: 7px; background: transparent; font-family: var(--font-body); font-size: 14px; font-weight: 600; color: var(--muted); cursor: pointer; }
.at-seg button[aria-pressed="true"] { background: var(--brand); color: #fff; }
.at-divider { height: 1px; background: var(--calc-line); margin: 22px 0; border: 0; }
.at-pill { display: inline-flex; align-items: center; min-height: 26px; padding: 0 10px; border-radius: 999px; border: 1px dashed var(--line-strong); font-family: var(--font-mono); font-size: 11px; font-weight: 750; color: var(--tag-ink); background: #fff; }

/* Result card */
.at-result { position: sticky; top: 24px; background: #fff; border: 1px solid var(--result-line); border-radius: 16px; padding: 24px; display: flex; flex-direction: column; gap: 14px; }
.at-result-label { font-family: var(--font-mono); font-size: 11.5px; font-weight: 750; letter-spacing: 0.06em; text-transform: uppercase; color: var(--muted); margin: 0; }
.at-result-num { font-family: var(--font-head); font-weight: 800; font-size: 52px; line-height: 1.05; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; margin: 0; }
.at-result-num small { font-size: 22px; letter-spacing: 0; color: var(--muted); font-weight: 700; }
.at-formula { font-family: var(--font-mono); font-size: 13px; color: var(--muted); margin: 0; overflow-wrap: anywhere; }
.at-meaning { font-size: 15px; line-height: 1.6; margin: 0; }
.at-status { display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; min-height: 30px; padding: 0 12px; border-radius: 999px; font-size: 13px; font-weight: 700; }
.at-status-good { background: #e6efe0; color: #2f5a1f; }
.at-status-gap { background: #fbefdc; color: #7a4a06; }
.at-rows { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; list-style: none; }
.at-rows li { display: flex; justify-content: space-between; gap: 12px; font-size: 14px; }
.at-rows li span:last-child { font-variant-numeric: tabular-nums; font-weight: 600; }
.at-rows .at-total { border-top: 1px dashed var(--line-strong); padding-top: 8px; font-weight: 700; }
.at-bar { display: flex; height: 12px; border-radius: 6px; overflow: hidden; background: var(--soft); gap: 2px; }
.at-bar span { display: block; height: 100%; }
.at-legend { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 12.5px; color: var(--muted); }
.at-legend i { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 6px; vertical-align: -1px; }
.at-actions { display: flex; flex-direction: column; gap: 10px; margin-top: 4px; }
.at-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; padding: 0 20px; border-radius: 10px; border: 1px solid var(--brand); background: var(--brand); color: #fff !important; font-family: var(--font-body); font-size: 15px; font-weight: 700; text-decoration: none; cursor: pointer; text-align: center; }
.at-btn:hover { background: #1f232c; }
.at-btn-ghost { background: #fff; color: var(--text) !important; border-color: var(--line-strong); }
.at-btn-ghost:hover { background: var(--surface); }
.at-link { font-size: 14px; font-weight: 650; text-underline-offset: 4px; align-self: flex-start; }
.at-note { font-family: var(--font-mono); font-size: 11.5px; color: var(--muted); margin: 0; }

/* Contact step (only on tools that keep a form) */
.at-gate { display: flex; flex-direction: column; gap: 14px; }
.at-gate-lock { display: flex; align-items: center; gap: 10px; padding: 14px; border-radius: 12px; background: var(--calc); border: 1px dashed var(--line-strong); font-size: 14px; }
.at-gate .at-field { gap: 4px; }
.at-consent { font-size: 13px; line-height: 1.55; color: var(--muted); margin: 0; }
.at-consent a { color: var(--text); }

/* Next tool chip */
.at-next { margin-top: 20px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px; border: 1px dashed var(--line-strong); border-radius: 14px; background: rgba(255, 255, 255, 0.7); text-decoration: none; }
.at-next-text { font-size: 15px; }
.at-next-text strong { font-weight: 700; }
.at-next-go { font-family: var(--font-mono); font-size: 12.5px; font-weight: 750; white-space: nowrap; }

/* Narrow containers (embeds, phones) */
@container (max-width: 760px) {
  .at-tool-grid { grid-template-columns: minmax(0, 1fr); }
  .at-result { position: static; }
  .at-calc { padding: 20px; border-radius: 16px; }
}
@container (max-width: 460px) {
  .at-fields { grid-template-columns: minmax(0, 1fr); }
  .at-result-num { font-size: 44px; }
}


/* Working controls, result state and optional contact panel. */
.at-tool { margin-top:0; }
.at-calc > .at-field { margin-bottom:18px; }
.at-field + .at-choice-field,.at-choice-field + .at-field { margin-top:20px; }
.at-calc > .at-field:first-of-type { margin-bottom:20px; }
.at-calc > .at-choice-field { margin-bottom:20px; }
.at-calc .at-advanced { margin-top:18px; border-top:1px solid var(--calc-line); padding-top:14px; }
.at-advanced summary { cursor:pointer; font-size:14px; font-weight:650; min-height:44px; display:flex; align-items:center; }
.at-advanced[open] summary { margin-bottom:14px; }
.at-advanced .at-field + .at-field { margin-top:16px; }
.at-fields > .at-field + .at-field { margin-top:0; }
.at-result { min-width:0; }
/* The iframe starts at zero; the parent page supplies the reference's inset. */
.at-result { top:0; }
.at-result-content,[data-empty] { display:flex; flex-direction:column; gap:14px; }
.at-result-content p,[data-empty] p { margin:0; }
.at-result-content .at-result-num { margin:0; }
.at-result-num { overflow-wrap:anywhere; }
.at-result-num small { white-space:normal; }
.at-result-content:has([data-result]:empty) .at-result-num { display:none; }
.at-rows:empty,[data-formula]:empty { display:none; }
.at-result .at-link { color:var(--text); }
.at-guidance { background:transparent; border:0; padding:6px 0; min-height:44px; cursor:pointer; text-align:left; text-decoration:underline; font-family:inherit; }
.at-btn { line-height:1.5; padding-top:12px; padding-bottom:12px; }
.at-result .at-status { line-height:1.5; }
[data-chart] { display:flex; flex-direction:column; gap:10px; }
[data-chart] .at-bar span:nth-child(1),[data-chart] .at-legend span:nth-child(1) i { background:#2f3440; }
[data-chart] .at-bar span:nth-child(2),[data-chart] .at-legend span:nth-child(2) i { background:#7c8246; }
[data-chart] .at-bar span:nth-child(3),[data-chart] .at-legend span:nth-child(3) i { background:#8a94a6; }
[data-chart] .at-bar span:nth-child(4),[data-chart] .at-legend span:nth-child(4) i { background:#c9ccb0; }
.at-assumptions { margin-top:20px; color:var(--muted); font-size:12px; }
.at-assumptions summary { min-height:44px; cursor:pointer; padding:12px 0; font-size:13px; font-weight:650; }
.at-assumptions p { line-height:1.7; margin:8px 0; }
.at-error { color:#a1261c; }
.at-semesters { display:flex; flex-direction:column; gap:12px; }
.at-semester { display:flex; align-items:flex-end; flex-wrap:wrap; gap:12px; }
.at-semester .at-semester-label { flex:0 0 96px; font:750 12.5px/1.5 var(--font-mono); padding-bottom:16px; }
.at-semester .at-field { flex:1 1 120px; }
.at-semester .at-chip { width:50px; min-height:50px; justify-content:center; padding:0; }
.at-add { margin-top:16px; }
.at-seg { max-width:100%; flex-wrap:wrap; }
.at-step-progress { height:6px; margin-bottom:22px; }
.at-step-progress span { background:var(--brand); width:0; }
.at-step-actions { display:flex; gap:10px; margin-top:24px; flex-wrap:wrap; }
.at-step-actions [data-step-next] { flex:1 1 200px; }
[data-admissify-tool=svmcm] .at-result-num { font-size:30px; }
.at-tool .library-lead-step { margin:10px 0 0; padding:20px 0 0; border-top:1px dashed var(--line-strong); }
.at-tool .library-lead-step h3 { font:750 20px/1.2 var(--font-head); margin:0 0 14px; }
.at-tool .library-lead-step p { color:var(--muted); font-size:13px; line-height:1.55; margin:0 0 14px; }
.at-tool .library-lead-step label { font-size:14px; font-weight:700; }
.at-tool .library-lead-step input { min-height:50px; margin:4px 0 14px; padding:12px 14px; border:1px solid var(--field); border-radius:8px; background:#fff; font:400 16px/1.5 var(--font-body); }
.at-tool .library-lead-grid { grid-template-columns:1fr; gap:0; }
.at-tool .library-lead-actions { flex-direction:column-reverse; gap:8px; margin-top:14px; }
.at-tool .library-lead-actions button { width:100%; margin:0; min-height:50px; padding:12px 20px; border-radius:10px; border:1px solid var(--brand); background:var(--brand); color:#fff; font:700 15px/1.5 var(--font-body); }
.at-tool .library-lead-actions [data-lead-back] { background:#fff; color:var(--text); border-color:var(--line-strong); }
.at-tool .library-lead-error { color:#a1261c; }
.at-tool :is(a,button,input,select,summary):focus-visible { outline:3px solid var(--brand); outline-offset:2px; }
[data-admissify-tool=emi] [data-chart] .at-bar span:nth-child(2),[data-admissify-tool=emi] [data-chart] .at-legend span:nth-child(2) i { background:#8a94a6; }
[data-admissify-tool=emi] [data-chart] .at-bar span:nth-child(3),[data-admissify-tool=emi] [data-chart] .at-legend span:nth-child(3) i { background:#7c8246; }
@container (max-width:460px) { .at-semester .at-semester-label { flex-basis:100%; padding-bottom:0; } .at-semester .at-field { flex-basis:80px; min-width:0; } .at-result-num { font-size:44px; } }
@media (max-width:860px) { .at-next { flex-direction:column; align-items:flex-start; } }
