.mp-updated { text-align: center; color: var(--kn-muted); font-size: .85rem; margin: 1.1rem 0 0; }
.mp-updated i { opacity: .7; margin-inline-end: .35rem; }

.mp-feat-list { list-style: none; max-width: 720px; margin: 1.4rem 0 0; padding: 0; }
.mp-feat-list li { position: relative; padding-inline-start: 1.9rem; margin-bottom: .85rem; color: var(--kn-text); font-size: 1rem; line-height: 1.5; }
.mp-feat-list li::before { content: "\f00c"; font-family: "Font Awesome 6 Free"; font-weight: 900; position: absolute; inset-inline-start: 0; top: .1rem; color: var(--kn-green, #0e9f6e); font-size: .85rem; }

.mp-price-anchor { text-align: center; margin: 2rem auto 0; max-width: 640px; color: var(--kn-muted); font-size: .95rem; }
.mp-price-anchor i { margin-inline-end: .4rem; color: var(--kn-blue, #2563eb); }

.mp-faq { max-width: 780px; margin: 0 auto; }
.mp-faq-item { border: 1px solid var(--kn-border); border-radius: 12px; background: var(--kn-surface, #fff); padding: 0 1.25rem; margin-bottom: .8rem; }
.mp-faq-item summary { cursor: pointer; list-style: none; padding: 1.1rem 0; font-weight: 600; color: var(--kn-title); display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.mp-faq-item summary::-webkit-details-marker { display: none; }
.mp-faq-item summary::after { content: "\f078"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: .75rem; color: var(--kn-muted); transition: transform .2s ease; flex: 0 0 auto; }
.mp-faq-item[open] summary::after { transform: rotate(180deg); }
.mp-faq-a { padding: 0 0 1.15rem; color: var(--kn-muted); line-height: 1.6; }
.mp-faq-a p { margin: 0; }

.mp-card { text-decoration: none; display: flex; flex-direction: column; transition: transform .18s ease, box-shadow .18s ease; }
.mp-card:hover { transform: translateY(-3px); box-shadow: var(--kn-shadow-lg); }
.mp-card h3 { color: var(--kn-title); }
.mp-card p { color: var(--kn-muted); }
.mp-card-link { margin-top: auto; padding-top: .9rem; color: var(--kn-blue, #2563eb); font-weight: 600; font-size: .9rem; }
.mp-card-link i { margin-inline-start: .25rem; }

body.dark-mode .mp-faq-item { background: var(--kn-d-surface, #1e293b); border-color: var(--kn-d-border, #334155); }
body.dark-mode .mp-faq-item summary { color: var(--kn-d-title, #f1f5f9); }
body.dark-mode .mp-faq-a { color: var(--kn-d-muted, #94a3b8); }
body.dark-mode .mp-feat-list li { color: var(--kn-d-text, #cbd5e1); }
body.dark-mode .mp-card h3 { color: var(--kn-d-title, #f1f5f9); }
body.dark-mode .mp-card p { color: var(--kn-d-muted, #94a3b8); }

.mp-verified { text-align: center; color: var(--kn-muted); font-size: .85rem; margin: .5rem auto 0; max-width: 640px; }
.mp-verified i { color: var(--kn-green, #0e9f6e); margin-inline-end: .35rem; }

.mp-prose { max-width: 780px; margin: 0 auto; }
.mp-prose p { color: var(--kn-text); line-height: 1.7; margin: 0 0 1rem; }
.mp-prose .kn-h2 { margin-top: 1.8rem; }
.mp-prose .kn-h2:first-child { margin-top: 0; }

.mp-card-tag { align-self: flex-start; font-size: .72rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--kn-blue, #2563eb); background: rgba(37,99,235,.09); border-radius: 999px; padding: .2rem .6rem; margin-bottom: .7rem; }

.mp-rank { list-style: none; counter-reset: rank; max-width: 820px; margin: 0 auto; padding: 0; display: flex; flex-direction: column; gap: 1rem; }
.mp-rank-item { border: 1px solid var(--kn-border); border-radius: 14px; background: var(--kn-surface, #fff); padding: 1.3rem 1.5rem; }
.mp-rank-item--kn { border-color: var(--kn-blue, #2563eb); box-shadow: 0 0 0 1px var(--kn-blue, #2563eb); }
.mp-rank-head { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
.mp-rank-head h3 { margin: 0; color: var(--kn-title); font-size: 1.15rem; flex: 1 1 auto; }
.mp-rank-num { flex: 0 0 auto; width: 2rem; height: 2rem; border-radius: 50%; background: var(--kn-blue, #2563eb); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; font-size: .95rem; }
.mp-rank-badge { display: inline-block; font-size: .68rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #fff; background: var(--kn-blue, #2563eb); border-radius: 999px; padding: .15rem .55rem; vertical-align: middle; margin-inline-start: .3rem; }
.mp-rank-price { flex: 0 0 auto; font-weight: 700; color: var(--kn-title); font-size: .95rem; }
.mp-rank-bestfor { color: var(--kn-muted); font-size: .9rem; margin: .7rem 0 .4rem; }
.mp-rank-item p { color: var(--kn-text); line-height: 1.6; margin: 0; }
.mp-rank-item p.mp-rank-bestfor + p { margin-top: 0; }

.mp-cmp-wrap { overflow-x: auto; max-width: 900px; margin: 0 auto; border: 1px solid var(--kn-border); border-radius: 14px; }
.mp-cmp-table, .mp-tiers { width: 100%; border-collapse: collapse; min-width: 560px; font-size: .95rem; }
.mp-cmp-table th, .mp-cmp-table td, .mp-tiers th, .mp-tiers td { text-align: start; padding: .85rem 1rem; border-bottom: 1px solid var(--kn-border); vertical-align: top; color: var(--kn-text); line-height: 1.5; }
.mp-cmp-table thead th, .mp-tiers thead th { background: var(--kn-surface-alt, #f8fafc); color: var(--kn-title); font-weight: 700; position: sticky; top: 0; }
.mp-cmp-table thead th:nth-child(2) { color: var(--kn-blue, #2563eb); }
.mp-cmp-table tbody th[scope="row"] { font-weight: 600; color: var(--kn-title); }
.mp-cmp-table td:nth-child(2) { font-weight: 600; }
.mp-cmp-table tr:last-child th, .mp-cmp-table tr:last-child td, .mp-tiers tr:last-child td { border-bottom: 0; }
.mp-tiers tbody td:first-child { font-weight: 600; color: var(--kn-title); }
.mp-note { max-width: 900px; margin: 1rem auto 0; color: var(--kn-muted); font-size: .85rem; line-height: 1.6; }

.mp-verdict { list-style: none; max-width: 780px; margin: 0 auto; padding: 0; }
.mp-verdict li { position: relative; padding-inline-start: 1.9rem; margin-bottom: 1rem; color: var(--kn-text); line-height: 1.6; }
.mp-verdict li::before { content: "\f058"; font-family: "Font Awesome 6 Free"; font-weight: 900; position: absolute; inset-inline-start: 0; top: .15rem; color: var(--kn-blue, #2563eb); }
.mp-verdict li strong { color: var(--kn-title); }

.mp-when-wins .mp-prose { border-inline-start: 3px solid var(--kn-border); padding-inline-start: 1.4rem; }
.mp-when-wins .kn-h2 i { color: var(--kn-blue, #2563eb); margin-inline-end: .4rem; }

body.dark-mode .mp-prose p { color: var(--kn-d-text, #cbd5e1); }
body.dark-mode .mp-prose .kn-h2 { color: var(--kn-d-title, #f1f5f9); }
body.dark-mode .mp-rank-item { background: var(--kn-d-surface, #1e293b); border-color: var(--kn-d-border, #334155); }
body.dark-mode .mp-rank-item p, body.dark-mode .mp-cmp-table th, body.dark-mode .mp-cmp-table td, body.dark-mode .mp-tiers th, body.dark-mode .mp-tiers td { color: var(--kn-d-text, #cbd5e1); }
body.dark-mode .mp-rank-head h3, body.dark-mode .mp-rank-price, body.dark-mode .mp-cmp-table tbody th[scope="row"], body.dark-mode .mp-tiers tbody td:first-child, body.dark-mode .mp-verdict li strong { color: var(--kn-d-title, #f1f5f9); }
body.dark-mode .mp-rank-bestfor, body.dark-mode .mp-note, body.dark-mode .mp-verified { color: var(--kn-d-muted, #94a3b8); }
body.dark-mode .mp-cmp-wrap { border-color: var(--kn-d-border, #334155); }
body.dark-mode .mp-cmp-table th, body.dark-mode .mp-cmp-table td, body.dark-mode .mp-tiers th, body.dark-mode .mp-tiers td { border-color: var(--kn-d-border, #334155); }
body.dark-mode .mp-cmp-table thead th, body.dark-mode .mp-tiers thead th { background: var(--kn-d-surface-alt, #0f172a); color: var(--kn-d-title, #f1f5f9); }
body.dark-mode .mp-verdict li { color: var(--kn-d-text, #cbd5e1); }
body.dark-mode .mp-when-wins .mp-prose { border-color: var(--kn-d-border, #334155); }
body.dark-mode .mp-card-tag { background: rgba(37,99,235,.18); }

.kn-btn-ghost { background: transparent; color: var(--kn-title); border: 1px solid var(--kn-border); }
.kn-btn-ghost:hover { border-color: var(--kn-blue, #2563eb); color: var(--kn-blue, #2563eb); }
body.dark-mode .kn-btn-ghost { color: var(--kn-d-title, #f1f5f9); border-color: var(--kn-d-border, #334155); }

.kn-hero--tight { padding-top: 2.4rem; padding-bottom: 1rem; }

.tool-calc { max-width: 760px; margin: 0 auto; border: 1px solid var(--kn-border); border-radius: 16px; background: var(--kn-surface, #fff); padding: 1.8rem; box-shadow: var(--kn-shadow-sm); }
.tool-calc-grid { display: grid; grid-template-columns: 1fr auto; gap: 1.4rem; align-items: start; }
.tool-calc-field { margin-bottom: 1.4rem; }
.tool-calc-field:last-of-type { margin-bottom: 0; }
.tool-calc-field label, .tool-calc-lbl { display: block; font-weight: 600; color: var(--kn-title); margin-bottom: .5rem; }
.tool-calc-field label span { font-weight: 600; }
.tool-calc-share-val { color: var(--kn-blue, #2563eb); margin-inline-start: .4rem; }
.tool-calc-money { display: flex; align-items: center; border: 1px solid var(--kn-border); border-radius: 10px; overflow: hidden; max-width: 260px; }
.tool-calc-sym { padding: 0 .7rem; color: var(--kn-muted); font-weight: 600; background: var(--kn-surface-alt, #f8fafc); align-self: stretch; display: flex; align-items: center; }
.tool-calc-money input { border: 0; outline: 0; padding: .7rem .8rem; font-size: 1.05rem; width: 100%; background: transparent; color: var(--kn-title); }
.tool-calc-hint { color: var(--kn-muted); font-size: .85rem; margin: .5rem 0 0; line-height: 1.5; max-width: 560px; }
.tool-calc-toggle { display: inline-flex; border: 1px solid var(--kn-border); border-radius: 10px; overflow: hidden; }
.tool-calc-cur { background: transparent; border: 0; padding: .6rem .9rem; font: inherit; font-weight: 600; color: var(--kn-muted); cursor: pointer; }
.tool-calc-cur.is-active { background: var(--kn-blue, #2563eb); color: #fff; }
.tool-calc input[type=range] { width: 100%; accent-color: var(--kn-blue, #2563eb); }
.tool-calc-results { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-top: 1.6rem; }
.tool-calc-result { border: 1px solid var(--kn-border); border-radius: 12px; padding: 1.1rem 1.2rem; background: var(--kn-surface-alt, #f8fafc); }
.tool-calc-result--big { border-color: var(--kn-blue, #2563eb); box-shadow: 0 0 0 1px var(--kn-blue, #2563eb); background: rgba(37,99,235,.06); }
.tool-calc-result-label { display: block; color: var(--kn-muted); font-size: .85rem; margin-bottom: .3rem; }
.tool-calc-result-value { font-size: 1.7rem; font-weight: 800; color: var(--kn-title); }
.tool-calc-result--big .tool-calc-result-value { color: var(--kn-blue, #2563eb); }
.tool-calc-disclaimer { color: var(--kn-muted); font-size: .85rem; line-height: 1.6; margin: 1.2rem 0 0; }
.tool-calc-cta { margin-top: 1.4rem; }

body.dark-mode .tool-calc { background: var(--kn-d-surface, #1e293b); border-color: var(--kn-d-border, #334155); }
body.dark-mode .tool-calc-field label, body.dark-mode .tool-calc-lbl, body.dark-mode .tool-calc-money input, body.dark-mode .tool-calc-result-value { color: var(--kn-d-title, #f1f5f9); }
body.dark-mode .tool-calc-hint, body.dark-mode .tool-calc-result-label, body.dark-mode .tool-calc-disclaimer, body.dark-mode .tool-calc-sym { color: var(--kn-d-muted, #94a3b8); }
body.dark-mode .tool-calc-money, body.dark-mode .tool-calc-toggle, body.dark-mode .tool-calc-result { border-color: var(--kn-d-border, #334155); }
body.dark-mode .tool-calc-sym, body.dark-mode .tool-calc-result { background: var(--kn-d-surface-alt, #0f172a); }
body.dark-mode .tool-calc-result--big { background: rgba(37,99,235,.14); }

.tool-neg-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem; }
.tool-neg-card { display: flex; flex-direction: column; text-decoration: none; border: 1px solid var(--kn-border); border-radius: 14px; background: var(--kn-surface, #fff); padding: 1.2rem 1.3rem; transition: transform .18s ease, box-shadow .18s ease; }
.tool-neg-card:hover { transform: translateY(-3px); box-shadow: var(--kn-shadow-lg); }
.tool-neg-card-head { display: flex; align-items: baseline; justify-content: space-between; gap: .6rem; }
.tool-neg-card-head h3 { margin: 0; color: var(--kn-title); font-size: 1.05rem; }
.tool-neg-count { flex: 0 0 auto; font-size: .78rem; font-weight: 700; color: var(--kn-blue, #2563eb); background: rgba(37,99,235,.09); border-radius: 999px; padding: .15rem .55rem; white-space: nowrap; }
.tool-neg-card p { color: var(--kn-muted); font-size: .9rem; line-height: 1.5; margin: .6rem 0 0; }
.tool-neg-card .mp-card-link { margin-top: auto; padding-top: .9rem; }
.tool-neg-back { max-width: var(--kn-maxw); margin: 0 auto .4rem; }
.tool-neg-back a { color: var(--kn-muted); text-decoration: none; font-size: .9rem; font-weight: 600; }
.tool-neg-back a:hover { color: var(--kn-blue, #2563eb); }
.tool-neg-meta { color: var(--kn-muted); font-size: .9rem; margin: .4rem 0 0; }
.tool-neg-actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.2rem; }
.tool-neg-terms { list-style: none; margin: 0 auto; padding: 0; max-width: 900px; columns: 200px; column-gap: 1.6rem; }
.tool-neg-terms li { break-inside: avoid; padding: .3rem 0; color: var(--kn-text); font-size: .92rem; border-bottom: 1px solid var(--kn-border); }
#neg-copy.is-copied { background: var(--kn-green, #0e9f6e); border-color: var(--kn-green, #0e9f6e); }

body.dark-mode .tool-neg-card { background: var(--kn-d-surface, #1e293b); border-color: var(--kn-d-border, #334155); }
body.dark-mode .tool-neg-card-head h3 { color: var(--kn-d-title, #f1f5f9); }
body.dark-mode .tool-neg-card p, body.dark-mode .tool-neg-back a, body.dark-mode .tool-neg-meta { color: var(--kn-d-muted, #94a3b8); }
body.dark-mode .tool-neg-terms li { color: var(--kn-d-text, #cbd5e1); border-color: var(--kn-d-border, #334155); }
body.dark-mode .tool-neg-count { background: rgba(37,99,235,.18); }

.tool-ngram { max-width: 960px; margin: 0 auto; }
.tool-ngram-sell { text-align: center; color: var(--kn-green, #0e9f6e); font-weight: 600; font-size: .95rem; margin: 1rem auto 0; }
.tool-ngram-sell i { margin-inline-end: .35rem; }
.tool-ngram-input label { display: block; font-weight: 600; color: var(--kn-title); margin-bottom: .5rem; }
.tool-ngram-input textarea { width: 100%; border: 1px solid var(--kn-border); border-radius: 12px; padding: .9rem 1rem; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .88rem; line-height: 1.5; resize: vertical; background: var(--kn-surface, #fff); color: var(--kn-title); }
.tool-ngram-controls { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1rem; }
.tool-ngram-file { position: relative; overflow: hidden; cursor: pointer; }
.tool-ngram-err { color: var(--kn-red, #dc2626); font-size: .9rem; margin: .9rem 0 0; }
.tool-ngram-map { margin-top: 1.6rem; border: 1px solid var(--kn-border); border-radius: 12px; padding: 1.2rem 1.3rem; background: var(--kn-surface-alt, #f8fafc); }
.tool-ngram-map h3 { margin: 0 0 .3rem; color: var(--kn-title); font-size: 1.05rem; }
.tool-ngram-hint { color: var(--kn-muted); font-size: .85rem; margin: 0 0 1rem; }
.tool-ngram-map-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: .8rem 1rem; }
.tool-ngram-map-grid label { display: flex; flex-direction: column; gap: .3rem; font-size: .82rem; font-weight: 600; color: var(--kn-muted); }
.tool-ngram-map-grid select { border: 1px solid var(--kn-border); border-radius: 8px; padding: .5rem .6rem; font: inherit; font-size: .9rem; background: var(--kn-surface, #fff); color: var(--kn-title); }
.tool-ngram-results { margin-top: 1.8rem; }
.tool-ngram-resbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.tool-ngram-tabs { display: inline-flex; border: 1px solid var(--kn-border); border-radius: 10px; overflow: hidden; }
.tool-ngram-tab { background: transparent; border: 0; padding: .55rem 1rem; font: inherit; font-weight: 600; color: var(--kn-muted); cursor: pointer; }
.tool-ngram-tab.is-active { background: var(--kn-blue, #2563eb); color: #fff; }
.tool-ngram-count { color: var(--kn-muted); font-size: .85rem; margin: 0; }
.tool-ngram-tablewrap { overflow-x: auto; border: 1px solid var(--kn-border); border-radius: 14px; }
.tool-ngram-table { width: 100%; border-collapse: collapse; min-width: 560px; font-size: .92rem; }
.tool-ngram-table th, .tool-ngram-table td { text-align: start; padding: .7rem .9rem; border-bottom: 1px solid var(--kn-border); color: var(--kn-text); white-space: nowrap; }
.tool-ngram-table th { background: var(--kn-surface-alt, #f8fafc); color: var(--kn-title); font-weight: 700; cursor: pointer; user-select: none; position: sticky; top: 0; }
.tool-ngram-table th::after { content: ""; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: .7rem; margin-inline-start: .4rem; opacity: .55; }
.tool-ngram-table th.is-sorted-asc::after { content: "\f0de"; }
.tool-ngram-table th.is-sorted-desc::after { content: "\f0dd"; }
.tool-ngram-table td:not(.tool-ngram-gram) { font-variant-numeric: tabular-nums; }
.tool-ngram-gram { font-weight: 600; color: var(--kn-title); white-space: normal; }
.tool-ngram-cost { font-weight: 600; }
.tool-ngram-table tr.tool-ngram-zero td { background: rgba(220,38,38,.045); }
.tool-ngram-table tr:last-child td { border-bottom: 0; }
.tool-ngram-empty { text-align: center; color: var(--kn-muted); padding: 1.4rem 0; }
.tool-ngram-privacy { text-align: center; color: var(--kn-muted); font-size: .85rem; margin: 1.4rem 0 0; }
.tool-ngram-privacy i { color: var(--kn-green, #0e9f6e); margin-inline-end: .35rem; }

body.dark-mode .tool-ngram-input label { color: var(--kn-d-title, #f1f5f9); }
body.dark-mode .tool-ngram-input textarea, body.dark-mode .tool-ngram-map-grid select { background: var(--kn-d-surface, #1e293b); border-color: var(--kn-d-border, #334155); color: var(--kn-d-title, #f1f5f9); }
body.dark-mode .tool-ngram-map { background: var(--kn-d-surface, #1e293b); border-color: var(--kn-d-border, #334155); }
body.dark-mode .tool-ngram-map h3 { color: var(--kn-d-title, #f1f5f9); }
body.dark-mode .tool-ngram-hint, body.dark-mode .tool-ngram-count, body.dark-mode .tool-ngram-empty, body.dark-mode .tool-ngram-privacy, body.dark-mode .tool-ngram-map-grid label { color: var(--kn-d-muted, #94a3b8); }
body.dark-mode .tool-ngram-tabs, body.dark-mode .tool-ngram-tablewrap { border-color: var(--kn-d-border, #334155); }
body.dark-mode .tool-ngram-table th, body.dark-mode .tool-ngram-table td { border-color: var(--kn-d-border, #334155); color: var(--kn-d-text, #cbd5e1); }
body.dark-mode .tool-ngram-table th, body.dark-mode .tool-ngram-gram, body.dark-mode .tool-ngram-cost { color: var(--kn-d-title, #f1f5f9); }
body.dark-mode .tool-ngram-table th { background: var(--kn-d-surface-alt, #0f172a); }
body.dark-mode .tool-ngram-table tr.tool-ngram-zero td { background: rgba(220,38,38,.12); }

@media (max-width: 640px) {
  .tool-calc-grid { grid-template-columns: 1fr; }
  .tool-calc-results { grid-template-columns: 1fr; }
}
