/*
 * NusaFinance Tools UI 1.6.1
 * Consolidated, low-conflict presentation layer for financial calculators.
 * This file intentionally replaces the stacked tools-experience/polish/layout CSS.
 */

body.nf-tools-clean-v161 {
  --nf-t-ink: var(--nf-ink, #102536);
  --nf-t-muted: var(--nf-muted, #627584);
  --nf-t-primary: var(--nf-primary, #12355b);
  --nf-t-accent: var(--nf-accent, #2e8b57);
  --nf-t-surface: var(--nf-surface, #f6f9fb);
  --nf-t-line: var(--nf-line, #dfe7ec);
  --nf-t-white: #ffffff;
  --nf-t-soft-blue: #f3f7fb;
  --nf-t-soft-green: #f1f8f4;
  --nf-t-danger: #a63434;
  --nf-t-warning: #8a6200;
  --nf-t-success: #1f6b43;
  --nf-t-radius: max(14px, var(--nf-radius, 18px));
  --nf-t-shadow: 0 18px 50px rgba(15, 42, 62, .08);
  color: var(--nf-t-ink);
}

/* Page-level rhythm */
body.nf-tools-clean-v161 .entry-content,
body.nf-tools-clean-v161 .page-content,
body.nf-tools-clean-v161 main {
  text-rendering: optimizeLegibility;
}

/* =========================
   Tools directory
   ========================= */
body.nf-tools-clean-v161 .nf-tools-navigation {
  position: relative;
  overflow: hidden;
  margin: 0 0 38px;
  padding: clamp(22px, 4vw, 42px);
  border: 1px solid var(--nf-t-line);
  border-radius: calc(var(--nf-t-radius) + 8px);
  background:
    radial-gradient(circle at 90% 2%, rgba(46,139,87,.11), transparent 28%),
    radial-gradient(circle at 4% 100%, rgba(18,53,91,.08), transparent 31%),
    linear-gradient(145deg, #fff, #f7fafc);
  box-shadow: var(--nf-t-shadow);
}

body.nf-tools-clean-v161 .nf-tools-navigation::after {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  right: -75px;
  bottom: -100px;
  border: 1px solid rgba(46,139,87,.14);
  border-radius: 50%;
  pointer-events: none;
}

body.nf-tools-clean-v161 .nf-tools-navigation-head {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: start;
  margin-bottom: 24px;
}

body.nf-tools-clean-v161 .nf-tools-navigation-head h2 {
  margin: 5px 0 9px;
  max-width: 760px;
  color: var(--nf-t-ink);
  font-size: clamp(1.65rem, 3.2vw, 2.45rem);
  line-height: 1.12;
  letter-spacing: -.035em;
}

body.nf-tools-clean-v161 .nf-tools-navigation-head p {
  max-width: 820px;
  margin: 0;
  color: var(--nf-t-muted);
  font-size: .98rem;
  line-height: 1.72;
}

body.nf-tools-clean-v161 .nf-tools-count {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 7px 13px;
  border: 1px solid rgba(46,139,87,.18);
  border-radius: 999px;
  background: #edf8f1;
  color: #205f3d;
  font-size: .78rem;
  font-weight: 850;
  white-space: nowrap;
}

body.nf-tools-clean-v161 .nf161-directory-controls {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(230px, 1fr) auto;
  gap: 14px;
  align-items: center;
  margin: 0 0 18px;
  padding: 13px;
  border: 1px solid var(--nf-t-line);
  border-radius: 16px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 8px 24px rgba(15,42,62,.045);
  backdrop-filter: blur(8px);
}

body.nf-tools-clean-v161 .nf161-search {
  position: relative;
  display: flex;
  align-items: center;
}

body.nf-tools-clean-v161 .nf161-search svg {
  position: absolute;
  left: 14px;
  width: 19px;
  height: 19px;
  color: #607383;
  pointer-events: none;
}

body.nf-tools-clean-v161 .nf161-search input {
  width: 100%;
  min-height: 46px;
  margin: 0;
  padding: 10px 42px 10px 43px;
  border: 1px solid #cbd7df;
  border-radius: 12px;
  background: #fff;
  color: var(--nf-t-ink);
  font: inherit;
  font-weight: 650;
  box-shadow: none;
}

body.nf-tools-clean-v161 .nf161-search input::placeholder { color: #7b8b96; }
body.nf-tools-clean-v161 .nf161-search input:focus {
  outline: 0;
  border-color: var(--nf-t-accent);
  box-shadow: 0 0 0 3px rgba(46,139,87,.12);
}

body.nf-tools-clean-v161 .nf161-search-clear {
  position: absolute;
  right: 8px;
  display: none;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #657785;
  font-size: 1.15rem;
  cursor: pointer;
}
body.nf-tools-clean-v161 .nf161-search.has-value .nf161-search-clear { display: grid; place-items: center; }
body.nf-tools-clean-v161 .nf161-search-clear:hover { background: #edf2f5; color: var(--nf-t-ink); }

body.nf-tools-clean-v161 .nf161-filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}
body.nf-tools-clean-v161 .nf161-filters button {
  min-height: 37px;
  padding: 8px 12px;
  border: 1px solid #d3dde3;
  border-radius: 999px;
  background: #fff;
  color: #445b6a;
  font-size: .78rem;
  font-weight: 800;
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease;
}
body.nf-tools-clean-v161 .nf161-filters button:hover { transform: translateY(-1px); border-color: #9bb8aa; }
body.nf-tools-clean-v161 .nf161-filters button.is-active {
  border-color: var(--nf-t-primary);
  background: var(--nf-t-primary);
  color: #fff;
}

body.nf-tools-clean-v161 .nf-tools-links {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}

body.nf-tools-clean-v161 .nf-tools-links a {
  position: relative;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  gap: 3px 13px;
  align-items: center;
  min-height: 88px;
  padding: 16px 17px;
  border: 1px solid #dbe4e9;
  border-radius: 16px;
  background: rgba(255,255,255,.95);
  color: inherit;
  text-decoration: none !important;
  box-shadow: 0 8px 20px rgba(15,42,62,.035);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

body.nf-tools-clean-v161 .nf-tools-links a::after {
  content: "›";
  grid-column: 3;
  grid-row: 1 / 3;
  align-self: center;
  color: #8a9aa5;
  font-size: 1.55rem;
  line-height: 1;
  transition: transform .18s ease, color .18s ease;
}

body.nf-tools-clean-v161 .nf-tools-links a:hover,
body.nf-tools-clean-v161 .nf-tools-links a:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(46,139,87,.42);
  box-shadow: 0 14px 30px rgba(15,42,62,.075);
}
body.nf-tools-clean-v161 .nf-tools-links a:hover::after { transform: translateX(3px); color: var(--nf-t-accent); }
body.nf-tools-clean-v161 .nf-tools-links a[hidden] { display: none !important; }

body.nf-tools-clean-v161 .nf-tools-links a > span:first-child {
  grid-column: 1;
  grid-row: 1 / 3;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: linear-gradient(145deg, #eef8f2, #f5fafc);
  color: var(--nf-t-accent);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .04em;
}
body.nf-tools-clean-v161 .nf-tools-links strong {
  grid-column: 2;
  color: var(--nf-t-ink);
  font-size: .98rem;
  line-height: 1.28;
}
body.nf-tools-clean-v161 .nf-tools-links small {
  grid-column: 2;
  color: var(--nf-t-muted);
  font-size: .78rem;
  line-height: 1.4;
}
body.nf-tools-clean-v161 .nf161-tool-tag {
  position: absolute;
  top: 9px;
  right: 11px;
  padding: 3px 7px;
  border-radius: 999px;
  background: #f3f6f8;
  color: #667985;
  font-size: .62rem;
  font-style: normal;
  font-weight: 800;
  letter-spacing: .025em;
}
body.nf-tools-clean-v161 .nf161-directory-empty {
  display: none;
  padding: 26px 20px;
  border: 1px dashed #b9c8d1;
  border-radius: 15px;
  background: #fff;
  color: var(--nf-t-muted);
  text-align: center;
}
body.nf-tools-clean-v161 .nf161-directory-empty.is-visible { display: block; }

/* =========================
   Calculator card
   ========================= */
body.nf-tools-clean-v161 .nf-calculator {
  --nf161-tool-color: var(--nf-t-accent);
  --nf161-tool-soft: #eef8f2;
  position: relative;
  overflow: clip;
  scroll-margin-top: 100px;
  margin: 34px 0;
  padding: 0 !important;
  border: 1px solid var(--nf-t-line) !important;
  border-radius: calc(var(--nf-t-radius) + 6px) !important;
  background: #fff !important;
  box-shadow: var(--nf-t-shadow) !important;
}

body.nf-tools-clean-v161 .nf-calculator[data-calculator="emergency"],
body.nf-tools-clean-v161 .nf-calculator[data-calculator="financial-health"] { --nf161-tool-color:#247a4d; --nf161-tool-soft:#edf8f2; }
body.nf-tools-clean-v161 .nf-calculator[data-calculator="budget"],
body.nf-tools-clean-v161 .nf-calculator[data-calculator="kpr"] { --nf161-tool-color:#225f8d; --nf161-tool-soft:#edf5fb; }
body.nf-tools-clean-v161 .nf-calculator[data-calculator="debt-ratio"],
body.nf-tools-clean-v161 .nf-calculator[data-calculator="credit-card"],
body.nf-tools-clean-v161 .nf-calculator[data-calculator="loan"] { --nf161-tool-color:#8b5a16; --nf161-tool-soft:#fff7e8; }
body.nf-tools-clean-v161 .nf-calculator[data-calculator="savings"],
body.nf-tools-clean-v161 .nf-calculator[data-calculator="deposit"],
body.nf-tools-clean-v161 .nf-calculator[data-calculator="inflation"] { --nf161-tool-color:#5e4ca0; --nf161-tool-soft:#f3f0fb; }

body.nf-tools-clean-v161 .nf-tool-heading {
  position: relative;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: start !important;
  gap: 22px;
  margin: 0 !important;
  padding: clamp(22px, 3.3vw, 34px) clamp(20px, 3.6vw, 38px) 22px !important;
  border: 0 !important;
  background:
    linear-gradient(90deg, var(--nf161-tool-soft), rgba(255,255,255,.92) 62%),
    #fff;
}
body.nf-tools-clean-v161 .nf-tool-heading::after {
  content: "";
  position: absolute;
  left: clamp(20px, 3.6vw, 38px);
  right: clamp(20px, 3.6vw, 38px);
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, var(--nf161-tool-color), rgba(223,231,236,.4) 24%, var(--nf-t-line));
  opacity: .55;
}
body.nf-tools-clean-v161 .nf-tool-heading h2 {
  margin: 5px 0 8px !important;
  color: var(--nf-t-ink) !important;
  font-size: clamp(1.45rem, 2.6vw, 2.05rem) !important;
  line-height: 1.16 !important;
  letter-spacing: -.025em !important;
}
body.nf-tools-clean-v161 .nf-tool-heading p {
  max-width: 760px;
  margin: 0 !important;
  color: var(--nf-t-muted) !important;
  font-size: .94rem;
  line-height: 1.68;
}
body.nf-tools-clean-v161 .nf-tool-kicker {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  color: var(--nf161-tool-color) !important;
  font-size: .7rem !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  text-transform: uppercase;
}
body.nf-tools-clean-v161 .nf-tool-kicker::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 4px color-mix(in srgb, currentColor 13%, transparent);
}
body.nf-tools-clean-v161 .nf-tool-number {
  display: grid !important;
  place-items: center;
  min-width: 48px !important;
  height: 48px !important;
  border: 1px solid color-mix(in srgb, var(--nf161-tool-color) 24%, #fff);
  border-radius: 14px !important;
  background: #fff !important;
  color: var(--nf161-tool-color) !important;
  font-size: .78rem;
  font-weight: 900;
  box-shadow: 0 8px 18px rgba(15,42,62,.05);
}

body.nf-tools-clean-v161 .nf161-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 13px clamp(20px, 3.6vw, 38px);
  border-bottom: 1px solid var(--nf-t-line);
  background: #fff;
}
body.nf-tools-clean-v161 .nf161-trust-row span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #556b79;
  font-size: .73rem;
  font-weight: 750;
}
body.nf-tools-clean-v161 .nf161-trust-row span::before {
  content: "✓";
  display: grid;
  place-items: center;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background: var(--nf161-tool-soft);
  color: var(--nf161-tool-color);
  font-size: .66rem;
  font-weight: 900;
}

body.nf-tools-clean-v161 .nf161-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(320px, .98fr);
  min-width: 0;
}
body.nf-tools-clean-v161.nf-tools-layout-wide .nf161-workspace { grid-template-columns: minmax(0,.84fr) minmax(380px,1.16fr); }
body.nf-tools-clean-v161.nf-tools-layout-compact .nf161-workspace { grid-template-columns: 1fr; }

body.nf-tools-clean-v161 .nf161-panel {
  min-width: 0;
  padding: clamp(20px, 3vw, 34px);
}
body.nf-tools-clean-v161 .nf161-panel-input {
  border-right: 1px solid var(--nf-t-line);
  background: #fff;
}
body.nf-tools-clean-v161 .nf161-panel-result {
  background: linear-gradient(155deg, #f8fafb, #fff 62%);
}
body.nf-tools-clean-v161.nf-tools-layout-compact .nf161-panel-input { border-right: 0; border-bottom: 1px solid var(--nf-t-line); }

body.nf-tools-clean-v161 .nf161-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 18px;
}
body.nf-tools-clean-v161 .nf161-panel-title {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--nf-t-ink);
  font-size: .92rem;
  font-weight: 900;
}
body.nf-tools-clean-v161 .nf161-panel-title b {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 9px;
  background: var(--nf161-tool-color);
  color: #fff;
  font-size: .71rem;
}
body.nf-tools-clean-v161 .nf161-completion {
  color: var(--nf-t-muted);
  font-size: .72rem;
  font-weight: 750;
  white-space: nowrap;
}
body.nf-tools-clean-v161 .nf161-completion strong { color: var(--nf161-tool-color); }
body.nf-tools-clean-v161 .nf161-progress {
  height: 5px;
  margin: -5px 0 18px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8eef1;
}
body.nf-tools-clean-v161 .nf161-progress i {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: var(--nf161-tool-color);
  transition: width .22s ease;
}

/* Input fields */
body.nf-tools-clean-v161 .nf-calculator .nf-form-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 13px !important;
  margin: 0 !important;
}
body.nf-tools-clean-v161 .nf-calculator .nf-form-grid > p {
  position: relative;
  min-width: 0;
  margin: 0 !important;
  padding: 14px !important;
  border: 1px solid #dbe4e9 !important;
  border-radius: 14px !important;
  background: #fbfcfd !important;
  transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}
body.nf-tools-clean-v161 .nf-calculator .nf-form-grid > p:focus-within {
  border-color: color-mix(in srgb, var(--nf161-tool-color) 55%, #dbe4e9) !important;
  background: #fff !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--nf161-tool-color) 10%, transparent);
}
body.nf-tools-clean-v161 .nf-calculator label {
  display: block !important;
  margin: 0 0 8px !important;
  color: var(--nf-t-ink) !important;
  font-size: .79rem !important;
  font-weight: 820 !important;
  line-height: 1.4;
}
body.nf-tools-clean-v161 .nf-calculator input[type="number"],
body.nf-tools-clean-v161 .nf-calculator input[type="text"],
body.nf-tools-clean-v161 .nf-calculator input[type="email"],
body.nf-tools-clean-v161 .nf-calculator select,
body.nf-tools-clean-v161 .nf-calculator textarea {
  width: 100% !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #bfcdd6 !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #102536 !important;
  font: inherit !important;
  font-size: .93rem !important;
  font-weight: 680 !important;
  line-height: 1.3 !important;
  box-shadow: none !important;
}
body.nf-tools-clean-v161 .nf-calculator select { padding-right: 34px !important; }
body.nf-tools-clean-v161 .nf-calculator input::placeholder { color: #8796a0 !important; opacity: 1; }
body.nf-tools-clean-v161 .nf-calculator input:focus,
body.nf-tools-clean-v161 .nf-calculator select:focus,
body.nf-tools-clean-v161 .nf-calculator textarea:focus {
  outline: 0 !important;
  border-color: var(--nf161-tool-color) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--nf161-tool-color) 12%, transparent) !important;
}
body.nf-tools-clean-v161 .nf-field-help,
body.nf-tools-clean-v161 .nf-field-preview {
  display: block;
  margin-top: 7px;
  color: #6e7f8a !important;
  font-size: .72rem !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
}
body.nf-tools-clean-v161 .nf-field-preview { color: var(--nf161-tool-color) !important; font-weight: 750 !important; }

body.nf-tools-clean-v161 .nf-tool-assumption {
  margin: 0 0 14px !important;
  padding: 13px 14px !important;
  border: 1px solid color-mix(in srgb, var(--nf161-tool-color) 22%, var(--nf-t-line)) !important;
  border-radius: 12px !important;
  background: var(--nf161-tool-soft) !important;
  color: #405967 !important;
  font-size: .8rem;
  line-height: 1.58;
}
body.nf-tools-clean-v161 .nf-tool-assumption strong { color: var(--nf-t-ink); }

body.nf-tools-clean-v161 .nf-tool-actions {
  display: grid !important;
  grid-template-columns: minmax(170px,1fr) auto auto auto !important;
  gap: 9px !important;
  margin: 17px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  position: static !important;
}
body.nf-tools-clean-v161 .nf-tool-actions .nf-button {
  min-height: 46px !important;
  margin: 0 !important;
  padding: 10px 15px !important;
  border: 1px solid transparent !important;
  border-radius: var(--nf-button-radius, 11px) !important;
  background: var(--nf161-tool-color) !important;
  color: #fff !important;
  font-size: .79rem !important;
  font-weight: 850 !important;
  line-height: 1.2;
  text-decoration: none !important;
  box-shadow: 0 8px 18px color-mix(in srgb, var(--nf161-tool-color) 18%, transparent) !important;
  cursor: pointer;
  transition: transform .16s ease, filter .16s ease, box-shadow .16s ease;
}
body.nf-tools-clean-v161 .nf-tool-actions .nf-button:hover { transform: translateY(-1px); filter: brightness(.96); }
body.nf-tools-clean-v161 .nf-tool-actions .nf-button-light,
body.nf-tools-clean-v161 .nf-tool-actions .nf-button-ghost {
  border-color: #cfdbe2 !important;
  background: #fff !important;
  color: #405969 !important;
  box-shadow: none !important;
}
body.nf-tools-clean-v161 .nf-tool-actions .nf-button-light:hover,
body.nf-tools-clean-v161 .nf-tool-actions .nf-button-ghost:hover { background: #f3f6f8 !important; }
body.nf-tools-clean-v161 .nf-button-icon { display: none !important; }

body.nf-tools-clean-v161 .nf-calc-error {
  margin: 12px 0 0 !important;
  padding: 12px 13px !important;
  border: 1px solid #e6b9b9 !important;
  border-radius: 11px !important;
  background: #fff4f4 !important;
  color: #8c2e2e !important;
  font-size: .79rem;
  font-weight: 700;
  line-height: 1.5;
}
body.nf-tools-clean-v161 .nf-calc-error[hidden] { display: none !important; }

/* Result side */
body.nf-tools-clean-v161 .nf161-empty {
  display: grid;
  place-items: center;
  min-height: 315px;
  padding: 28px;
  border: 1px dashed #c9d5dc;
  border-radius: 16px;
  background: rgba(255,255,255,.76);
  text-align: center;
}
body.nf-tools-clean-v161 .nf161-empty-icon {
  display: grid;
  place-items: center;
  width: 74px;
  height: 74px;
  margin-bottom: 15px;
  border-radius: 22px;
  background: var(--nf161-tool-soft);
  color: var(--nf161-tool-color);
}
body.nf-tools-clean-v161 .nf161-empty-icon svg { width: 38px; height: 38px; }
body.nf-tools-clean-v161 .nf161-empty strong {
  display: block;
  color: var(--nf-t-ink);
  font-size: 1rem;
}
body.nf-tools-clean-v161 .nf161-empty span {
  display: block;
  max-width: 330px;
  margin: 7px auto 0;
  color: var(--nf-t-muted);
  font-size: .79rem;
  line-height: 1.55;
}
body.nf-tools-clean-v161 .nf161-panel-result.has-result .nf161-empty { display: none; }

body.nf-tools-clean-v161 .nf-result {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.nf-tools-clean-v161 .nf-result[hidden] { display: none !important; }
body.nf-tools-clean-v161 .nf-result-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 11px !important;
}
body.nf-tools-clean-v161 .nf-result-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0;
  min-height: 118px !important;
  padding: 15px !important;
  border: 1px solid #dbe4e9 !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 7px 18px rgba(15,42,62,.035) !important;
}
body.nf-tools-clean-v161 .nf-result-card.nf-result-primary {
  border-color: color-mix(in srgb, var(--nf161-tool-color) 32%, #dbe4e9) !important;
  background: linear-gradient(145deg, var(--nf161-tool-soft), #fff) !important;
}
body.nf-tools-clean-v161 .nf-result-card span {
  color: #627582 !important;
  font-size: .75rem !important;
  font-weight: 760 !important;
  line-height: 1.35;
}
body.nf-tools-clean-v161 .nf-result-card strong {
  display: block !important;
  overflow-wrap: anywhere;
  margin: 7px 0 5px !important;
  color: var(--nf-t-ink) !important;
  font-size: clamp(1.05rem, 2vw, 1.42rem) !important;
  line-height: 1.22 !important;
  letter-spacing: -.015em;
}
body.nf-tools-clean-v161 .nf-result-card small {
  display: block !important;
  margin-top: auto !important;
  color: #758690 !important;
  font-size: .69rem !important;
  line-height: 1.42 !important;
}
body.nf-tools-clean-v161 .nf-progress { height: 7px; margin-top: auto; border-radius: 999px; background:#e4ece8; overflow:hidden; }
body.nf-tools-clean-v161 .nf-progress i { display:block; height:100%; border-radius:inherit; background:var(--nf161-tool-color); }

body.nf-tools-clean-v161 .nf-result-status {
  margin: 12px 0 0 !important;
  padding: 13px 14px !important;
  border: 1px solid #ccdae2 !important;
  border-radius: 12px !important;
  background: #eff5f8 !important;
  color: #315569 !important;
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.55;
}
body.nf-tools-clean-v161 .nf-result-status.is-good { border-color:#bfddcb!important; background:#edf8f2!important; color:#1e623d!important; }
body.nf-tools-clean-v161 .nf-result-status.is-warning { border-color:#e8d49e!important; background:#fff8e8!important; color:#745500!important; }
body.nf-tools-clean-v161 .nf-result-status.is-danger { border-color:#e7bcbc!important; background:#fff3f3!important; color:#8d3030!important; }
body.nf-tools-clean-v161 .nf-result-status.is-info { border-color:#c7d9e5!important; background:#eff6fa!important; color:#28566f!important; }

body.nf-tools-clean-v161 .nf-advice-list {
  display: grid !important;
  gap: 8px !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.nf-tools-clean-v161 .nf-advice-list li {
  position: relative;
  margin: 0 !important;
  padding: 10px 12px 10px 34px !important;
  border: 1px solid #dce5ea !important;
  border-radius: 11px !important;
  background: #fff !important;
  color: #506673 !important;
  font-size: .75rem;
  line-height: 1.5;
}
body.nf-tools-clean-v161 .nf-advice-list li::before {
  content: "✓";
  position: absolute;
  left: 12px;
  top: 10px;
  color: var(--nf161-tool-color);
  font-weight: 900;
}

body.nf-tools-clean-v161 .nf-result-footer {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 14px 0 0 !important;
  padding: 14px 0 0 !important;
  border-top: 1px solid var(--nf-t-line) !important;
}
body.nf-tools-clean-v161 .nf-result-footer small {
  color: #687b87 !important;
  font-size: .71rem !important;
  line-height: 1.55 !important;
}
body.nf-tools-clean-v161 .nf-copy-button {
  flex: 0 0 auto;
  min-height: 36px;
  margin: 0 !important;
  padding: 7px 10px !important;
  border: 1px solid #cbd8df !important;
  border-radius: 9px !important;
  background: #fff !important;
  color: #345264 !important;
  font-size: .7rem !important;
  font-weight: 800 !important;
  cursor: pointer;
}
body.nf-tools-clean-v161 .nf-copy-button:hover { background: #f2f6f8 !important; }

body.nf-tools-clean-v161 .nf-table-wrap {
  margin-top: 13px !important;
  overflow: auto !important;
  border: 1px solid #dbe4e9 !important;
  border-radius: 13px !important;
  background: #fff !important;
}
body.nf-tools-clean-v161 .nf-amortization-table {
  width: 100% !important;
  min-width: 650px !important;
  border-collapse: collapse !important;
}
body.nf-tools-clean-v161 .nf-amortization-table caption {
  padding: 12px 13px !important;
  background: var(--nf161-tool-soft) !important;
  color: var(--nf-t-ink) !important;
  font-size: .79rem;
  font-weight: 850;
  text-align: left;
}
body.nf-tools-clean-v161 .nf-amortization-table th,
body.nf-tools-clean-v161 .nf-amortization-table td {
  padding: 9px 11px !important;
  border-top: 1px solid #e6ecef !important;
  color: #405968 !important;
  font-size: .73rem !important;
  text-align: right !important;
  white-space: nowrap;
}
body.nf-tools-clean-v161 .nf-amortization-table th { background: #f8fafb !important; font-weight: 850; }
body.nf-tools-clean-v161 .nf-amortization-table th:first-child,
body.nf-tools-clean-v161 .nf-amortization-table td:first-child { text-align:center!important; }

/* Health score special block */
body.nf-tools-clean-v161 .nf-health-score-wrap {
  display: grid !important;
  grid-template-columns: auto minmax(0,1fr);
  gap: 17px !important;
  align-items: center;
  margin-bottom: 12px !important;
  padding: 15px !important;
  border: 1px solid #dbe4e9;
  border-radius: 14px;
  background: #fff;
}
body.nf-tools-clean-v161 .nf-health-score {
  display: grid;
  place-items: center;
  width: 92px;
  height: 92px;
  border: 9px solid var(--nf161-tool-soft);
  border-radius: 50%;
  color: var(--nf161-tool-color);
}
body.nf-tools-clean-v161 .nf-health-score strong { grid-area:1/1; font-size:1.65rem; line-height:1; }
body.nf-tools-clean-v161 .nf-health-score span { grid-area:2/1; font-size:.66rem; color:#72838d; }
body.nf-tools-clean-v161 .nf-health-score-wrap h3 { margin:4px 0 5px; color:var(--nf-t-ink); font-size:1.15rem; }
body.nf-tools-clean-v161 .nf-health-score-wrap p { margin:0!important; color:var(--nf-t-muted); font-size:.78rem; line-height:1.5; }

/* Panel variants from UI Studio */
body.nf-tools-clean-v161.nf-tools-panel-outlined .nf-calculator { box-shadow:none!important; border-width:2px!important; }
body.nf-tools-clean-v161.nf-tools-panel-flat .nf-calculator { box-shadow:none!important; background:var(--nf-t-surface)!important; }
body.nf-tools-clean-v161.nf-tools-panel-flat .nf-tool-heading,
body.nf-tools-clean-v161.nf-tools-panel-flat .nf161-panel-input { background:transparent!important; }
body.nf-tools-clean-v161.nf-tools-density-compact .nf161-panel { padding:18px; }
body.nf-tools-clean-v161.nf-tools-density-compact .nf-calculator .nf-form-grid > p { padding:11px!important; }
body.nf-tools-clean-v161.nf-tools-density-compact .nf-tool-heading { padding-top:20px!important; padding-bottom:18px!important; }

/* Remove stale enhancement fragments if an old page cache still loads them. */
body.nf-tools-clean-v161 .nf-tool-ambient,
body.nf-tools-clean-v161 .nf-tool-steps,
body.nf-tools-clean-v161 .nf-tool-meta-bar,
body.nf-tools-clean-v161 .nf-tool-bottom-nav,
body.nf-tools-clean-v161 .nf-form-section-title,
body.nf-tools-clean-v161 .nf-result-section-title,
body.nf-tools-clean-v161 .nf-result-title-v15,
body.nf-tools-clean-v161 .nf-tools-livebar,
body.nf-tools-clean-v161 .nf-tools-sticky-select { display:none!important; }

/* Responsive */
@media (max-width: 1050px) {
  body.nf-tools-clean-v161 .nf161-workspace,
  body.nf-tools-clean-v161.nf-tools-layout-wide .nf161-workspace { grid-template-columns: 1fr; }
  body.nf-tools-clean-v161 .nf161-panel-input { border-right:0; border-bottom:1px solid var(--nf-t-line); }
  body.nf-tools-clean-v161 .nf161-empty { min-height:220px; }
}

@media (max-width: 820px) {
  body.nf-tools-clean-v161 .nf-tools-navigation-head { grid-template-columns:1fr; gap:12px; }
  body.nf-tools-clean-v161 .nf-tools-count { justify-self:start; }
  body.nf-tools-clean-v161 .nf161-directory-controls { grid-template-columns:1fr; }
  body.nf-tools-clean-v161 .nf161-filters { justify-content:flex-start; }
  body.nf-tools-clean-v161 .nf-tools-links { grid-template-columns:1fr; }
}

@media (max-width: 680px) {
  body.nf-tools-clean-v161 .nf-tools-navigation { padding:20px; border-radius:20px; }
  body.nf-tools-clean-v161 .nf161-directory-controls { padding:10px; }
  body.nf-tools-clean-v161 .nf161-filters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.nf-tools-clean-v161 .nf161-filters button { width:100%; }
  body.nf-tools-clean-v161 .nf-tools-links a { grid-template-columns:44px minmax(0,1fr) auto; min-height:82px; padding:14px; }
  body.nf-tools-clean-v161 .nf-tools-links a > span:first-child { width:44px; height:44px; }
  body.nf-tools-clean-v161 .nf-tool-heading { grid-template-columns:1fr; padding:20px 18px!important; }
  body.nf-tools-clean-v161 .nf-tool-heading::after { left:18px; right:18px; }
  body.nf-tools-clean-v161 .nf-tool-number { position:absolute; right:17px; top:17px; min-width:38px!important; width:38px!important; height:38px!important; border-radius:11px!important; }
  body.nf-tools-clean-v161 .nf-tool-heading > div { padding-right:44px; }
  body.nf-tools-clean-v161 .nf161-trust-row { padding:12px 18px; }
  body.nf-tools-clean-v161 .nf161-panel { padding:18px; }
  body.nf-tools-clean-v161 .nf-calculator .nf-form-grid { grid-template-columns:1fr!important; }
  body.nf-tools-clean-v161 .nf-tool-actions { grid-template-columns:1fr 1fr!important; }
  body.nf-tools-clean-v161 .nf-tool-actions .nf-button:first-child { grid-column:1/-1; }
  body.nf-tools-clean-v161 .nf-result-grid { grid-template-columns:1fr!important; }
  body.nf-tools-clean-v161 .nf-result-card { min-height:0!important; }
  body.nf-tools-clean-v161 .nf-result-footer { display:grid!important; grid-template-columns:1fr 1fr; }
  body.nf-tools-clean-v161 .nf-result-footer small { grid-column:1/-1; }
  body.nf-tools-clean-v161 .nf-copy-button { width:100%; }
  body.nf-tools-clean-v161 .nf161-empty { min-height:170px; padding:20px; }
}

@media (max-width: 430px) {
  body.nf-tools-clean-v161 .nf161-filters { grid-template-columns:1fr; }
  body.nf-tools-clean-v161 .nf-tool-actions { grid-template-columns:1fr!important; }
  body.nf-tools-clean-v161 .nf-tool-actions .nf-button:first-child { grid-column:auto; }
  body.nf-tools-clean-v161 .nf-health-score-wrap { grid-template-columns:1fr; text-align:center; }
  body.nf-tools-clean-v161 .nf-health-score { margin:auto; }
}

@media (prefers-reduced-motion: reduce) {
  body.nf-tools-clean-v161 *,
  body.nf-tools-clean-v161 *::before,
  body.nf-tools-clean-v161 *::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; }
}

@media print {
  body.nf-tools-clean-v161 .nf-tools-navigation,
  body.nf-tools-clean-v161 .nf161-panel-input,
  body.nf-tools-clean-v161 .nf161-trust-row { display:none!important; }
  body.nf-tools-clean-v161 .nf-calculator { box-shadow:none!important; break-inside:avoid; }
  body.nf-tools-clean-v161 .nf161-workspace { display:block; }
  body.nf-tools-clean-v161 .nf161-panel-result { padding:0!important; }
  body.nf-tools-clean-v161 .nf-result[hidden] { display:block!important; }
}

/* Final normalization for elements also styled by the base plugin stylesheet. */
body.nf-tools-clean-v161 .nf-calculator::before { display:none!important; }
body.nf-tools-clean-v161 .nf-result > div { gap:initial; justify-content:initial; }
body.nf-tools-clean-v161 .nf-table-wrap { display:block!important; }
body.nf-tools-clean-v161 .nf-score-breakdown {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  margin:12px 0 0!important;
}
body.nf-tools-clean-v161 .nf-score-breakdown > div {
  padding:11px!important;
  border:1px solid #dce5ea!important;
  border-radius:11px!important;
  background:#fff!important;
}
body.nf-tools-clean-v161 .nf-score-breakdown span {
  display:flex!important;
  justify-content:space-between!important;
  gap:8px!important;
  color:#667985!important;
  font-size:.71rem!important;
}
body.nf-tools-clean-v161 .nf-score-breakdown b { color:var(--nf-t-ink)!important; }
body.nf-tools-clean-v161 .nf-score-breakdown i {
  display:block!important;
  height:6px!important;
  margin-top:8px!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:#e6ecef!important;
}
body.nf-tools-clean-v161 .nf-score-breakdown em {
  display:block!important;
  height:100%!important;
  border-radius:inherit!important;
  background:var(--nf161-tool-color)!important;
}
@media(max-width:680px){body.nf-tools-clean-v161 .nf-score-breakdown{grid-template-columns:1fr!important}}
