/* Generated by scripts/build-msn-tool-css.py; edit the source styles. */
/* Source: assets/css/english-tools-msn-local.css */
/*
 * Owner review: English tool pages on localhost only.
 * The server's exact local-host + English-tool gate adds .kbt-msn-local.
 * No ad requests or tool algorithms are introduced by this stylesheet.
 */
html.kbt-msn-local {
    --msn-font: "Segoe UI", "Segoe UI Midlevel", "Segoe WP", Arial, sans-serif;
    --msn-bg: #242424;
    --msn-card: #303030;
    --msn-raised: #3b3b3b;
    --msn-ink: #f5f5f5;
    --msn-muted: #c8c8c8;
    --msn-line: #484848;
    --msn-link: #86b9ff;
    --msn-hover: #414141;
    --msn-width: 1240px;
    --msn-radius: 8px;
    background: var(--msn-bg);
    color-scheme: dark;
    scroll-padding-top: 24px;
}

html.kbt-msn-local[data-kbt-msn-theme="light"] {
    --msn-bg: #f4f4f4;
    --msn-card: #ffffff;
    --msn-raised: #e9e9e9;
    --msn-ink: #242424;
    --msn-muted: #595959;
    --msn-line: #dedede;
    --msn-link: #005fb8;
    --msn-hover: #e5e5e5;
    color-scheme: light;
}

html.kbt-msn-local body,
html.kbt-msn-local .landing-main {
    --landing-bg: var(--msn-bg);
    --landing-surface: var(--msn-card);
    --landing-ink: var(--msn-ink);
    --landing-text: var(--msn-ink);
    --landing-muted: var(--msn-muted);
    --landing-border: var(--msn-line);
    --landing-accent: var(--msn-link);
    --landing-accent-hover: var(--msn-link);
    --landing-radius: var(--msn-radius);
    --bg-color: var(--msn-bg);
    --surface: var(--msn-card);
    --card-bg: var(--msn-card);
    --card-border: var(--msn-line);
    --card-radius: var(--msn-radius);
    --border: var(--msn-line);
    --border-color: var(--msn-line);
    --text-color: var(--msn-ink);
    --heading-color: var(--msn-ink);
    --text-secondary: var(--msn-muted);
    --text-muted: var(--msn-muted);
    --link-color: var(--msn-link);
    --font-primary: var(--msn-font);
    background: var(--msn-bg) !important;
    color: var(--msn-ink);
    font-family: var(--msn-font) !important;
    font-size: 16px;
    line-height: 1.5;
}

html.kbt-msn-local body { margin: 0; padding-top: 0 !important; }
html.kbt-msn-local .landing-main { contain: none; min-height: 0; }
html.kbt-msn-local :is(.site-header, .home-category-band, .tool-category-strip) { display: none !important; }
html.kbt-msn-local .msn-local-skip { position: fixed; top: -80px; left: 16px; z-index: 10010; padding: 10px 16px; border-radius: 6px; background: var(--msn-card); color: var(--msn-ink); font: 600 14px/20px var(--msn-font); }
html.kbt-msn-local .msn-local-skip:focus { top: 12px; }
html.kbt-msn-local :is(.msn-local-header, .msn-local-nav, .msn-local-shortcuts) [hidden] { display: none !important; }

/* Familiar MSN header: identity, a broad search pill, quiet utility actions. */
html.kbt-msn-local .msn-local-header {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(272px, 1fr) minmax(240px, 800px) minmax(120px, 1fr);
    align-items: center;
    gap: 24px;
    width: 100%;
    padding: 8px 28px;
    min-height: 64px;
    color: var(--msn-ink);
    background: var(--msn-bg);
    font-family: var(--msn-font);
}
html.kbt-msn-local .msn-local-brand {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    width: fit-content;
    color: var(--msn-ink);
    font-size: 24px;
    line-height: 1.15;
    font-weight: 600;
    letter-spacing: -0.6px;
    white-space: nowrap;
    text-decoration: none;
}
html.kbt-msn-local .msn-local-brand :is(svg, img) { width: 36px; height: 36px; object-fit: contain; flex: 0 0 auto; }
html.kbt-msn-local .msn-local-brand small { font-size: inherit; color: var(--msn-link); }
html.kbt-msn-local .msn-local-brand-icon { display: inline-flex; color: #66baff; }
html.kbt-msn-local .msn-local-brand-dot { color: var(--msn-link); }
html.kbt-msn-local .msn-local-brand:is(:hover, :focus-visible) .msn-local-brand-wordmark { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
html.kbt-msn-local .msn-local-search { width: 100%; min-width: 0; }
html.kbt-msn-local button.msn-local-search {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    min-height: 46px;
    margin: 0;
    padding: 0 20px;
    background: #ffffff;
    border: 1px solid #d6d6d6;
    border-radius: 28px;
    color: #646464;
    font: 400 16px/22px var(--msn-font);
    text-align: left;
    cursor: pointer;
}
html.kbt-msn-local .msn-local-search svg { width: 20px; height: 20px; flex: 0 0 auto; }
html.kbt-msn-local .msn-local-search kbd { margin-left: auto; color: #777777; background: #f2f2f2; border: 1px solid #e1e1e1; border-radius: 4px; padding: 1px 5px; font: 12px/20px var(--msn-font); }
/* Homepage search stays in the masthead, with an attached MSN-style suggestion list. */
html.kbt-msn-local .msn-local-inline-search { position: relative; box-sizing: border-box; display: flex; align-items: center; gap: 16px; min-height: 46px; padding: 0 20px; border: 1px solid #d6d6d6; border-radius: 28px; background: #fff; color: #646464; color-scheme: light; cursor: text; }
html.kbt-msn-local .msn-local-inline-search:focus-within { outline: 2px solid #86b9ff; outline-offset: 2px; }
html.kbt-msn-local .msn-local-inline-search.is-expanded { border-radius: 24px 24px 0 0; }
html.kbt-msn-local .msn-local-inline-search input { box-sizing: border-box; flex: 1; width: 100%; min-width: 0; height: 44px; margin: 0; padding: 0; border: 0; border-radius: 0; outline: 0; box-shadow: none; background: transparent; color: #242424; font: 400 16px/22px var(--msn-font); }
html.kbt-msn-local .msn-local-inline-search input::placeholder { color: #646464; opacity: 1; }
html.kbt-msn-local .msn-local-inline-search input::-webkit-search-cancel-button { -webkit-appearance: none; }
html.kbt-msn-local .msn-local-inline-search .msn-local-search-clear { flex: 0 0 28px; display: grid; place-items: center; width: 28px; height: 28px; min-height: 28px; margin: 0 -8px 0 0; padding: 0; border: 0; border-radius: 50%; background: transparent; color: #646464; font: 400 24px/28px var(--msn-font); cursor: pointer; }
html.kbt-msn-local .msn-local-inline-search .msn-local-search-clear:hover { background: #ededed; }
html.kbt-msn-local .msn-local-search-results { position: absolute; z-index: 2; box-sizing: border-box; top: 100%; left: -1px; right: -1px; max-height: min(450px, calc(100dvh - 180px)); padding: 8px 0; overflow-y: auto; overscroll-behavior: contain; border: 1px solid #d6d6d6; border-top: 1px solid #ededed; border-radius: 0 0 24px 24px; background: #fff; color: #242424; box-shadow: 0 12px 22px rgba(0,0,0,.2); cursor: default; }
html.kbt-msn-local .msn-local-search-group { padding: 6px 20px; color: #666; font: 400 11px/16px var(--msn-font); text-transform: uppercase; }
html.kbt-msn-local .msn-local-search-result { display: block; padding: 8px 20px; color: #242424; text-decoration: none; font: 400 16px/22px var(--msn-font); overflow-wrap: anywhere; }
html.kbt-msn-local .msn-local-search-result:hover, html.kbt-msn-local .msn-local-search-result[aria-selected="true"] { background: #f0f4fa; }
html.kbt-msn-local .msn-local-search-result strong { display: block; color: #005fb8; font: 600 16px/22px var(--msn-font); }
html.kbt-msn-local .msn-local-search-result small { display: block; margin-top: 2px; color: #595959; font: 400 13px/18px var(--msn-font); }
html.kbt-msn-local .msn-local-search-empty { margin: 0; padding: 12px 20px; font: 400 14px/22px var(--msn-font); }
html.kbt-msn-local .msn-local-search-status { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
html.kbt-msn-local .msn-local-actions { display: flex; justify-content: flex-end; align-items: center; gap: 10px; }
html.kbt-msn-local .msn-local-actions :is(button, a) { display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 36px; min-width: 36px; padding: 6px; border: 0; border-radius: 6px; color: var(--msn-ink); background: transparent; text-decoration: none; font: 14px/20px var(--msn-font); cursor: pointer; }
html.kbt-msn-local .msn-local-actions :is(button, a):hover { background: var(--msn-hover); }
html.kbt-msn-local .msn-local-actions svg { width: 21px; height: 21px; }
html.kbt-msn-local .msn-local-language { position: relative; z-index: 3; }
html.kbt-msn-local .msn-local-language summary { box-sizing: border-box; display: flex; align-items: center; justify-content: center; gap: 4px; min-height: 36px; padding: 6px; border-radius: 6px; color: var(--msn-ink); font: 400 14px/20px var(--msn-font); cursor: pointer; list-style: none; }
html.kbt-msn-local .msn-local-language summary::-webkit-details-marker { display: none; }
html.kbt-msn-local .msn-local-language summary:hover, html.kbt-msn-local .msn-local-language[open] summary { background: var(--msn-hover); }
html.kbt-msn-local .msn-local-language summary:focus-visible { outline: 2px solid var(--msn-link); outline-offset: 3px; }
html.kbt-msn-local .msn-local-language summary svg { width: 12px; height: 12px; }
html.kbt-msn-local .msn-local-language[open] summary svg { transform: rotate(180deg); }
html.kbt-msn-local .msn-local-language-options { position: absolute; top: calc(100% + 8px); right: 0; box-sizing: border-box; width: 230px; max-width: calc(100vw - 32px); max-height: min(450px, calc(100dvh - 100px)); overflow-y: auto; overscroll-behavior: contain; padding: 8px; border: 1px solid var(--msn-line); border-radius: 10px; background: var(--msn-card); color: var(--msn-ink); box-shadow: 0 12px 28px rgba(0,0,0,.25); }
html.kbt-msn-local .msn-local-language-title { display: block; padding: 6px 10px 8px; color: var(--msn-muted); font: 400 12px/18px var(--msn-font); }
html.kbt-msn-local .msn-local-language-options a { display: flex; justify-content: flex-start; gap: 10px; padding: 8px 10px; min-height: 36px; font: 400 14px/20px var(--msn-font); }
html.kbt-msn-local .msn-local-language-options a[aria-current="page"] { color: var(--msn-link); background: var(--msn-hover); }
html.kbt-msn-local .msn-local-language-options img { flex: 0 0 20px; width: 20px; height: 15px; object-fit: cover; border-radius: 2px; }
html.kbt-msn-local .msn-local-language-current { margin-left: auto; }

/* The homepage masthead sticks; categories and the ad stay in ordinary flow. */
html.kbt-msn-local .msn-local-header--home { position: sticky; top: 0; z-index: 1000; transition: transform .22s ease, box-shadow .2s ease; }
html.kbt-msn-local .msn-local-header--home.scrolled { box-shadow: 0 2px 8px rgba(0, 0, 0, .18); }
html.kbt-msn-local .msn-local-header--home.msn-local-header--tool-hidden { transform: translateY(calc(-100% - 1px)); box-shadow: none; pointer-events: none; visibility: hidden; }
/* Keep the button measurable for shared ad-clearance/docking calculations. */
html.kbt-msn-local:has(.msn-local-header--home):not([data-kbt-msn-after-tool]) #back-to-top { visibility: hidden; opacity: 0; pointer-events: none; }

/* Shortcuts retain real KBT destinations, rather than unrelated portal links. */
html.kbt-msn-local .msn-local-shortcuts { display: flex; align-items: start; justify-content: center; gap: 24px; width: min(100% - 32px, 880px); margin: 8px auto 18px; padding: 0 0 2px; }
html.kbt-msn-local .msn-local-shortcut { display: flex; flex-direction: column; align-items: center; gap: 5px; flex: 0 0 76px; min-width: 0; color: var(--msn-ink); font: 600 12px/16px var(--msn-font); text-decoration: none; text-align: center; }
html.kbt-msn-local .msn-local-shortcut-icon { display: grid; place-items: center; box-sizing: border-box; width: 42px; height: 42px; padding: 9px; border-radius: 12px; background: var(--msn-raised); color: var(--shortcut-color, #80c8ff); transition: background .15s ease; }
html.kbt-msn-local .msn-local-shortcut-icon :is(svg, img) { display: block; width: 25px; height: 25px; object-fit: contain; }
html.kbt-msn-local[data-kbt-msn-theme="light"] .msn-local-shortcut-icon { color: var(--msn-link); }
html.kbt-msn-local .msn-local-shortcut:hover .msn-local-shortcut-icon { background: var(--msn-hover); }
html.kbt-msn-local .msn-local-shortcuts[data-msn-tool-categories] .msn-local-shortcut { --shortcut-visible-color: color-mix(in srgb, var(--shortcut-color) 72%, white); }
html.kbt-msn-local[data-kbt-msn-theme="light"] .msn-local-shortcuts[data-msn-tool-categories] .msn-local-shortcut { --shortcut-visible-color: var(--shortcut-color); }
html.kbt-msn-local .msn-local-shortcuts[data-msn-tool-categories] .msn-local-shortcut-icon { color: #80c8ff; transition: color .15s ease, background .15s ease; }
html.kbt-msn-local[data-kbt-msn-theme="light"] .msn-local-shortcuts[data-msn-tool-categories] .msn-local-shortcut-icon { color: var(--msn-link); }
html.kbt-msn-local .msn-local-shortcuts[data-msn-tool-categories] .msn-local-shortcut:is(:hover, :focus-visible),
html.kbt-msn-local .msn-local-shortcuts[data-msn-tool-categories] .msn-local-shortcut:is(:hover, :focus-visible) .msn-local-shortcut-icon { color: var(--shortcut-visible-color); }
html.kbt-msn-local .msn-local-shortcuts[data-msn-tool-categories] .msn-local-shortcut:focus-visible { outline: none; text-decoration: underline; text-underline-offset: 3px; }

/* An inert reservation for the owner's local layout review. */
html.kbt-msn-local .msn-local-ad { width: min(100% - 32px, 970px); margin: 0 auto 22px; font-family: var(--msn-font); }
html.kbt-msn-local .msn-local-ad-slot { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; box-sizing: border-box; width: 970px; max-width: 100%; height: 250px; overflow: hidden; border: 1px solid var(--msn-line); background: linear-gradient(120deg, var(--msn-card), var(--msn-bg)); color: var(--msn-muted); }
html.kbt-msn-local .msn-local-ad-slot > :is(strong, b) { color: var(--msn-muted); font: 400 20px/26px var(--msn-font); }
html.kbt-msn-local .msn-local-ad-slot > :is(span, small, p) { margin: 0; font: 400 12px/18px var(--msn-font); }
html.kbt-msn-local .msn-local-ad-size { color: var(--msn-muted); font: 400 12px/18px var(--msn-font); }

html.kbt-msn-local .msn-local-nav { display: flex; align-items: center; gap: 6px; box-sizing: border-box; width: min(100% - 32px, var(--msn-width)); margin: 0 auto 12px; padding: 0; }
html.kbt-msn-local .msn-local-nav :is(a, button) { display: inline-flex; align-items: center; gap: 6px; flex: 0 0 auto; min-height: 36px; padding: 7px 13px; border: 1px solid transparent; border-radius: 12px; background: transparent; color: var(--msn-ink); font: 400 14px/20px var(--msn-font); text-decoration: none; cursor: pointer; }
html.kbt-msn-local .msn-local-nav :is(a, button):hover { background: var(--msn-hover); }
html.kbt-msn-local .msn-local-nav :is([aria-current="page"], [aria-current="true"], [aria-selected="true"], .is-active) { background: var(--msn-raised); border-color: var(--msn-line); color: var(--msn-link); font-weight: 600; }
html.kbt-msn-local .msn-local-nav .msn-local-nav-end { margin-left: auto; border-color: var(--msn-muted); border-radius: 20px; font-weight: 400; }
html.kbt-msn-local .msn-local-nav .msn-local-nav-guide { margin-left: auto; border-color: var(--msn-muted); border-radius: 20px; font-weight: 400; }

/* Keep each existing H1 and lead; remove the tall photo/CTA hero treatment. */
html.kbt-msn-local .landing-main .landing-hero { box-sizing: border-box; width: min(100% - 32px, var(--msn-width)); min-height: 0 !important; margin: 0 auto 12px; padding: 18px 22px !important; border: 0 !important; border-radius: var(--msn-radius); overflow: visible; background: var(--msn-card) !important; }
html.kbt-msn-local body .landing-main .landing-hero :is(.home-banner, .home-banner-content, .home-banner-copy, .landing-hero-grid, .hero-copy) { position: static !important; display: block !important; width: 100% !important; max-width: none !important; min-height: 0 !important; height: auto !important; margin: 0 !important; padding: 0 !important; transform: none !important; background: transparent !important; border: 0 !important; box-shadow: none !important; }
html.kbt-msn-local body .landing-main .landing-hero::after,
html.kbt-msn-local body .landing-main .landing-hero .home-banner::before,
html.kbt-msn-local body .landing-main .landing-hero .home-banner::after { content: none !important; }
html.kbt-msn-local body .landing-main .landing-hero :is(.home-banner-media, .hero-visual, .hero-actions, .hero-kicker, .hero-badges, .hero-languages, .hero-metrics, .home-hero-store-button, .hero-store-slot, .kbt-ad-slot, .kbt-gam-ad, .home-banner-ad, .hero-stack) { display: none !important; }
html.kbt-msn-local body .landing-main .landing-hero .hero-title,
html.kbt-msn-local body .landing-main .landing-hero .home-banner-copy h1.hero-title,
html.kbt-msn-local body .landing-main .landing-hero h1.hero-title { max-width: none !important; margin: 0 0 6px !important; color: var(--msn-ink) !important; font: 600 24px/32px var(--msn-font) !important; letter-spacing: 0 !important; text-shadow: none !important; }
html.kbt-msn-local body .landing-main .landing-hero .hero-title-line { display: inline !important; white-space: normal !important; color: inherit !important; }
html.kbt-msn-local body .landing-main .landing-hero .hero-lede { width: auto !important; max-width: 960px !important; margin: 0 !important; color: var(--msn-muted) !important; font: 400 16px/24px var(--msn-font) !important; text-shadow: none !important; }
html.kbt-msn-local body .landing-main .landing-hero .home-banner-copy { color: var(--msn-ink) !important; }
html.kbt-msn-local body :is(.landing-hero, .at-language-panel) .kbt-visible-breadcrumb { color: var(--msn-muted) !important; font: 400 12px/18px var(--msn-font); }
html.kbt-msn-local body :is(.landing-hero, .at-language-panel) .kbt-visible-breadcrumb a { color: var(--msn-link) !important; }
html.kbt-msn-local body :is(.landing-hero, .at-language-panel) :is(.kbt-visible-breadcrumb__current, .kbt-visible-breadcrumb__separator) { color: var(--msn-muted) !important; }

/* One homepage introduction/ad band, rendered in place with the original H1. */
html.kbt-msn-local .msn-local-hero-row { display: grid; grid-template-columns: minmax(0, 1fr); align-items: center; gap: 16px; box-sizing: border-box; width: min(100% - 32px, 1440px); margin: 0 auto 20px; }
/* A full-width photo strip followed by the original title and description. */
html.kbt-msn-local .landing-main .msn-local-hero-row > .home-hero { grid-column: 1; grid-row: 1; display: block !important; align-self: stretch; width: 100%; min-width: 0; margin: 0; padding: 0 !important; overflow: hidden !important; }
html.kbt-msn-local body .landing-main .msn-local-hero-row .home-hero .home-banner-media { position: static !important; inset: auto !important; display: block !important; width: 100% !important; max-width: none !important; height: 120px !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; overflow: hidden; border-radius: 0; transform: none !important; }
html.kbt-msn-local body .landing-main .msn-local-hero-row .home-hero .home-banner-media img { position: static !important; display: block; width: 100% !important; max-width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center !important; filter: none !important; transform: none !important; opacity: 1 !important; }
html.kbt-msn-local body .landing-main .msn-local-hero-row .home-hero .home-banner-content { box-sizing: border-box; padding: 18px 22px !important; }
html.kbt-msn-local .msn-local-hero-row > .msn-local-ad { grid-column: 1; grid-row: 2; width: 728px; max-width: 100%; margin: 0 auto; }
html.kbt-msn-local .msn-local-hero-row .msn-local-ad-slot { width: 728px; max-width: 100%; height: 90px; }
@media (min-width: 1051px) {
    /* Match the feed's five columns: the ad spans three, the introduction two. */
    html.kbt-msn-local .msn-local-hero-row { grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: stretch; gap: 12px; }
    html.kbt-msn-local .msn-local-hero-row > .msn-local-ad { grid-column: 1 / span 3; grid-row: 1; width: 100%; min-width: 0; }
    html.kbt-msn-local .msn-local-hero-row .msn-local-ad-slot { width: 100%; height: 100%; min-height: 250px; border-radius: var(--msn-radius); }
    html.kbt-msn-local .landing-main .msn-local-hero-row > .home-hero { grid-column: 4 / span 2; grid-row: 1; }
}
@media (max-width: 600px) {
    html.kbt-msn-local .msn-local-hero-row > .msn-local-ad, html.kbt-msn-local .msn-local-hero-row .msn-local-ad-slot { width: 320px; }
    html.kbt-msn-local .msn-local-hero-row .msn-local-ad-slot { height: 100px; }
    html.kbt-msn-local body .landing-main .msn-local-hero-row .home-hero .home-banner-media { height: 110px !important; }
    html.kbt-msn-local body .landing-main .msn-local-hero-row .home-hero .home-banner-content { padding: 16px !important; }
}

/* The functional tool keeps its own geometry, colors and fullscreen logic. */
html.kbt-msn-local .landing-main .tool-stage { box-sizing: border-box; width: min(100% - 32px, var(--msn-width)); min-height: 0 !important; margin: 0 auto 20px; padding: 0 !important; border: 0; background: transparent !important; }
html.kbt-msn-local .landing-main .tool-stage .tool-shell { box-sizing: border-box; width: 100% !important; max-width: 100% !important; min-height: 0 !important; margin: 0 auto !important; padding: 20px !important; border: 1px solid var(--msn-line) !important; border-radius: var(--msn-radius) !important; background: var(--msn-card) !important; box-shadow: none !important; }
html.kbt-msn-local .landing-main #keyboard-stage .tool-shell,
html.kbt-msn-local .landing-main #mouse-test-tool .tool-shell { padding: 0 !important; border: 0 !important; background: transparent !important; }
/* Match the outer edges of the homepage title and advertisement band. */
html.kbt-msn-local .landing-main .msn-local-hero-row ~ #keyboard-stage { width: min(100% - 32px, 1440px); max-width: none; }
html.kbt-msn-local .landing-main .msn-local-hero-row ~ #keyboard-stage :is(.keyboard-container, #keyboard-controls, .feature-controls) { width: 100%; max-width: none; }

/* Compact homepage controls, using the same neutral surfaces as the cards. */
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls { --control-height: 88px; min-height: 0; padding: 8px; gap: 10px; border-color: var(--msn-line); border-radius: var(--msn-radius); background: var(--msn-card); color: var(--msn-ink); box-shadow: none; }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls .textarea-wrapper { height: var(--control-height); border-color: var(--msn-line); border-radius: 4px; background: var(--msn-bg); }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls .textarea-label { display: none; }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls .text-box { height: 100%; min-height: 0; padding: 10px 12px; background: var(--msn-bg); color: var(--msn-ink); }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls .text-box:focus { background: var(--msn-bg); box-shadow: inset 0 0 0 2px var(--msn-link); }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls .text-box::placeholder { color: var(--msn-muted); }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls :is(.select-wrapper, .reset-button) { border-color: var(--msn-line); border-radius: 4px; background: var(--msn-bg); color: var(--msn-ink); box-shadow: none; }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls .select-wrapper { padding: 3px 8px; gap: 2px; }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls .select-wrapper label { color: var(--msn-muted); }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls .select-wrapper select { min-height: 20px; color: var(--msn-ink); }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls .select-wrapper option { background: var(--msn-bg); color: var(--msn-ink); }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls .reset-button:hover { border-color: var(--msn-muted); background: var(--msn-hover); color: var(--msn-ink); }
html.kbt-msn-local .msn-local-hero-row ~ #keyboard-stage #keyboard-controls .advanced-toggle-btn { border-radius: 4px; }

/* Advanced diagnostics follow the page theme independently of the keycap theme. */
html.kbt-msn-local body.home-redesign #keyboard-stage :is(#feature-controls, .stats-panel) {
    --bg-primary: var(--msn-bg);
    --bg-secondary: var(--msn-card);
    --bg-tertiary: var(--msn-raised);
    --key-text: var(--msn-ink);
    --key-border: var(--msn-line);
    --text-primary: var(--msn-ink);
    --text-secondary: var(--msn-muted);
    --text-muted: var(--msn-muted);
    --border-subtle: var(--msn-line);
    --accent-primary: var(--msn-link);
    --accent-success: #64d996;
    --accent-warning: #ffd166;
    --accent-danger: #ff8a8a;
    --glow-color: transparent;
    color: var(--msn-ink);
    font-family: var(--msn-font);
    border-color: var(--msn-line);
    border-radius: var(--msn-radius);
    background: var(--msn-card);
    box-shadow: none;
}
html.kbt-msn-local[data-kbt-msn-theme="light"] body.home-redesign #keyboard-stage :is(#feature-controls, .stats-panel) {
    --accent-success: #167044;
    --accent-warning: #8a5700;
    --accent-danger: #b42318;
}
html.kbt-msn-local body.home-redesign #keyboard-stage #feature-controls .feature-button { border-color: var(--msn-line); background: var(--msn-bg); color: var(--msn-ink); }
html.kbt-msn-local body.home-redesign #keyboard-stage #feature-controls .feature-button:hover { border-color: var(--msn-muted); background: var(--msn-hover); color: var(--msn-ink); }
html.kbt-msn-local body.home-redesign #keyboard-stage #feature-controls .feature-button.active { border-color: #0067b8; background: #0067b8; color: #fff; }
html.kbt-msn-local body.home-redesign #keyboard-stage .stats-panel :is(.status-indicator, .status-indicator span) { color: var(--msn-ink); }
html.kbt-msn-local body.home-redesign #keyboard-stage .stats-panel .info-text { color: var(--msn-muted); }
html.kbt-msn-local body.home-redesign #keyboard-stage .stats-panel .big-latency { background: none; background-clip: border-box; -webkit-background-clip: border-box; -webkit-text-fill-color: currentColor; color: var(--msn-link); }
html.kbt-msn-local body.home-redesign #keyboard-stage .stats-panel :is(.stat-item, .log-container, .rating-box, .action-btn, .close-btn) { border-radius: var(--msn-radius); }
html.kbt-msn-local body.home-redesign #keyboard-stage .stats-panel .info-box { background: var(--msn-raised); }
html.kbt-msn-local body.home-redesign #keyboard-stage .stats-panel .action-btn.primary { border-color: #0067b8; background: #0067b8; color: #fff; box-shadow: none; }
html.kbt-msn-local body.home-redesign #keyboard-stage :is(#feature-controls, .stats-panel) :is(button, summary):focus-visible { outline: 2px solid var(--msn-link); outline-offset: 3px; }
html.kbt-msn-local body.home-redesign #keyboard-stage #adv-pro-panel {
    --pn-bg: var(--msn-card);
    --pn-bg-card: var(--msn-bg);
    --pn-bg-elev: var(--msn-raised);
    --pn-border: var(--msn-line);
    --pn-border-2: var(--msn-muted);
    --pn-text: var(--msn-ink);
    --pn-text-2: var(--msn-muted);
    --pn-text-3: var(--msn-muted);
    --pn-accent: var(--msn-link);
    --pn-accent-2: var(--msn-link);
    --pn-accent-soft: var(--msn-raised);
    --pn-success: var(--accent-success);
    --pn-success-soft: rgba(62, 207, 142, .1);
    --pn-danger: var(--accent-danger);
    --pn-danger-soft: rgba(239, 68, 68, .1);
    --pn-r-lg: var(--msn-radius);
    --pn-r: var(--msn-radius);
    --pn-r-sm: 4px;
    --pn-shadow: none;
    --pn-shadow-lg: none;
}
html.kbt-msn-local body.home-redesign #keyboard-stage #adv-pro-panel .adv-preset-active { background: #0067b8; color: #fff; }

/* One existing inline ad, with the genuine usage and rating widgets beside it. */
html.kbt-msn-local #keyboard-stage .msn-local-ad-trust-row { order: 16; display: grid; grid-template-columns: minmax(0, 1fr); align-items: center; gap: 16px; width: 100%; margin: 12px 0 0; }
html.kbt-msn-local #keyboard-stage .msn-local-ad-trust-row > .kbt-keyboard-inline-surface { order: 0; width: min(970px, 100%); margin: 0 auto; }
html.kbt-msn-local #keyboard-stage .msn-local-trust { box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-width: 0; min-height: 90px; padding: 10px 8px; border: 1px solid var(--msn-line); border-radius: var(--msn-radius); background: var(--msn-card); color: var(--msn-ink); }
html.kbt-msn-local #keyboard-stage .msn-local-trust :is(.kbt-usage-row, .kbt-rating-row) { width: 100%; margin: 0 !important; padding: 0 !important; }
html.kbt-msn-local #keyboard-stage .msn-local-trust .kbt-usage { white-space: nowrap; }
html.kbt-msn-local #keyboard-stage .msn-local-trust .kbt-rating { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; border: 0; background: transparent; color: var(--msn-ink); font: 500 13px/20px var(--msn-font); white-space: nowrap; }
html.kbt-msn-local #keyboard-stage .msn-local-trust .kbt-rating-label { flex: 0 0 auto; }
html.kbt-msn-local #keyboard-stage .msn-local-trust .kbt-rating-star { font-size: 20px; padding: 0; }
html.kbt-msn-local #keyboard-stage .msn-local-trust .kbt-rating-meta { gap: 4px; }
html.kbt-msn-local #keyboard-stage .msn-local-trust .kbt-rating-avg { font-size: 13px; }
html.kbt-msn-local #keyboard-stage .msn-local-trust .kbt-rating-count { font-size: 12px; }
html.kbt-msn-local body.home-redesign #keyboard-stage .msn-local-trust .kbt-rating-prompt { display: none; }
html.kbt-msn-local #keyboard-stage .msn-local-trust :is(.kbt-rating-prompt, .kbt-rating-thanks) { flex-basis: 100%; white-space: normal; }
html.kbt-msn-local #keyboard-stage .msn-local-trust .msn-local-rating-feedback-link { display: inline-block; margin-inline-start: 4px; color: var(--msn-link); text-decoration: underline; text-underline-offset: 2px; white-space: nowrap; }
html.kbt-msn-local #keyboard-stage .msn-local-trust .msn-local-rating-feedback-link:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; border-radius: 2px; }
html.kbt-msn-local #keyboard-stage .msn-local-trust :is(.kbt-rating-label, .kbt-rating-avg, .kbt-rating-prompt, .kbt-usage b) { color: var(--msn-ink); }
html.kbt-msn-local #keyboard-stage .msn-local-trust :is(.kbt-rating-count, .kbt-usage) { color: var(--msn-muted); }
@media (min-width: 1281px) {
    html.kbt-msn-local #keyboard-stage .msn-local-ad-trust-row { grid-template-columns: 970px minmax(0, 1fr); gap: 24px; }
    html.kbt-msn-local #keyboard-stage .msn-local-ad-trust-row > .kbt-keyboard-inline-surface { margin: 0; }
}

html.kbt-msn-local .tool-template-inline-head { display: none !important; }
html.kbt-msn-local .tool-stage-header { margin: 0 0 12px; padding: 16px 20px; background: var(--msn-card); border-radius: var(--msn-radius); }
html.kbt-msn-local .tool-stage-header :is(h2, p) { margin: 0; }
html.kbt-msn-local .tool-stage-header h2 { color: var(--msn-ink); font: 600 20px/26px var(--msn-font); }
html.kbt-msn-local .msn-local-tool-panel { border-radius: var(--msn-radius) !important; box-shadow: none !important; }

/* Retheme the mouse tester's panel variables without touching its canvas. */
html.kbt-msn-local #mouse-tester-app { --mt-surface: var(--msn-card); --mt-bg: var(--msn-bg); --mt-text: var(--msn-ink); --mt-muted: var(--msn-muted); --mt-border: var(--msn-line); }
html.kbt-msn-local :is(.mt-intro, .mt-card) { border-radius: var(--msn-radius); box-shadow: none; }
html.kbt-msn-local .mt-layout { gap: 12px; }
html.kbt-msn-local .mt-intro h2 { font-size: 24px; line-height: 32px; }
html.kbt-msn-local .mt-card-head h3 { font-size: 20px; line-height: 26px; }

/* Cards below the tool borrow the compact MSN image/headline rhythm. */
html.kbt-msn-local :is(.tool-popular-tools, .related-tools, .homepage-latest-blog, .feature-band, .process-band, .trust-strip, .tools-list-section, .guidelines.landing-guide, .home-guideline-brief) { margin: 0; padding: 20px 16px !important; background: var(--msn-bg) !important; border: 0 !important; }
html.kbt-msn-local :is(.tool-popular-tools, .related-tools, .homepage-latest-blog, .feature-band, .process-band, .trust-strip, .tools-list-section) > .container { box-sizing: border-box; width: 100% !important; max-width: var(--msn-width) !important; margin: 0 auto; padding: 0 !important; }
html.kbt-msn-local :is(.tool-popular-tools-head, .homepage-latest-blog-head, .related-tools-header, .section-head) { margin: 0 0 14px; }
html.kbt-msn-local :is(.tool-popular-tools-head h2, .homepage-latest-blog-head h2, .related-tools-header h2, .section-head h2, .tools-list-section > .container > h2) { margin: 0; color: var(--msn-ink) !important; font: 600 24px/32px var(--msn-font) !important; }
html.kbt-msn-local :is(.tool-popular-tools-grid, .homepage-latest-blog-grid, .related-tools-grid, .landing-feature-grid, .process-grid, .tools-grid, .msn-local-grid) { gap: 12px !important; background: transparent !important; border: 0 !important; }
html.kbt-msn-local :is(.tool-popular-tools-grid, .homepage-latest-blog-grid, .related-tools-grid, .msn-local-grid) { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
html.kbt-msn-local :is(.tool-popular-card, .homepage-latest-blog-card, .related-tool-card, .landing-feature-card, .process-card, .trust-item, .tool-card, .help-card, .msn-local-card) { min-width: 0; overflow: hidden; border: 1px solid var(--msn-line) !important; border-radius: var(--msn-radius) !important; background: var(--msn-card) !important; color: var(--msn-ink); box-shadow: none !important; text-decoration: none; }
html.kbt-msn-local :is(.tool-popular-card, .homepage-latest-blog-card, .related-tool-card, .tool-card):hover { border-color: #777777 !important; background: var(--msn-raised) !important; transform: none !important; }
html.kbt-msn-local :is(.tool-popular-card-img, .homepage-latest-blog-img) { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 7px 7px 0 0; }
html.kbt-msn-local .tool-popular-card-body { padding: 14px 16px 16px; }
html.kbt-msn-local :is(.tool-popular-card h3, .homepage-latest-blog-card h3, .related-tool-card h3, .landing-feature-card h3, .process-card h3, .tool-card .tool-name, .help-card h3, .msn-local-card h3) { color: var(--msn-ink) !important; font: 600 20px/26px var(--msn-font) !important; letter-spacing: 0 !important; }
html.kbt-msn-local .tool-popular-card-body > strong { color: var(--msn-ink) !important; font: 600 20px/26px var(--msn-font) !important; letter-spacing: 0 !important; }
html.kbt-msn-local :is(.tool-popular-card-category, .homepage-latest-blog-date, .tool-card-category, .section-kicker) { color: var(--msn-muted) !important; font: 400 12px/18px var(--msn-font) !important; letter-spacing: 0 !important; text-transform: none !important; }
html.kbt-msn-local :is(.tool-popular-card-desc, .related-tool-card p, .landing-feature-card p, .process-body p, .trust-desc, .section-lede, .related-tools-intro) { color: var(--msn-muted) !important; font: 400 16px/24px var(--msn-font); }
html.kbt-msn-local :is(.tool-popular-card-cta, .homepage-latest-blog-cta, .related-tool-link, .tool-card-link, .tool-popular-tools-all) { color: var(--msn-link) !important; font: 600 14px/20px var(--msn-font); }
html.kbt-msn-local .tool-popular-card-cta { background: transparent !important; padding: 0 !important; border: 0 !important; }
html.kbt-msn-local .tool-popular-tools--home-carousel .tool-popular-tools-grid { display: grid !important; grid-auto-flow: row !important; grid-auto-columns: unset !important; overflow: visible !important; padding-bottom: 0 !important; }
html.kbt-msn-local .tool-popular-tools--home-carousel :is(.tool-popular-tools-scroll-button, .tool-popular-tools-help) { display: none !important; }
html.kbt-msn-local .msn-local-feature { grid-column: span 2; }

/* Reading cards: two balanced columns with comfortable line lengths. */
html.kbt-msn-local .home-guideline-layout { box-sizing: border-box; width: 100% !important; max-width: var(--msn-width) !important; margin: 0 auto; padding: 0; gap: 12px !important; }
html.kbt-msn-local :is(.home-guideline-copy, .home-faq-panel) { padding: 24px !important; border: 1px solid var(--msn-line) !important; border-radius: var(--msn-radius); background: var(--msn-card) !important; box-shadow: none !important; }
html.kbt-msn-local :is(.home-guideline-copy h2, .home-faq-panel h2) { color: var(--msn-ink) !important; font: 600 24px/32px var(--msn-font) !important; margin: 6px 0 16px; }
html.kbt-msn-local :is(.home-guideline-copy > p, .home-guideline-step small, .home-faq-list p, .home-faq-support span, .home-guideline-note, .help-accordion p) { color: var(--msn-muted) !important; font: 400 16px/25px var(--msn-font) !important; }
html.kbt-msn-local :is(.home-guideline-step strong, .home-faq-list summary, .home-faq-support strong) { color: var(--msn-ink) !important; font: 600 16px/24px var(--msn-font) !important; }
html.kbt-msn-local :is(.home-guideline-steps, .home-guideline-step, .home-faq-list, .home-faq-list details, .home-faq-support, .help-accordion details) { border-color: var(--msn-line) !important; }
html.kbt-msn-local :is(.home-faq-list details, .home-faq-list details[open], .home-faq-support, .home-guideline-note, .help-accordion details) { background: transparent !important; }
html.kbt-msn-local :is(.home-guideline-copy a, .home-faq-panel a, .home-guideline-step-number) { color: var(--msn-link) !important; }

/* A direct route from the local keyboard controls to the existing guide. */
html.kbt-msn-local body.home-redesign .msn-home-guide-jump { display: flex; justify-content: flex-end; box-sizing: border-box; width: min(100% - 32px, 1440px); margin: 8px auto 0; }
html.kbt-msn-local body.home-redesign .msn-home-guide-jump a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 8px 12px; border-radius: 6px; color: var(--msn-link); font: 600 14px/20px var(--msn-font); text-decoration: none; }
html.kbt-msn-local body.home-redesign .msn-home-guide-jump a:hover { background: var(--msn-hover); text-decoration: underline; text-underline-offset: 3px; }
html.kbt-msn-local body.home-redesign .msn-home-guide-jump a:focus-visible { outline: 2px solid var(--msn-link); outline-offset: 2px; }
html.kbt-msn-local body.home-redesign #guidelines { scroll-margin-top: 80px; }
html.kbt-msn-local body.home-redesign #guidelines:focus { outline: none; }
html.kbt-msn-local body.home-redesign .msn-home-guide-heading { max-width: var(--msn-width); margin: 0 auto 20px; }
html.kbt-msn-local body.home-redesign .msn-home-guide-heading h2 { margin: 0; color: var(--msn-ink); font: 600 28px/36px var(--msn-font); }
html.kbt-msn-local body.home-redesign #guidelines :is(.home-guideline-copy > p:not(.section-kicker), .home-guideline-step small, .home-faq-list p) { text-align: justify; text-align-last: start; hyphens: auto; }
@media (max-width: 800px) {
    html.kbt-msn-local body.home-redesign #guidelines { scroll-margin-top: 120px; }
}
html.kbt-msn-local .home-keyword-strip a { background: var(--msn-raised) !important; border-color: var(--msn-line) !important; border-radius: 6px; font: 400 14px/20px var(--msn-font); }
html.kbt-msn-local :is(.home-after-tool-banner, .home-before-footer-multiplex):empty { display: none; }
html.kbt-msn-local :is(.kbt-rating-row, .kbt-usage-row) { color: var(--msn-muted); }

/* Existing search dialog is shared with the functional top search button. */
html.kbt-msn-local .kbt-search__dialog { background: var(--msn-card) !important; border-color: var(--msn-line); color: var(--msn-ink); font-family: var(--msn-font); }
html.kbt-msn-local .kbt-search__field { background: var(--msn-card); border-color: var(--msn-line); }
html.kbt-msn-local .kbt-search__input { background: transparent !important; color: var(--msn-ink) !important; font-family: var(--msn-font); }
html.kbt-msn-local .kbt-search__input::placeholder { color: var(--msn-muted); }
html.kbt-msn-local .kbt-search__esc { background: var(--msn-raised); border-color: var(--msn-line); color: var(--msn-ink); }
html.kbt-msn-local :is(.site-footer, footer.site-footer) { background: var(--msn-bg) !important; border-top: 1px solid var(--msn-line); color: var(--msn-muted); }
html.kbt-msn-local :is(.msn-local-header, .msn-local-shortcuts, .msn-local-nav) :is(a, button):focus-visible { outline: 2px solid var(--msn-link); outline-offset: 3px; }

/* The English directory uses its existing filters, language links and card counts. */
html.kbt-msn-local body.all-tools-page main { background: var(--msn-bg) !important; color: var(--msn-ink); font-family: var(--msn-font); }
html.kbt-msn-local body.all-tools-page .at-wrap { width: min(100% - 32px, var(--msn-width)); max-width: var(--msn-width); padding: 0 0 44px !important; }
html.kbt-msn-local body.all-tools-page .at-hero { margin: 0 0 20px; padding: 0 !important; background: transparent !important; border: 0 !important; }
html.kbt-msn-local body.all-tools-page .at-language-panel { padding: 20px !important; gap: 20px; background: var(--msn-card) !important; border: 1px solid var(--msn-line) !important; border-radius: var(--msn-radius); box-shadow: none !important; }
html.kbt-msn-local body.all-tools-page :is(.at-title, .at-language-title, .at-cat-head h2, .at-sponsor h2) { color: var(--msn-ink) !important; font: 600 24px/32px var(--msn-font) !important; letter-spacing: 0 !important; }
html.kbt-msn-local body.all-tools-page :is(.at-sub, .at-language-copy > p:not(.at-language-eyebrow), .at-card-desc, .at-feature-card__copy, .at-sponsor p) { color: var(--msn-muted) !important; font: 400 16px/24px var(--msn-font) !important; }
html.kbt-msn-local body.all-tools-page :is(.at-language-eyebrow, .at-kicker, .at-feature-card__label, .at-sponsor__eyebrow) { color: var(--msn-link) !important; font: 400 12px/18px var(--msn-font) !important; letter-spacing: 0 !important; text-transform: none; }
html.kbt-msn-local body.all-tools-page .at-language-grid { gap: 8px; }
html.kbt-msn-local body.all-tools-page .at-language-link { background: var(--msn-raised) !important; border-color: var(--msn-line) !important; border-radius: 6px; color: var(--msn-ink) !important; }
html.kbt-msn-local body.all-tools-page .at-language-link:hover,
html.kbt-msn-local body.all-tools-page .at-language-link.is-current { background: var(--msn-hover) !important; border-color: var(--msn-link) !important; box-shadow: none !important; }
html.kbt-msn-local body.all-tools-page .at-language-native { color: var(--msn-ink) !important; font: 600 14px/20px var(--msn-font); }
html.kbt-msn-local body.all-tools-page .at-language-name { color: var(--msn-muted) !important; font: 400 12px/16px var(--msn-font); }
html.kbt-msn-local body.all-tools-page .at-language-current { background: #0067b8; color: #ffffff; font: 600 10px/14px var(--msn-font); }
html.kbt-msn-local body.all-tools-page .at-filter { gap: 8px; margin-bottom: 24px; background: transparent !important; border: 0 !important; }
html.kbt-msn-local body.all-tools-page .at-pill { min-height: 40px; padding: 7px 10px; border: 1px solid var(--msn-line) !important; border-radius: 8px; background: var(--msn-card) !important; color: var(--msn-ink) !important; font: 400 14px/20px var(--msn-font); }
html.kbt-msn-local body.all-tools-page .at-pill::before { content: none; }
html.kbt-msn-local body.all-tools-page .at-pill:hover,
html.kbt-msn-local body.all-tools-page .at-pill.is-active { background: var(--msn-raised) !important; border-color: var(--msn-link) !important; color: var(--msn-link) !important; }
html.kbt-msn-local body.all-tools-page .at-pill-count,
html.kbt-msn-local body.all-tools-page .at-pill.is-active .at-pill-count { color: inherit !important; background: transparent !important; font: 400 12px/18px var(--msn-font); }
html.kbt-msn-local body.all-tools-page .at-cat-head { padding-top: 0; border: 0; margin: 0 0 14px; }
html.kbt-msn-local body.all-tools-page .at-cat-count { background: var(--msn-raised) !important; color: var(--msn-muted) !important; border: 1px solid var(--msn-line) !important; border-radius: 6px; font: 400 12px/18px var(--msn-font); }
html.kbt-msn-local body.all-tools-page .at-grid { gap: 12px !important; }
html.kbt-msn-local body.all-tools-page :is(.at-card, .at-feature-card) { border: 1px solid var(--msn-line) !important; border-radius: var(--msn-radius); background: var(--msn-card) !important; color: var(--msn-ink) !important; box-shadow: none !important; }
html.kbt-msn-local body.all-tools-page :is(.at-card, .at-feature-card):hover { border-color: #777777 !important; background: var(--msn-raised) !important; box-shadow: none !important; }
html.kbt-msn-local body.all-tools-page :is(.at-card-title, .at-feature-card__title) { color: var(--msn-ink) !important; font: 600 20px/26px var(--msn-font) !important; letter-spacing: 0; white-space: normal; overflow: visible; text-overflow: clip; }
html.kbt-msn-local body.all-tools-page :is(.at-card-body, .at-feature-card__body) { padding: 16px !important; }
html.kbt-msn-local body.all-tools-page .at-card-media { border-color: var(--msn-line); background: var(--msn-raised); }
html.kbt-msn-local body.all-tools-page :is(.at-card-cta, .at-feature-card__cta),
html.kbt-msn-local body.all-tools-page :is(.at-card:hover .at-card-cta, .at-feature-card:hover .at-feature-card__cta) { min-height: 30px; padding: 4px 0; background: transparent !important; color: var(--msn-link) !important; font: 600 14px/20px var(--msn-font) !important; }
html.kbt-msn-local body.all-tools-page .at-sections-wrap > .at-section + .at-section { margin-top: 32px; }
html.kbt-msn-local body.all-tools-page .at-page-map { display: none !important; }
html.kbt-msn-local body.all-tools-page :is(.at-page-map__toggle, .at-page-map__panel) { background: var(--msn-card) !important; border-color: var(--msn-line); }
html.kbt-msn-local body.all-tools-page :is(.at-page-map__title, .at-page-map__item) { color: var(--msn-ink) !important; font-family: var(--msn-font); }
html.kbt-msn-local body.all-tools-page :is(.at-page-map__item:hover, .at-page-map__item.is-active) { color: var(--msn-link) !important; background: var(--msn-raised) !important; }
html.kbt-msn-local body.all-tools-page .at-page-map__count { color: var(--msn-muted) !important; }
html.kbt-msn-local body.all-tools-page :is(.at-sponsor, .at-guide-links, .at-guide-links a, .at-proof-strip span) { background: var(--msn-card) !important; color: var(--msn-ink) !important; border-color: var(--msn-line); border-radius: var(--msn-radius); box-shadow: none; }

@media (max-width: 1100px) {
    html.kbt-msn-local .msn-local-header { grid-template-columns: 220px minmax(200px, 1fr) auto; gap: 18px; padding-inline: 20px; }
    html.kbt-msn-local .msn-local-brand { font-size: 20px; }
    html.kbt-msn-local .msn-local-shortcuts { gap: 16px; }
}
@media (max-width: 1000px) {
    html.kbt-msn-local .msn-local-ad { width: min(100% - 32px, 728px); }
    html.kbt-msn-local .msn-local-ad-slot { width: 728px; height: 90px; gap: 2px; }
    html.kbt-msn-local .msn-local-ad-slot > :is(strong, b) { font-size: 16px; line-height: 22px; }
}
@media (max-width: 800px) {
    html.kbt-msn-local .msn-local-header { grid-template-columns: 1fr auto; gap: 6px 12px; padding: 6px 16px; }
    html.kbt-msn-local .msn-local-brand { gap: 7px; font-size: 18px; }
    html.kbt-msn-local .msn-local-brand :is(svg, img) { width: 34px; height: 34px; }
    html.kbt-msn-local .msn-local-search { grid-column: 1 / -1; grid-row: 2; }
    html.kbt-msn-local .msn-local-actions { grid-column: 2; grid-row: 1; }
    html.kbt-msn-local .msn-local-brand,
    html.kbt-msn-local .msn-local-actions > :is(button, a),
    html.kbt-msn-local .msn-local-language > summary { box-sizing: border-box; min-height: 44px; }
    html.kbt-msn-local .msn-local-shortcuts { justify-content: flex-start; overflow-x: auto; gap: 12px; padding: 2px 0 8px; margin-top: 8px; scrollbar-width: thin; }
    html.kbt-msn-local .msn-local-shortcut { flex-basis: 70px; }
    html.kbt-msn-local .msn-local-nav { overflow-x: auto; scrollbar-width: thin; padding-bottom: 4px; gap: 2px; }
    html.kbt-msn-local .msn-local-nav :is(a, button) { padding-inline: 11px; }
    html.kbt-msn-local .msn-local-nav .msn-local-nav-end { display: none; }
    html.kbt-msn-local .msn-local-nav .msn-local-nav-guide { display: none; }
    html.kbt-msn-local :is(.tool-popular-tools-grid, .homepage-latest-blog-grid, .related-tools-grid, .msn-local-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    html.kbt-msn-local .home-guideline-layout { grid-template-columns: minmax(0, 1fr) !important; }
    html.kbt-msn-local .msn-local-feature { grid-column: auto; }
}
@media (max-width: 600px) {
    html.kbt-msn-local .msn-local-header { column-gap: 8px; }
    html.kbt-msn-local .msn-local-actions { gap: 6px; }
    html.kbt-msn-local .msn-local-ad { width: 320px; max-width: calc(100% - 32px); margin-bottom: 14px; }
    html.kbt-msn-local .msn-local-ad-slot { width: 320px; height: 100px; }
    html.kbt-msn-local .msn-local-search kbd { display: none; }
    html.kbt-msn-local .landing-main .landing-hero { padding: 16px !important; }
    html.kbt-msn-local .landing-main .tool-stage .tool-shell { padding: 12px !important; }
    html.kbt-msn-local .landing-main #keyboard-stage .tool-shell,
    html.kbt-msn-local .landing-main #mouse-test-tool .tool-shell { padding: 0 !important; }
    html.kbt-msn-local :is(.tool-popular-tools-grid, .homepage-latest-blog-grid, .related-tools-grid, .msn-local-grid) { grid-template-columns: minmax(0, 1fr); }
    html.kbt-msn-local :is(.home-guideline-copy, .home-faq-panel) { padding: 20px !important; }
    html.kbt-msn-local .tool-stage-header { display: block; }

    /* Long API names and the controller comparison table keep access on phones. */
    html.kbt-msn-local .seo-article :is(p, li) code { overflow-wrap: anywhere; white-space: normal; }
    html.kbt-msn-local .seo-article .gp-guide-table { display: block; width: 100%; max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
}
@media (max-width: 400px) {
    /* Preserve the two-row masthead while leaving the full brand readable. */
    html.kbt-msn-local .msn-local-header { grid-template-columns: minmax(0, 1fr) auto auto; }
    html.kbt-msn-local .msn-local-brand { grid-column: 1 / span 2; grid-row: 1; }
    html.kbt-msn-local .msn-local-search { grid-column: 1; grid-row: 2; }
    html.kbt-msn-local .msn-local-inline-search .msn-local-search-results { right: auto; width: calc(100vw - 32px); }
    html.kbt-msn-local .msn-local-actions { display: contents; }
    html.kbt-msn-local .msn-local-actions > a:first-child { grid-column: 2; grid-row: 2; }
    html.kbt-msn-local .msn-local-actions > :is(.msn-local-language, a[aria-label="Choose language"]) { grid-column: 3; grid-row: 2; }
    html.kbt-msn-local .msn-local-actions > .msn-local-theme { grid-column: 3; grid-row: 1; }
}
@media (prefers-reduced-motion: reduce) {
    html.kbt-msn-local .msn-local-shortcut-icon { transition: none; }
    html.kbt-msn-local .msn-local-header--home { transition: none; }
}

/* Source: assets/css/english-ads-sponsored-local.css */
/* Labels for inert owner-review ad spaces only; provider creatives are untouched. */
html.kbt-msn-local body :is(
    .msn-local-ad-slot,
    .kbt-local-leaderboard-preview[data-kbt-local-ad-preview],
    .msn-feed-ad-banner,
    .msn-catalog-ad
),
html.kbt-msn-local body.blog-page .msn-blog-category-ad > .msn-blog-category-ad-slot {
    position: relative;
    overflow: visible;
}

html.kbt-msn-local body :is(
    .msn-local-ad-slot,
    .kbt-local-leaderboard-preview[data-kbt-local-ad-preview],
    .msn-feed-ad-banner,
    .msn-catalog-ad,
    .msn-blog-category-ad-slot
)::after {
    content: var(--msn-sponsored-label, "Sponsored");
    position: absolute;
    top: calc(100% + 3px);
    right: 0;
    display: block;
    margin: 0;
    padding: 0;
    border: 0;
    color: var(--msn-muted);
    background: transparent;
    font: 400 10px/14px var(--msn-font);
    letter-spacing: 0;
    text-align: right;
    text-decoration: none;
    text-transform: none;
    white-space: nowrap;
    pointer-events: none;
}

/* Other preview banners already have at least 20px of outer clearance. */
html.kbt-msn-local #keyboard-stage .msn-local-ad-trust-row {
    padding-bottom: 17px;
}

/* Source: assets/css/msn-local-contrast.css */
/* Foreground/background pairs for the gated local preview. Keep diagnostic
   canvases, color-test patches and generated media in their original colors. */
html.kbt-msn-local {
    --msn-action-bg: #86b9ff;
    --msn-action-ink: #142033;
    --msn-action-hover: #aad0ff;
}
html.kbt-msn-local[data-kbt-msn-theme="light"] {
    --msn-action-bg: #005fb8;
    --msn-action-ink: #fff;
    --msn-action-hover: #004a92;
}

/* Shared utility controls previously kept black text on the light theme's
   blue action button, and browser-default gray placeholders in dark fields. */
html.kbt-msn-tool-local .msn-tool-stage .kbt-tool-button.primary,
html.kbt-msn-tool-local .msn-tool-stage #start-button {
    background: var(--msn-action-bg);
    color: var(--msn-action-ink);
}
html.kbt-msn-tool-local .msn-tool-stage .kbt-tool-button.primary:hover,
html.kbt-msn-tool-local .msn-tool-stage #start-button:hover {
    background: var(--msn-action-hover);
    color: var(--msn-action-ink);
}
html.kbt-msn-tool-local .msn-tool-stage :is(.kbt-tool-input, .kbt-tool-textarea)::placeholder {
    color: var(--msn-muted);
    opacity: 1;
}
/* These authored Arabic QR fields stay navy in either page theme. */
html.kbt-msn-tool-local[lang="ar"] .msn-tool-stage :is(#qr-text, #qr-reader-output)::placeholder {
    color: #cbd5e1;
}

/* An image-wide gradient alone cannot protect a long caption over a bright
   photo. The caption itself has a dark backing, even on an all-white image. */
html.kbt-msn-local .msn-feed-card--featured .msn-feed-card-copy,
html.kbt-msn-local .msn-blog-card--lead .msn-blog-card-copy {
    background-color: rgba(0, 0, 0, .72);
}
@media (min-width: 1000.01px) {
    html.kbt-msn-local .msn-blog-card--secondary .msn-blog-card-copy {
        background-color: rgba(0, 0, 0, .72);
    }
}
html.kbt-msn-local .msn-feed-card--featured .msn-feed-rating-stars {
    color: #b8b8b8;
}

html.kbt-msn-local body .msn-feed-story .kbt-story-card-body,
html.kbt-msn-local body .msn-feed-story :is(.kbt-story-open-link, .kbt-story-guide-link) {
    background-color: rgba(0, 0, 0, .78);
}
html.kbt-msn-local body .msn-feed-story :is(.kbt-story-open-link, .kbt-story-guide-link) {
    padding-inline: 6px;
}

/* Light cards need a darker empty-star outline and filled-star color. */
html.kbt-msn-local[data-kbt-msn-theme="light"] .msn-feed-card:not(.msn-feed-card--featured) .msn-feed-rating-stars,
html.kbt-msn-local[data-kbt-msn-theme="light"] .msn-blog-card--compact .msn-blog-rating-stars {
    color: #707070 !important;
}
html.kbt-msn-local[data-kbt-msn-theme="light"] .msn-blog-card--compact .msn-blog-rating-stars > span {
    color: #996200;
}

/* Labels around test media follow the site; the media and diagnostic colors
   themselves remain controlled by their tool. */
html.kbt-msn-tool-local .msn-tool-stage :is(.br-tip, .br-btn) {
    background: var(--msn-card);
    color: var(--msn-ink);
    border-color: var(--msn-line);
}
html.kbt-msn-tool-local .msn-tool-stage :is(.bleed-fs-btn, .latency-mode.is-active) {
    background: var(--msn-action-bg);
    color: var(--msn-action-ink);
}
html.kbt-msn-tool-local .msn-tool-stage .bleed-fs-btn:hover {
    background: var(--msn-action-hover);
    color: var(--msn-action-ink);
}
html.kbt-msn-tool-local .msn-tool-stage :is(.wc-card, .st-card) :is(h2, h3, .wc-feature-icon) {
    color: #0f172a !important;
}
html.kbt-msn-tool-local .msn-tool-stage .st-stat-card .label {
    color: #56657a;
}
html.kbt-msn-tool-local .msn-tool-stage .pbc :is(input, textarea)::placeholder {
    color: var(--pbc-muted);
    opacity: 1;
}
html.kbt-msn-tool-local #mobile-input::placeholder {
    color: #c8c8c8;
    opacity: 1;
}
html.kbt-msn-tool-local[data-kbt-msn-theme="dark"] .kbt-typing-pro :is(.typing-field, .typing-toggle, .typing-dashboard article) > span {
    color: #cbd5e1;
}
html.kbt-msn-tool-local[data-kbt-msn-theme="dark"] #typing-clear-history {
    color: #93c5fd;
}
html.kbt-msn-tool-local[data-kbt-msn-theme="light"] #wt-game-label {
    color: #56657a;
}

/* The brightness scale remains unchanged; only its small text badge darkens. */
html.kbt-msn-tool-local .br-label--light {
    background: rgba(0, 0, 0, .6);
}
html.kbt-msn-tool-local .st-color-btn:is([style*="#ff0000" i], [style*="#00ff00" i], [style*="#ff00ff" i], [style*="#808080" i]) {
    color: #000 !important;
    text-shadow: none !important;
}
html.kbt-msn-tool-local .msn-tool-stage .st-card :is(.st-kicker, .st-lede) { color: #56657a !important; }
html.kbt-msn-tool-local .msn-tool-stage .st-note { color: #1e3a8a !important; }
html.kbt-msn-tool-local .msn-tool-stage .st-note-warning { color: #9a3412 !important; }
html.kbt-msn-tool-local .msn-tool-stage .st-note-danger { color: #991b1b !important; }
html.kbt-msn-tool-local .msn-tool-stage .st-tip {
    background: var(--msn-card);
    color: var(--msn-ink);
    border-color: var(--msn-line);
}
html.kbt-msn-tool-local[data-kbt-msn-theme="light"] .st-tester :is(.st-status, .st-ch-label) { color: #56657a; }
html.kbt-msn-tool-local[data-kbt-msn-theme="light"] .st-tester .st-ch.is-active .st-ch-label { color: #08753c; }

html.kbt-msn-tool-local .msn-tool-discovery .msn-feed-row:is([data-msn-row-card-count="1"], [data-msn-row-card-count="2"]) .msn-feed-card-copy {
    background-color: rgba(0, 0, 0, .78);
}
html.kbt-msn-tool-local[data-kbt-msn-theme] .msn-tool-discovery .msn-feed-row:is([data-msn-row-card-count="1"], [data-msn-row-card-count="2"]) .msn-feed-rating-stars {
    color: #b8b8b8 !important;
}
@media (min-width: 601px) {
    html.kbt-msn-tool-local .msn-tool-category-blog[data-msn-blog-count="2"] .msn-blog-card-copy {
        background-color: rgba(0, 0, 0, .78);
    }
}
html.kbt-msn-local body .post-card-rating {
    background: rgba(15, 23, 42, .9);
}
html.kbt-msn-local[data-kbt-msn-theme="light"] .kbt-usage--muted {
    color: #595959;
}
html.kbt-msn-tool-local .intent-cluster-link { color: var(--msn-link); }
html.kbt-msn-local[data-kbt-msn-theme="light"] .kbt-rating-star {
    color: #646464;
}
html.kbt-msn-local[data-kbt-msn-theme="light"] .kbt-rating-star:is(.is-on, .is-hover) {
    color: #996200;
}
html.kbt-msn-local #adv-pro-panel .adv-section-h { color: var(--msn-ink) !important; }
html.kbt-msn-local #adv-pro-panel .adv-section-p { color: var(--msn-muted) !important; }
html.kbt-msn-local #latency-log-content .log-placeholder { color: var(--msn-muted); }
html.kbt-msn-local #mobile-clear-btn {
    background: #b42318;
    color: #fff;
}
html.kbt-msn-local .keyboard-tester .key.key-disabled > span { color: #b8b8b8; }
html.kbt-msn-tool-local .msn-tool-stage .hs-info-value { color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage .hs-slider-label { color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage #hs-placeholder p { color: #e2e8f0; }
html.kbt-msn-tool-local .msn-tool-stage .hs-btn-primary,
html.kbt-msn-tool-local .msn-tool-stage .hs-test-item.active {
    background: var(--msn-action-bg);
    color: var(--msn-action-ink);
}
html.kbt-msn-tool-local .msn-tool-stage .hs-btn-danger { background: #b42318; color: #fff; }
html.kbt-msn-tool-local .msn-tool-stage :is(.hs-btn-success, .hs-channel-btn.playing) { background: #08753c; color: #fff; }

/* Article/navigation components from older layouts must pair their own small
   labels and pale action surfaces with the shared theme. */
html.kbt-msn-local.kbt-msn-article-local :is(.kbt-companion-story__eyebrow, .kbt-blog-context-tools__kicker) {
    color: var(--msn-link);
}
html.kbt-msn-local.kbt-msn-article-local .msn-article-body :is(.jump-links a, .final-cta > a) {
    background: var(--msn-card);
    color: var(--msn-link) !important;
    border-color: var(--msn-line);
}
html.kbt-msn-local.kbt-msn-article-local .msn-article-body :is(th, td) {
    background: var(--msn-card) !important;
    color: var(--msn-ink) !important;
}
html.kbt-msn-local.kbt-msn-article-local .msn-article-body th { background: var(--msn-raised) !important; }
html.kbt-msn-local.kbt-msn-article-local .msn-article-body .cff-timeline > li::before {
    background: #08753c;
    color: #fff;
}
html.kbt-msn-local.kbt-msn-article-local .msn-article-body :is(a.amazon-affiliate-button, a.razer-affiliate-button) {
    color: #111827 !important;
}
html.kbt-msn-local.kbt-msn-article-local .msn-article-body :is(.kbt-primary-tool > a, .cta-block > a.cta-btn) {
    background: var(--msn-action-bg);
    color: var(--msn-action-ink) !important;
}
html.kbt-msn-local.kbt-msn-article-local .msn-article-body .warning-box {
    background: var(--msn-card);
    color: var(--msn-ink);
}
html.kbt-msn-local.kbt-msn-article-local .msn-article-body .warning-box :is(p, strong) {
    color: var(--msn-ink) !important;
}
html.kbt-msn-local.kbt-msn-article-local[data-kbt-msn-theme="dark"] .msn-article-body .warning-box-title {
    color: #ffbe8a;
}
html.kbt-msn-local body.blog-page .msn-blog-pagination .tn-page.is-active {
    background: var(--msn-action-bg);
    color: var(--msn-action-ink);
}

/* The Black Crush article deliberately forced a white-only palette before
   this preview. Its original content now uses the same reading surfaces. */
html.kbt-msn-local.kbt-msn-article-local .post-wrap.black-crush-post {
    --text-color: var(--msn-ink);
    --text-muted: var(--msn-muted);
    --primary-color: var(--msn-link);
    --surface: var(--msn-card);
    --border-color: var(--msn-line);
}
html.kbt-msn-local.kbt-msn-article-local .post-wrap.black-crush-post :is(.post-title, .blog-content, .blog-content p, .blog-content li, .blog-content strong, .blog-content h2, .blog-content h4) {
    color: var(--msn-ink) !important;
}
html.kbt-msn-local.kbt-msn-article-local .post-wrap.black-crush-post :is(.post-meta, .blog-content figcaption, .tool-card p, .fix-card p) {
    color: var(--msn-muted) !important;
}
html.kbt-msn-local.kbt-msn-article-local .post-wrap.black-crush-post .blog-content :is(h3, a) { color: var(--msn-link) !important; }
html.kbt-msn-local.kbt-msn-article-local .post-wrap.black-crush-post :is(.quick-links a, .tool-card, .source-list li, .faq-list li, .fix-card, th, td) {
    background: var(--msn-card);
    color: var(--msn-ink) !important;
    border-color: var(--msn-line);
}
html.kbt-msn-local.kbt-msn-article-local .post-wrap.black-crush-post :is(.kbt-byline-name, .kbt-ai-summary__title, .kbt-ai-summary__link) {
    color: var(--msn-ink);
}

/* Source: assets/css/msn-local-tool-contrast.css */
/* Local engine chrome only. The measured failures came from pale legacy cards
   inheriting dark-theme text, or controls retaining a light-theme foreground.
   Canvases, test patches, printer output and generated images are untouched. */
html.kbt-msn-tool-local .msn-tool-stage {
    --msn-result-good: #86efac;
    --msn-result-violet: #c4b5fd;
}
html.kbt-msn-tool-local[data-kbt-msn-theme="light"] .msn-tool-stage {
    --msn-result-good: #08753c;
    --msn-result-violet: #6d28d9;
}

/* Ordinary calculator/audio/device cards: foreground and background move together. */
html.kbt-msn-tool-local .msn-tool-stage :is(.art-card, .bass-card, .fr-card, .ha-panel, .pd-card, .ss-card, .fs-card, .ms-panel, .mc-card, .tk-card, .ac-card, .bw-card, .cs-card, .dt-card, .gpu-card, .gy-card, .mt-card, .rc-card) {
    background: var(--msn-card);
    color: var(--msn-ink);
    border-color: var(--msn-line);
}
html.kbt-msn-tool-local .msn-tool-stage :is(.art-card, .bass-card, .fr-card, .ha-panel, .pd-card, .ss-card, .fs-card, .ms-panel, .mc-card, .tk-card, .ac-card, .bw-card, .cs-card, .dt-card, .gpu-card, .gy-card, .mt-card, .rc-card) :is(h3, h4) {
    color: var(--msn-ink) !important;
}
html.kbt-msn-tool-local .msn-tool-stage :is(.bass-freq-btn, .bass-sweep-item, .bass-info-item, .fr-hearing, .fps-detected, .tk-preset, .bw-preset, .rc-preset, .dt-preset) {
    background: var(--msn-raised);
    color: var(--msn-ink);
    border-color: var(--msn-line);
}
html.kbt-msn-tool-local .msn-tool-stage :is(.bass-freq-btn, .bass-sweep-item):is(.active, :hover),
html.kbt-msn-tool-local .msn-tool-stage :is(.tk-preset, .bw-preset, .rc-preset, .dt-preset):hover {
    background: var(--msn-hover);
    color: var(--msn-ink);
}
html.kbt-msn-tool-local .msn-tool-stage :is(.bass-freq-btn, .bass-sweep-item).active { background: var(--msn-action-bg); color: var(--msn-action-ink); border-color: var(--msn-action-bg); }
html.kbt-msn-tool-local .msn-tool-stage :is(.bass-freq-label, .bass-sweep-desc) { color: inherit; opacity: 1; }
html.kbt-msn-tool-local .msn-tool-stage :is(.bass-info-label, .bass-slider-label, .ha-panel p, .pd-tip, .fs-note, .ms-hint, .mc-note, .dt-preset > span, #ss-mode, #fs-status) { color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage :is(.bass-info-value, .bass-sweep-title, .fr-hearing-row, #fps-hz, #fps-detected) { color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage .fr-hearing-row b { color: var(--msn-link); }
html.kbt-msn-tool-local .msn-tool-stage .fr-wrap { --fr-muted: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage :is(.fs-field > label, .ss-field > label, .mc-field > label, .tk-field > label, .ha-option > label, .ha-option > legend, .ha-value, .ha-advanced > summary, .art-card > p) { color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage .ha-note { color: var(--msn-muted) !important; }
html.kbt-msn-tool-local .msn-tool-stage .art-card > p { color: var(--msn-muted) !important; }
html.kbt-msn-tool-local .msn-tool-stage #ha-subline { color: #dbeafe; }
html.kbt-msn-tool-local .msn-tool-stage #bass-placeholder > p { color: #e2e8f0; }
html.kbt-msn-tool-local .msn-tool-stage :is(#gpu-iter-val, #gpu-res-val) { color: var(--msn-ink); }
/* These result panels keep their original pale tint in both themes. */
html.kbt-msn-tool-local .msn-tool-stage :is(.tk-box, .tk-stat) { color: #334155; }
html.kbt-msn-tool-local .msn-tool-stage .tk-box h4 { color: #334155 !important; }
html.kbt-msn-tool-local .msn-tool-stage :is(.tk-sub, .ac-stat-label, .ac-tilt-cross, .gy-read-label, .gy-read-desc) { color: #475569; }
html.kbt-msn-tool-local .msn-tool-stage :is(.bw-result, .dt-result, .rc-result, .rl-result) > span { color: #475569; }
/* Only the labels change; the orientation cube keeps every diagnostic face color. */
html.kbt-msn-tool-local .msn-tool-stage #gy-cube :is(.gy-face.f3, .gy-face.f4) { color: #000; }
html.kbt-msn-tool-local .msn-tool-stage :is(.cs-field > label, .gpu-field > label, .mt-field > label, .bw-field > label, .dt-field > label, .rc-field > label, .rl-field > label, .mt-meta, .assistant-persona-body > p) { color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage :is(.ac-wrap, .gy-wrap) { --ac-muted: var(--msn-muted); --gy-muted: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage :is(.ac-status-idle, .gy-status-idle) { background: var(--msn-raised); color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage .ac-axis-label span:first-child { color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage .ac-axis-label span:last-child { color: var(--msn-link); }
html.kbt-msn-tool-local .msn-tool-stage .dt-preset > b { color: var(--msn-ink); }

/* Informational notices, never the adjacent diagnostic image or patch. */
html.kbt-msn-tool-local .msn-tool-stage :is(.ar-tip, .bi-tip, .fps-tip, .mgh-tip, .rt-tip, .ss-tip, .su-tip, .vd-tip, .wl-tip, .cg-tip, .fov-tip, .ec-tip, .md-tip, .ma-tip, .ms-tip, .dm-tip, #bl-tip, .ha-safety) {
    background: var(--msn-card);
    color: var(--msn-ink);
    border-color: var(--msn-line);
}
html.kbt-msn-tool-local .msn-tool-stage :is(.ar-tip, .bi-tip, .fps-tip, .mgh-tip, .rt-tip, .ss-tip, .su-tip, .vd-tip, .wl-tip, .cg-tip, .fov-tip, .ec-tip, .md-tip, .ma-tip, .ms-tip, .dm-tip, #bl-tip, .ha-safety) :is(strong, h3) { color: inherit !important; }
html.kbt-msn-tool-local .msn-tool-stage :is(.ar-stat-label, .fps-big-label, .fps-stat-label, .ppi-stat-label, .rt-hero-label, .rt-card-label, .ss-stat-label, .vd-stat-label, .fov-table-heading, .fov-table th, .ec-label, .ec-cm, .mdc-label, .mdc-accuracy, .md-stat-label, .ma-stat-label, .ma-result-label, .ms-stat-label, .bl-room, .dm-chart-head > span) { color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage :is(#ar-simple, #fps-big, #rt-native, #ss-area, #vd-thx, #mdc-dpi, #md-total, #md-max, #md-samples, #ma-ratio, #ms-spins) { color: var(--msn-result-good); }
html.kbt-msn-tool-local .msn-tool-stage #ec-edpi { color: var(--msn-result-violet); }
html.kbt-msn-tool-local .msn-tool-stage #ma-verdict { color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage .ppi-stat.primary .ppi-stat-label { color: #cbd5e1; }
html.kbt-msn-tool-local .msn-tool-stage :is(.wlt-tip, .rl-card, .vb-card) { background: var(--msn-card); color: var(--msn-ink); border-color: var(--msn-line); }
html.kbt-msn-tool-local .msn-tool-stage :is(.rl-card, .vb-card) h3 { color: var(--msn-ink) !important; }
html.kbt-msn-tool-local .msn-tool-stage :is(.rl-field input, .rl-field select, .rl-preset, .vb-preset) { background: var(--msn-raised); color: var(--msn-ink); border-color: var(--msn-line); }
html.kbt-msn-tool-local .msn-tool-stage .rl-preset:hover { background: var(--msn-hover); }
html.kbt-msn-tool-local .msn-tool-stage .vb-preset.active { background: var(--msn-action-bg); color: var(--msn-action-ink); border-color: var(--msn-action-bg); }
html.kbt-msn-tool-local .msn-tool-stage .vb-preset-desc { color: inherit; opacity: 1; }
html.kbt-msn-tool-local .msn-tool-stage .vb-card > div[style*="--vb-muted"] { color: var(--msn-muted) !important; }
html.kbt-msn-tool-local .msn-tool-stage .vb-btn-danger { background: #b42318; color: #fff; }

/* Fields whose legacy dark text/background attributes contradicted one another. */
html.kbt-msn-tool-local .msn-tool-stage :is(#ss-layout, #ss-dur, #ss-freq, #mc-radius, #mc-mode, #mc-cell, #tk-dmg, #tk-rpm, #tk-hs, #tk-hp, #tk-armor, #tk-dropoff, #bw-size-t, #bw-size-unit-t, #bw-spd-t, #bw-spd-unit-t, #dt-size, #dt-size-unit, #dt-speed, #dt-speed-unit, #rc-level, #rc-drives, #rc-size, #rc-unit) {
    background: var(--msn-raised);
    color: var(--msn-ink);
    border-color: var(--msn-line);
}
html.kbt-msn-tool-local .msn-tool-stage :is(#gn-keyword, #gn-letter, #maa-dpi-input, #lw-entries, #dpi-expected, #kcd-session-label, #kcd-keyboard-model, #kcd-notes, #or-diagonal, #mdc-advertised)::placeholder { color: var(--msn-muted); opacity: 1; }

/* Existing action buttons and selected controls retain a visible selected border. */
html.kbt-msn-tool-local .msn-tool-stage :is(#ghost-start, #bl-fs, #wl-fs, .color-btn-fs, .pwm-mode .mode-btn, #pwm-freq-row .freq-btn, #pwm-start-btn, .rr-seg.is-active, #rr-start, #vib-test, #krr-reset, .sb-mode, .sb-chip, #sb-reset, .trt-chip.is-active, #lod-reset-btn, .kcps-choice.is-selected, #kcpsStart, #dpi-start, .dpi-tab-btn, #rt-modes .rt-mode-btn, #sentiment-run) {
    background: var(--msn-action-bg);
    color: var(--msn-action-ink);
    border-color: var(--msn-action-bg);
}
html.kbt-msn-tool-local .msn-tool-stage :is(#ghost-start, #bl-fs, #wl-fs, .color-btn-fs, .pwm-mode .mode-btn, #pwm-freq-row .freq-btn, #pwm-start-btn, .rr-seg.is-active, #rr-start, #vib-test, #krr-reset, .sb-mode, .sb-chip, #sb-reset, .trt-chip.is-active, #lod-reset-btn, .kcps-choice.is-selected, #kcpsStart, #dpi-start, .dpi-tab-btn, #rt-modes .rt-mode-btn, #sentiment-run):hover { background: var(--msn-action-hover); color: var(--msn-action-ink); }
html.kbt-msn-tool-local .msn-tool-stage :is(.pwm-mode .mode-btn, #pwm-freq-row .freq-btn, .sb-mode, .sb-chip, .dpi-tab-btn, #rt-modes .rt-mode-btn):not(.active):not(.is-active):not([aria-pressed="true"]) { background: var(--msn-card); color: var(--msn-muted); border-color: var(--msn-line); }
html.kbt-msn-tool-local .msn-tool-stage :is(.pwm-mode .mode-btn, #pwm-freq-row .freq-btn, .sb-mode, .sb-chip, .dpi-tab-btn, #rt-modes .rt-mode-btn):not(.active):not(.is-active):not([aria-pressed="true"]):hover { background: var(--msn-hover); color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage :is(#gn-copy-all, #gn-download) { color: var(--msn-link); }
html.kbt-msn-tool-local .msn-tool-stage #gn-mode-group { background: #00559c; color: #fff; }
/* These normal action gradients ended in pale blue/pink/green beneath white
   text. Use the same tested local action pair at every point on the button. */
html.kbt-msn-tool-local .msn-tool-stage :is(.bass-btn-primary, #fr-start, #fr-manualPlay, #ss-walk, #wc-startBtn, #wm-start, #fs-start, #ms-fs, #mc-download, #ac-start, #cs-start, #gpu-start, #gy-start, #mt-start, #vb-phonePlay, .vb-tab.active, #pd-toggle, #lw-spin) { background: var(--msn-action-bg); color: var(--msn-action-ink); }
html.kbt-msn-tool-local .msn-tool-stage :is(.bass-btn-primary, #fr-start, #fr-manualPlay, #ss-walk, #wc-startBtn, #wm-start, #fs-start, #ms-fs, #mc-download, #ac-start, #cs-start, #gpu-start, #gy-start, #mt-start, #vb-phonePlay, .vb-tab.active, #pd-toggle, #lw-spin):hover { background: var(--msn-action-hover); color: var(--msn-action-ink); }
html.kbt-msn-tool-local .msn-tool-stage #pd-toggle.pd-running { background: #b42318; color: #fff; }
html.kbt-msn-tool-local .msn-tool-stage #pd-toggle.pd-running:hover { background: #912018; color: #fff; }
html.kbt-msn-tool-local[data-kbt-msn-theme="dark"] .msn-tool-stage .touch-action-row button[data-action="reset"] { color: #fda4af; }

/* Click/key tests: status text remains distinct without changing the hit surfaces. */
html.kbt-msn-tool-local .msn-tool-stage :is(#ghost-input-title, #ghost-result-title) { color: var(--ghost-ink, #0f172a) !important; }
html.kbt-msn-tool-local .msn-tool-stage .ghost-intro h3 { color: var(--ghost-ink, #0f172a) !important; }
html.kbt-msn-tool-local .msn-tool-stage :is(.ghost-intro p, #ghost-area-help) { color: #475569; }
html.kbt-msn-tool-local .msn-tool-stage :is(.pen-pressure-stat-grid, .pen-pressure-reach-grid) strong { color: var(--msn-result-good); }
html.kbt-msn-tool-local .msn-tool-stage :is(.apm-check, .apm-custom-duration > span, .apm-control-label, .apm-score-label, .apm-score-subgrid > div > span, .apm-stat > span, #apm-status) { color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage #apm-start { background: #08753c; color: #fff; }
html.kbt-msn-tool-local .msn-tool-stage .kcd-choice-copy strong > small,
html.kbt-msn-tool-local .msn-tool-stage .kcd-segmented input:checked + span { background: var(--msn-action-bg); color: var(--msn-action-ink); }
html.kbt-msn-tool-local .msn-tool-stage .kcd-segmented input:checked + span > b { color: inherit; }
html.kbt-msn-tool-local .msn-tool-stage #kcd-capture .kcd-eyebrow { color: #c7d5e8; }
html.kbt-msn-tool-local .msn-tool-stage .kcd-full-test .kcd-step { color: #fff; }
html.kbt-msn-tool-local .msn-tool-stage .kcd-live-key span { color: #c7d5e8; }
html.kbt-msn-tool-local .msn-tool-stage :is(.kbt-cps__live, .kbt-cps__duration.is-selected, .kbt-cps__special, .kbt-rcc__special) { background: var(--msn-raised); color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage :is(.kbt-cps__live, .kbt-cps__result-grid) > div { background: var(--msn-raised); color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage :is(.kbt-cps__live > div > span, #kbt-cps-duration, #kbt-cps-clicks, #kbt-cps-time, #kbt-cps-live, .kbt-cps__duration.is-selected > span, .kbt-cps__special a, .kbt-rcc__special a) { color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage :is(.kbt-rcc__eyebrow, #kbt-rcc-hardware-note) { color: #4c2333; }
html.kbt-msn-tool-local[data-kbt-msn-theme="dark"] .msn-tool-stage #kbt-rcc-hardware-note { color: #fce7f3; }
html.kbt-msn-tool-local .msn-tool-stage :is(.game-help-title, .game-help-text) { color: #253044 !important; }
html.kbt-msn-tool-local .msn-tool-stage .game-title { color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage #gp-log .gp-log-empty { color: var(--msn-muted); opacity: 1; }
html.kbt-msn-tool-local .msn-tool-stage :is(#left-drift-status, #right-drift-status, #fault-summary) { color: var(--msn-result-good); }
/* Native gamepad pages write state colors inline. Match only each known state,
   including the browser's rgb serialization, so OK never masks a drift alert. */
html.kbt-msn-tool-local .msn-tool-stage .gamepad-tool :is(#left-drift-status, #right-drift-status):is([style*="#2ecc71" i], [style*="rgb(46, 204, 113)"]) { color: var(--msn-result-good) !important; }
html.kbt-msn-tool-local .msn-tool-stage .gamepad-tool :is(#left-drift-status, #right-drift-status):is([style*="#e74c3c" i], [style*="rgb(231, 76, 60)"]) { color: #fca5a5 !important; }
html.kbt-msn-tool-local[data-kbt-msn-theme="light"] .msn-tool-stage .gamepad-tool :is(#left-drift-status, #right-drift-status):is([style*="#e74c3c" i], [style*="rgb(231, 76, 60)"]) { color: #b42318 !important; }
html.kbt-msn-tool-local .msn-tool-stage :is(#left-click-count, #left-click-status, #middle-click-count, #middle-click-status, #right-click-count, #right-click-status, #scroll-count, #scroll-status) { color: #102c27; }
html.kbt-msn-tool-local .msn-tool-stage :is(.mouse-tester, #mouse-test-tool, #mouse-test, #mouse-tester) #reset-button { background: #b42318; color: #fff; }
html.kbt-msn-tool-local .msn-tool-stage .gamepad-tool #reset-btn { background: var(--msn-action-bg); color: var(--msn-action-ink); }
html.kbt-msn-tool-local .msn-tool-stage .maa-dim { color: var(--msn-muted); opacity: 1; }
html.kbt-msn-tool-local .msn-tool-stage :is(#mdc-run-count, #rating) { color: var(--msn-result-good); }
html.kbt-msn-tool-local .msn-tool-stage #reaction-box-sub { color: #fff; opacity: 1; }
html.kbt-msn-tool-local .msn-tool-stage :is(.rr-graph-legend, .ss-listener) { color: #cbd5e1; }
html.kbt-msn-tool-local .msn-tool-stage :is(.ct-wcag, .ct-note2) { color: var(--msn-muted); opacity: 1; }
html.kbt-msn-tool-local .msn-tool-stage #wm-placeholder p { color: #c8c8c8; }
/* This meter panel stays navy in both themes; its labels retain a pale palette. */
html.kbt-msn-tool-local .msn-tool-stage .dm-gauge-panel .dm-kicker { color: #93c5fd; }
html.kbt-msn-tool-local .msn-tool-stage .dm-gauge-panel #dm-gauge-title { color: #fff !important; }
html.kbt-msn-tool-local .msn-tool-stage .dm-gauge-panel #dm-zone-note { color: #e2e8f0; }
html.kbt-msn-tool-local .msn-tool-stage .dm-gauge-panel .dm-privacy { color: #cbd5e1; }
html.kbt-msn-tool-local .msn-tool-stage #jis109-browser-note { background: var(--msn-card); color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage #jis109-browser-note strong { color: inherit; }

/* Printer controls and explanatory chrome are separate from the print sheet. */
html.kbt-msn-tool-local .msn-tool-stage .ptp-intro > div > p { color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage .ptp-eyebrow { color: var(--msn-link) !important; }
html.kbt-msn-tool-local .msn-tool-stage :is(.ptp-interpreter, .ptp-preview-head) { background: var(--msn-card); color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage .ptp-interpreter > div > p { color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-stage #ptpInterpreterTitle { color: var(--msn-ink) !important; }
html.kbt-msn-tool-local .msn-tool-stage #ptpPreviewTitle { color: var(--msn-muted) !important; }
html.kbt-msn-tool-local .msn-tool-stage .ptp-size-warning { background: var(--msn-card); color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage .ptp-size-warning strong { color: inherit; }
html.kbt-msn-tool-local .msn-tool-stage .ptp-segmented label > span { background: var(--msn-raised); color: var(--msn-ink); border-color: var(--msn-line); }
html.kbt-msn-tool-local .msn-tool-stage .ptp-segmented input:checked + span { background: var(--msn-action-bg); color: var(--msn-action-ink); border-color: var(--msn-action-bg); }

/* AI assistant profile chrome, excluding its conversation/output region. */
html.kbt-msn-tool-local .msn-tool-stage .assistant-persona-body { background: var(--msn-card); color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage .assistant-persona-body h3 { color: var(--msn-ink) !important; }
html.kbt-msn-tool-local .msn-tool-stage .assistant-persona-body .landing-btn-ghost { background: var(--msn-raised); color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-tool-stage#ai-assistant [style*="background:#fff"] { color: #0f172a; }
html.kbt-msn-tool-local .msn-tool-stage #sentiment-input-title { color: var(--sentiment-ink, #111827) !important; }

/* Source: assets/css/english-home-feed-local.css */
/* Owner-review feed. All rules require the existing localhost preview class. */
html.kbt-msn-local .msn-local-feed { --msn-feed-surface: #333; box-sizing: border-box; width: min(100% - 32px, 1440px); margin: 36px auto 48px; color: var(--msn-ink); font-family: var(--msn-font); }
html.kbt-msn-local[data-kbt-msn-theme="light"] .msn-local-feed { --msn-feed-surface: #fff; }
html.kbt-msn-local .msn-feed-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
html.kbt-msn-local .msn-feed-heading h2 { margin: 0; color: var(--msn-ink); font: 600 22px/30px var(--msn-font); letter-spacing: 0; }
html.kbt-msn-local .msn-feed-heading p { margin: 4px 0 0; color: var(--msn-muted); font: 400 13px/20px var(--msn-font); }
html.kbt-msn-local .msn-feed-heading > a { color: var(--msn-link); white-space: nowrap; font: 600 13px/20px var(--msn-font); text-decoration: none; }
html.kbt-msn-local .msn-local-catalog { margin-top: 24px; }
html.kbt-msn-local .msn-catalog-intro { display: grid; align-items: center; gap: 24px; margin-bottom: 28px; }
html.kbt-msn-local .msn-catalog-heading { min-width: 0; margin: 0; overflow: hidden; border-radius: 8px; background: var(--msn-feed-surface); }
html.kbt-msn-local .msn-catalog-heading-media { height: 120px; overflow: hidden; }
html.kbt-msn-local .msn-catalog-heading-media img { display: block; width: 100%; height: 100%; margin: 0; object-fit: cover; object-position: center 60%; }
html.kbt-msn-local .msn-catalog-heading-copy { padding: 18px 22px; }
html.kbt-msn-local .msn-catalog-heading h1 { margin: 0; color: var(--msn-ink); font: 600 28px/36px var(--msn-font); }
html.kbt-msn-local .msn-catalog-heading p { margin: 6px 0 0; color: var(--msn-muted); font: 400 16px/24px var(--msn-font); }
html.kbt-msn-local .msn-catalog-intro > .msn-local-ad { max-width: 100%; margin: 0 auto; }
@media (min-width: 1360px) {
    html.kbt-msn-local .msn-catalog-intro { grid-template-columns: 970px minmax(0, 1fr); }
    html.kbt-msn-local .msn-catalog-intro > .msn-local-ad { grid-column: 1; grid-row: 1; width: 970px; margin: 0; }
    html.kbt-msn-local .msn-catalog-intro > .msn-catalog-heading { grid-column: 2; grid-row: 1; }
    html.kbt-msn-local .msn-catalog-heading { height: 250px; }
    html.kbt-msn-local .msn-catalog-heading-media { height: 90px; }
    html.kbt-msn-local .msn-catalog-heading-copy { padding: 12px 16px; }
    html.kbt-msn-local .msn-catalog-heading h1 { font-size: 26px; line-height: 32px; }
    html.kbt-msn-local .msn-catalog-heading p { font-size: 15px; line-height: 22px; }
}
@media (max-width: 600px) {
    html.kbt-msn-local .msn-catalog-heading-media { height: 110px; }
    html.kbt-msn-local .msn-catalog-heading-copy { padding: 16px; }
    html.kbt-msn-local .msn-catalog-heading h1 { font-size: 25px; line-height: 32px; }
    html.kbt-msn-local .msn-catalog-heading p { font-size: 14px; line-height: 21px; }
}
html.kbt-msn-local .msn-catalog-category { margin-bottom: 36px; padding-top: 14px; border-top: 1px solid var(--msn-muted); scroll-margin-top: 110px; }
/* One separator per homepage section; the guide and FAQ remain one shared block. */
html.kbt-msn-local body.home-redesign .landing-main > #keyboard-stage,
html.kbt-msn-local body.home-redesign .landing-main > #explore-tools,
html.kbt-msn-local body.home-redesign .landing-main > .home-rails-region > .home-guideline-brief > .home-guideline-layout,
html.kbt-msn-local body.home-redesign .landing-main > .home-rails-region > .homepage-latest-blog > .container { padding-top: 14px !important; border-top: 1px solid var(--msn-muted) !important; }
html.kbt-msn-local .msn-catalog-category-heading { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
html.kbt-msn-local .msn-catalog-category-heading h2 { margin: 0; color: var(--msn-ink); font: 600 22px/30px var(--msn-font); }
html.kbt-msn-local .msn-catalog-category-heading > span:last-child { color: var(--msn-muted); font: 400 13px/20px var(--msn-font); }
html.kbt-msn-local .msn-catalog-category-icon { display: flex; color: color-mix(in srgb, var(--catalog-accent) 72%, white); }
html.kbt-msn-local[data-kbt-msn-theme="light"] .msn-catalog-category-icon { color: var(--catalog-accent); }
html.kbt-msn-local .msn-catalog-category-icon svg { width: 24px; height: 24px; }
html.kbt-msn-local .msn-catalog-ad { display: flex; align-items: center; justify-content: center; grid-column: span var(--catalog-ad-columns); box-sizing: border-box; min-width: 0; min-height: 304px; border: 1px solid var(--msn-line); border-radius: 8px; background: linear-gradient(120deg, var(--msn-card), var(--msn-bg)); color: var(--msn-muted); font: 400 12px/18px var(--msn-font); }
html.kbt-msn-local .msn-catalog-map { position: fixed; top: 50%; right: 12px; z-index: 750; transform: translateY(-50%); color: var(--msn-ink); font-family: var(--msn-font); }
html.kbt-msn-local .msn-catalog-map.is-over-intro { visibility: hidden; pointer-events: none; }
html.kbt-msn-local .msn-catalog-map summary { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; box-sizing: border-box; width: 44px; min-height: 82px; padding: 10px 4px; list-style: none; cursor: pointer; border: 1px solid var(--msn-line); border-radius: 8px; background: var(--msn-card); box-shadow: 0 3px 12px #0003; }
html.kbt-msn-local .msn-catalog-map summary::-webkit-details-marker { display: none; }
html.kbt-msn-local .msn-catalog-map-bars { display: grid; justify-items: end; gap: 4px; width: 24px; }
html.kbt-msn-local .msn-catalog-map-bars > span { display: block; width: 15px; height: 2px; background: var(--msn-muted); }
html.kbt-msn-local .msn-catalog-map-bars > .is-active { width: 24px; background: var(--map-accent); }
html.kbt-msn-local .msn-catalog-map-label { font: 400 9px/12px var(--msn-font); }
html.kbt-msn-local .msn-catalog-map-panel { position: absolute; right: 43px; top: 50%; transform: translateY(-50%); box-sizing: border-box; width: min(240px, calc(100vw - 76px)); max-height: calc(100dvh - 40px); overflow-y: auto; padding: 8px; border: 1px solid var(--msn-line); border-radius: 8px; background: var(--msn-card); box-shadow: 0 8px 24px #0004; }
html.kbt-msn-local .msn-catalog-map-panel > strong { display: block; padding: 8px 10px; font: 600 14px/20px var(--msn-font); }
html.kbt-msn-local .msn-catalog-map-panel > a { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 16px; box-sizing: border-box; min-height: 42px; padding: 9px 10px 9px 14px; border-radius: 4px; color: var(--msn-ink); text-decoration: none; font: 400 14px/20px var(--msn-font); }
html.kbt-msn-local .msn-catalog-map-panel > a[data-map-category]::before { content: ''; position: absolute; left: 2px; width: 3px; height: 20px; border-radius: 2px; background: var(--map-accent); }
html.kbt-msn-local .msn-catalog-map-panel > a > span { color: var(--msn-muted); font-size: 12px; }
html.kbt-msn-local .msn-catalog-map-panel > a:is(:hover, [aria-current]) { background: var(--msn-hover); }
html.kbt-msn-local .msn-catalog-map :is(summary, a):focus-visible { outline: 2px solid var(--msn-link); outline-offset: 2px; }
html.kbt-msn-local .msn-feed-group { display: grid; gap: 12px; margin-bottom: 12px; }
html.kbt-msn-local .msn-feed-row { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; align-items: stretch; }
html.kbt-msn-local .msn-feed-ad-break { grid-column: 1 / -1; min-width: 0; margin: 0; padding: 12px 0; }
html.kbt-msn-local .msn-feed-ad-banner { display: flex; align-items: center; justify-content: center; gap: 16px; box-sizing: border-box; width: 970px; max-width: 100%; height: 90px; margin: 0 auto; border: 1px solid var(--msn-line); border-radius: 4px; background: repeating-linear-gradient(135deg, var(--msn-feed-surface) 0 12px, var(--msn-bg) 12px 24px); color: var(--msn-muted); }
html.kbt-msn-local .msn-feed-ad-label { font: 600 10px/16px var(--msn-font); letter-spacing: .06em; }
html.kbt-msn-local .msn-feed-ad-size { font: 600 20px/26px var(--msn-font); }
html.kbt-msn-local :is(.msn-feed-ad-size--medium, .msn-feed-ad-size--small) { display: none; }
html.kbt-msn-local .msn-feed-card { min-width: 0; margin: 0; overflow: hidden; border-radius: 8px; background: var(--msn-feed-surface); }
html.kbt-msn-local .msn-feed-card-link { position: relative; display: flex; flex-direction: column; height: 304px; color: var(--msn-ink); text-decoration: none; isolation: isolate; }
html.kbt-msn-local .msn-feed-card-media { flex: 0 0 auto; aspect-ratio: 1.91; overflow: hidden; background: var(--msn-raised); }
html.kbt-msn-local .msn-feed-card-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .2s ease; }
html.kbt-msn-local .msn-feed-card-copy { position: relative; display: flex; flex: 1; min-height: 0; flex-direction: column; align-items: flex-start; gap: 4px; padding: 10px 16px 12px; }
html.kbt-msn-local .msn-feed-card-category { display: inline-flex; align-items: center; gap: 8px; color: var(--msn-muted); font: 400 12px/16px var(--msn-font); }
html.kbt-msn-local .msn-feed-card-category > span { display: inline-flex; color: var(--msn-link); }
html.kbt-msn-local .msn-feed-card-category svg { width: 16px; height: 16px; }
html.kbt-msn-local .msn-feed-card-copy h3 { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; margin: 0; color: inherit; font: 600 20px/26px var(--msn-font); letter-spacing: 0; overflow-wrap: anywhere; }
html.kbt-msn-local .msn-feed-card-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 8px; width: 100%; margin-top: auto; padding-top: 4px; }
html.kbt-msn-local .msn-feed-rating { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
html.kbt-msn-local .msn-feed-rating-stars { position: relative; display: inline-block; color: #8b8b8b; font: 400 15px/18px Arial, sans-serif; letter-spacing: 1px; }
html.kbt-msn-local .msn-feed-rating-stars > span { position: absolute; inset: 0 auto 0 0; overflow: hidden; color: #ffb020; font: inherit; letter-spacing: inherit; white-space: nowrap; }
html.kbt-msn-local .msn-feed-rating-meta { color: var(--msn-muted); font: 400 12px/16px var(--msn-font); }
html.kbt-msn-local[data-kbt-msn-theme="light"] .msn-feed-card:not(.msn-feed-card--featured) .msn-feed-rating-stars > span { color: #a86200; }
html.kbt-msn-local .msn-feed-card-cta { display: flex; align-items: center; gap: 6px; color: var(--msn-muted); font: 400 12px/16px var(--msn-font); white-space: nowrap; }
html.kbt-msn-local .msn-feed-card--featured { grid-column: span 2; }
html.kbt-msn-local .msn-feed-card--featured .msn-feed-card-media { position: absolute; inset: 0; aspect-ratio: auto; z-index: -2; }
html.kbt-msn-local .msn-feed-card--featured .msn-feed-card-link::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, transparent 25%, rgba(0,0,0,.15) 42%, rgba(0,0,0,.88) 100%); }
html.kbt-msn-local .msn-feed-card--featured .msn-feed-card-copy { flex: 0 1 auto; margin-top: auto; gap: 6px; padding: 16px; color: #fff; }
html.kbt-msn-local .msn-feed-card--featured .msn-feed-card-copy h3 { max-width: 620px; font-size: 24px; line-height: 32px; -webkit-line-clamp: 3; }
html.kbt-msn-local .msn-feed-card--featured :is(.msn-feed-card-category, .msn-feed-card-category > span, .msn-feed-card-cta, .msn-feed-rating-meta) { color: #fff; }
html.kbt-msn-local .msn-feed-card:hover .msn-feed-card-media img { transform: scale(1.025); }
html.kbt-msn-local .msn-feed-card:hover { background: var(--msn-hover); }
html.kbt-msn-local .msn-local-feed [data-msn-feed-nav]:focus-visible { outline: 3px solid var(--msn-link); outline-offset: -3px; border-radius: 6px; }
html.kbt-msn-local .msn-feed-story { grid-column: span 2; min-width: 0; }
html.kbt-msn-local .msn-feed-story .kbt-story-card { flex: none; width: 100%; height: 100%; min-width: 0; max-width: none; margin: 0; border: 0; border-radius: 8px; background: var(--msn-feed-surface); box-shadow: none; }
html.kbt-msn-local .msn-feed-story .kbt-story-inline-player { box-sizing: border-box; width: 100%; height: 304px; aspect-ratio: auto; border-radius: 8px; }
html.kbt-msn-local .msn-feed-story .kbt-story-inline-slide img { object-position: center 40%; }
html.kbt-msn-local .msn-feed-story .kbt-story-shade { background: linear-gradient(180deg, transparent 25%, rgba(0,0,0,.15) 42%, rgba(0,0,0,.88) 100%); }
html.kbt-msn-local .msn-feed-story .kbt-story-card-body { gap: 6px; padding: 16px 16px 52px; }
html.kbt-msn-local .msn-feed-story .kbt-story-pill { padding: 0; border: 0; border-radius: 0; background: transparent; color: #fff; font: 400 12px/16px var(--msn-font); letter-spacing: 0; text-transform: none; backdrop-filter: none; }
html.kbt-msn-local .msn-feed-story .kbt-story-pill::before { content: 'Web Story \00b7\00a0'; }
html.kbt-msn-local .msn-feed-story .kbt-story-card-title { display: -webkit-box; max-width: none; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font: 600 24px/32px var(--msn-font); letter-spacing: 0; text-wrap: initial; }
html.kbt-msn-local .msn-feed-story .kbt-story-card-summary { max-width: 60ch; font: 400 14px/20px var(--msn-font); -webkit-line-clamp: 3; }
html.kbt-msn-local .msn-feed-story [data-slide-index="0"] .kbt-story-card-summary { display: none; }
html.kbt-msn-local .msn-feed-story :is(.kbt-story-open-link, .kbt-story-guide-link) { bottom: 4px; min-height: 40px; box-sizing: border-box; padding: 0; border: 0; border-radius: 0; background: transparent; color: #fff; font: 400 12px/16px var(--msn-font); backdrop-filter: none; }
html.kbt-msn-local .msn-feed-story .kbt-story-open-link { left: 16px; }
html.kbt-msn-local .msn-feed-story .kbt-story-guide-link { right: 16px; }
html.kbt-msn-local .msn-feed-story :is(.kbt-story-open-link, .kbt-story-guide-link):hover { text-decoration: underline; transform: none; }
html.kbt-msn-local .msn-feed-story .kbt-story-inline-controls { top: 22%; }
html.kbt-msn-local .msn-feed-story .kbt-story-inline-arrow { width: 44px; height: 44px; border-radius: 4px; box-shadow: none; }
html.kbt-msn-local .msn-feed-story .kbt-story-double-chevron { width: 28px; height: 24px; }
html.kbt-msn-local .msn-feed-story .kbt-story-chevron-stroke--primary { stroke: #fff; }
html.kbt-msn-local .msn-feed-story .kbt-story-chevron-stroke--secondary { display: none; }
html.kbt-msn-local .msn-feed-more { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 20px 0 0; }
html.kbt-msn-local .msn-feed-more button { min-height: 44px; padding: 10px 24px; border: 1px solid var(--msn-line); border-radius: 24px; color: var(--msn-ink); background: var(--msn-card); font: 600 14px/20px var(--msn-font); cursor: pointer; }
html.kbt-msn-local .msn-feed-more button:hover { background: var(--msn-hover); }
html.kbt-msn-local .msn-feed-more [hidden] { display: none; }
html.kbt-msn-local .msn-feed-more p { margin: 0; color: var(--msn-muted); font: 400 12px/18px var(--msn-font); }
@media (max-width: 1050px) {
    html.kbt-msn-local .msn-catalog-ad { grid-column: auto; }
    html.kbt-msn-local .msn-catalog-ad[data-tablet-fill="0"] { display: none; }
    html.kbt-msn-local .msn-feed-ad-banner { width: 728px; }
    html.kbt-msn-local .msn-feed-ad-size--wide { display: none; }
    html.kbt-msn-local .msn-feed-ad-size--medium { display: inline; }
    html.kbt-msn-local .msn-feed-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    html.kbt-msn-local :is(.msn-feed-group, .msn-feed-row) { display: contents; }
    html.kbt-msn-local :is(.msn-feed-card--featured, .msn-feed-story) { grid-column: auto; }
    html.kbt-msn-local .msn-feed-card-link { height: auto; min-height: 304px; }
    html.kbt-msn-local .msn-feed-card--featured .msn-feed-card-link { height: 100%; }
    html.kbt-msn-local .msn-feed-story .kbt-story-inline-player { height: 100%; min-height: 304px; }
    html.kbt-msn-local .msn-feed-card-copy { min-height: 130px; box-sizing: border-box; }
}
@media (max-width: 780px) {
    html.kbt-msn-local .msn-feed-ad-banner { width: 320px; height: 50px; gap: 12px; }
    html.kbt-msn-local .msn-feed-ad-size { font-size: 16px; line-height: 22px; }
    html.kbt-msn-local .msn-feed-ad-size--medium { display: none; }
    html.kbt-msn-local .msn-feed-ad-size--small { display: inline; }
}
@media (max-width: 768px) {
    html.kbt-msn-local .msn-catalog-ad { display: none; }
}
@media (max-width: 600px) {
    html.kbt-msn-local .msn-catalog-category { scroll-margin-top: 150px; }
    html.kbt-msn-local .msn-local-feed { margin-top: 28px; }
    html.kbt-msn-local .msn-feed-heading { align-items: flex-start; }
    html.kbt-msn-local .msn-feed-heading h2 { font-size: 20px; line-height: 26px; }
    html.kbt-msn-local .msn-feed-groups { grid-template-columns: minmax(0, 1fr); gap: 14px; }
    html.kbt-msn-local .msn-feed-story .kbt-story-inline-player { height: auto; min-height: 0; aspect-ratio: 3 / 4; }
}
@media (prefers-reduced-motion: reduce) {
    html.kbt-msn-local .msn-feed-card-media img { transition: none; }
    html.kbt-msn-local .msn-feed-card:hover .msn-feed-card-media img { transform: none; }
}

/* Source: assets/css/english-blog-msn-local.css */
/* English blog landing preview. Every rule is isolated from the published skin. */
html.kbt-msn-local body.blog-page {
    --msn-blog-surface: #333;
    --tn-body-font: var(--msn-font);
    --tn-head-font: var(--msn-font);
    --tn-body: var(--msn-ink);
    --tn-heading: var(--msn-ink);
    --tn-muted: var(--msn-muted);
    --tn-primary: var(--msn-link);
    --blog-page-bg: var(--msn-bg);
    background: var(--msn-bg) !important;
    color: var(--msn-ink) !important;
    font-family: var(--msn-font) !important;
}
html.kbt-msn-local[data-kbt-msn-theme="light"] body.blog-page { --msn-blog-surface: #fff; }
html.kbt-msn-local body.blog-page main#main-content { min-width: 0; background: var(--msn-bg) !important; }
html.kbt-msn-local body.blog-page .msn-local-shortcuts { width: min(100% - 32px, 1120px); gap: 24px; overflow-x: auto; scrollbar-width: thin; scrollbar-color: var(--msn-line) transparent; }
html.kbt-msn-local body.blog-page .msn-local-shortcut { flex: 0 0 84px; }
html.kbt-msn-local body.blog-page .msn-local-shortcut-icon { color: #80c8ff; }
html.kbt-msn-local[data-kbt-msn-theme="light"] body.blog-page .msn-local-shortcut-icon { color: var(--msn-link); }
html.kbt-msn-local body.blog-page .msn-local-shortcut:is(:hover, :focus-visible) .msn-local-shortcut-icon { color: var(--shortcut-color, var(--msn-link)); }

:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog { box-sizing: border-box; width: min(100% - 32px, 1440px); margin: 24px auto 36px; color: var(--msn-ink); font-family: var(--msn-font); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog *,
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog *::before,
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog *::after { box-sizing: border-box; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading { margin: 0 0 28px; overflow: hidden; border-radius: 8px; background: var(--msn-blog-surface); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading-media { height: 120px; overflow: hidden; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading-media img { display: block; width: 100%; height: 100%; margin: 0; object-fit: cover; object-position: center 60%; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading-copy { padding: 18px 22px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading h1 { margin: 0; color: var(--msn-ink); font: 600 28px/36px var(--msn-font); letter-spacing: -.4px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading p { max-width: 900px; margin: 6px 0 0; color: var(--msn-muted); font: 400 16px/24px var(--msn-font); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading-copy > a { display: inline-flex; align-items: center; min-height: 36px; margin-bottom: 8px; color: var(--msn-link); font: 600 13px/20px var(--msn-font); text-decoration: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-intro { display: grid; gap: 24px; margin-bottom: 28px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-intro > .msn-blog-heading { min-width: 0; margin: 0; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-intro > .msn-local-ad { margin: 0 auto; }
@media (min-width: 1360px) {
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-intro { grid-template-columns: 970px minmax(0, 1fr); align-items: center; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-intro > .msn-local-ad { grid-column: 1; grid-row: 1; width: 970px; max-width: 100%; margin: 0; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-intro > .msn-blog-heading { grid-column: 2; grid-row: 1; }
}
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category { margin: 0 0 20px; padding-top: 14px; border-top: 1px solid var(--msn-muted); scroll-margin-top: 110px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category-ad { display: flex; justify-content: center; min-width: 0; margin: 0 0 28px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category-ad-slot { display: grid; place-items: center; width: 970px; max-width: 100%; height: 90px; overflow: hidden; border: 1px solid var(--msn-line); border-radius: 8px; background: repeating-linear-gradient(135deg, var(--msn-card), var(--msn-card) 12px, var(--msn-bg) 12px, var(--msn-bg) 24px); color: var(--msn-muted); font: 400 12px/18px var(--msn-font); }
@media (max-width: 1000px) {
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category-ad-slot { width: 728px; }
}
@media (max-width: 600px) {
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category-ad-slot { width: 320px; height: 50px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading-media { height: 110px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading-copy { padding: 16px; }
}
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 12px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category-heading > div { display: flex; align-items: center; min-width: 0; gap: 10px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category-heading h2 { margin: 0; color: var(--msn-ink); font: 600 22px/30px var(--msn-font); letter-spacing: 0; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category-heading > a { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 36px; color: var(--msn-link); font: 600 13px/20px var(--msn-font); text-decoration: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category-icon { display: inline-flex; flex: 0 0 auto; color: var(--blog-accent, var(--msn-link)); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category-icon svg { display: block; width: 24px; height: 24px; }

:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-grid,
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-more-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-grid { grid-template-rows: 280px 128px; grid-auto-rows: 128px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card { position: relative; min-width: 0; margin: 0; overflow: hidden; border: 0; border-radius: 8px; background: var(--msn-blog-surface); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-link { position: relative; display: block; width: 100%; height: 100%; min-width: 0; color: var(--msn-ink); text-decoration: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-media { overflow: hidden; background: var(--msn-raised); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-media img { display: block; width: 100%; height: 100%; max-width: none; margin: 0; object-fit: cover; transition: transform .18s ease; color: var(--msn-muted); font: 400 12px/18px var(--msn-font); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-media--contain { background: #1c1c1c; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-media--contain img { object-fit: contain; object-position: center top; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-copy { min-width: 0; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-source { display: flex; align-items: center; gap: 6px; min-width: 0; overflow: hidden; white-space: nowrap; color: var(--msn-muted); font: 400 12px/16px var(--msn-font); text-overflow: ellipsis; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-source > span:first-child { display: inline-flex; flex: 0 0 auto; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-source svg { display: block; width: 15px; height: 15px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-source time { overflow: hidden; text-overflow: ellipsis; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-copy h3 { display: -webkit-box; margin: 0; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; color: inherit; font: 600 16px/21px var(--msn-font); letter-spacing: 0; overflow-wrap: anywhere; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-width: 0; color: var(--msn-muted); font: 400 11px/16px var(--msn-font); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-rating { display: inline-flex; align-items: center; gap: 5px; min-width: 0; white-space: nowrap; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-rating-stars { position: relative; display: inline-block; flex: 0 0 auto; color: #a0a0a0; font: 400 15px/18px Arial, sans-serif; letter-spacing: 1px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-rating-stars > span { position: absolute; inset: 0 auto 0 0; overflow: hidden; color: #ffb020; font: inherit; letter-spacing: inherit; white-space: nowrap; }
html.kbt-msn-local[data-kbt-msn-theme="light"] body.blog-page .msn-blog-card--compact .msn-blog-rating-stars { color: #777; }
html.kbt-msn-local[data-kbt-msn-theme="light"] body.blog-page .msn-blog-card--compact .msn-blog-rating-stars > span { color: #996200; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-read { flex: 0 0 auto; color: inherit; white-space: nowrap; font-weight: 600; }

/* Large image and adjacent smaller image use legible captions on the photo. */
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--lead { grid-column: 1 / span 2; grid-row: 1 / span 2; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary { grid-column: 3; grid-row: 1; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) :is(.msn-blog-card--lead, .msn-blog-card--secondary) .msn-blog-card-media { position: absolute; inset: 0; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) :is(.msn-blog-card--lead, .msn-blog-card--secondary) .msn-blog-card-link::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: linear-gradient(180deg, #0000 15%, #0005 43%, #000c 79%, #000e 100%); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) :is(.msn-blog-card--lead, .msn-blog-card--secondary) .msn-blog-card-copy { position: absolute; inset: auto 0 0; z-index: 1; display: flex; flex-direction: column; gap: 8px; padding: 20px; color: #fff; text-shadow: 0 1px 4px #0008; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--lead .msn-blog-card-copy h3 { max-width: 40ch; font-size: 28px; line-height: 34px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary .msn-blog-card-copy { padding: 16px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary .msn-blog-card-copy h3 { font-size: 22px; line-height: 28px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) :is(.msn-blog-card--lead, .msn-blog-card--secondary) :is(.msn-blog-card-source, .msn-blog-card-meta) { color: #ededed; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-excerpt { display: -webkit-box; max-width: 76ch; margin: 0; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: #ededed; font: 400 14px/21px var(--msn-font); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--compact { min-height: 128px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--compact .msn-blog-card-link { display: grid; grid-template-columns: minmax(0, 1fr) 128px; gap: 12px; padding: 10px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--compact .msn-blog-card-media { grid-column: 2; grid-row: 1; height: 108px; border-radius: 5px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--compact .msn-blog-card-copy { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; gap: 4px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--compact .msn-blog-card-meta { margin-top: auto; }

:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-more { margin: 12px 0 0; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-more > summary { width: fit-content; min-height: 40px; padding: 9px 12px; border-radius: 6px; background: var(--msn-blog-surface); color: var(--msn-ink); font: 600 13px/20px var(--msn-font); cursor: pointer; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-more[open] > summary { margin-bottom: 12px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-more-grid { grid-auto-rows: 128px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog :is(a, summary):focus-visible { outline: 2px solid var(--msn-link); outline-offset: 3px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card:focus-within { outline: 2px solid var(--msn-link); outline-offset: 3px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-link:focus-visible { outline: 2px solid var(--msn-link); outline-offset: -3px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category-heading > a:hover { text-decoration: underline; text-underline-offset: 3px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading-copy > a:hover { text-decoration: underline; text-underline-offset: 3px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-more > summary:hover { background: var(--msn-hover); }
@media (hover: hover) {
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-link:hover h3 { text-decoration: underline; text-underline-offset: 3px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-link:hover .msn-blog-card-media img { transform: scale(1.025); }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-link:hover .msn-blog-card-media--contain img { transform: none; }
}

/* Four equal Story previews: photograph above a separate caption and link footer.
   Existing slides, image hydration, inline arrows and fullscreen links stay intact. */
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-shell { max-width: none; margin: 0 0 36px; padding: 14px 0 0; border-top: 1px solid var(--msn-muted); --story-accent: var(--msn-link); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-heading-row { padding-right: 0; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-heading { color: var(--msn-ink); font: 600 22px/30px var(--msn-font); letter-spacing: 0; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-eyebrow { color: var(--msn-muted); font: 400 12px/18px var(--msn-font); letter-spacing: 0; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-viewall { color: var(--msn-link); font: 600 13px/20px var(--msn-font); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-track { display: flex; gap: 12px; padding: 2px 0 12px; overflow-x: auto; scrollbar-color: var(--msn-line) transparent; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-track > .kbt-story-card { flex: 0 0 calc((100% - 36px) / 4); width: auto; min-width: 0; max-width: none; margin: 0; border-radius: 8px; border-width: 0; background: var(--msn-blog-surface); box-shadow: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-inline-player { height: 340px; aspect-ratio: auto; color: var(--msn-ink); background: var(--msn-blog-surface); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-inline-slide { background: var(--msn-blog-surface); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-inline-slide > img { position: absolute; inset: 0 0 auto; width: 100%; height: 160px; object-fit: cover; object-position: center 35%; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-shade { display: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-inline-player .kbt-story-card-body { inset: 160px 0 44px; gap: 5px; padding: 12px; overflow: hidden; background: var(--msn-blog-surface); color: var(--msn-ink); text-shadow: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-pill { flex: 0 0 auto; max-width: 100%; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--msn-muted); font: 400 11px/14px var(--msn-font); letter-spacing: 0; text-transform: none; backdrop-filter: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-card-title { flex: 0 0 auto; display: -webkit-box; max-width: none; margin: 0; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: var(--msn-ink); font: 600 20px/24px var(--msn-font); letter-spacing: 0; text-wrap: pretty; text-shadow: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-card-summary { max-width: none; min-height: 0; -webkit-line-clamp: 2; color: var(--msn-muted); font: 400 12px/17px var(--msn-font); text-shadow: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-inline-count { top: 10px; right: 10px; padding: 4px 6px; border: 1px solid #ffffff80; border-radius: 4px; background: #171717cf; color: #fff; font: 600 10px/14px var(--msn-font); letter-spacing: 0; }
/* Retain the shared colored arrows and button shapes, centered on the photo. */
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-inline-controls { inset: 80px .65rem auto; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog :is(.kbt-story-open-link, .kbt-story-guide-link) { bottom: 0; display: inline-flex; justify-content: center; width: 50%; min-height: 44px; margin: 0; padding: 8px 6px; border: 0; border-top: 1px solid var(--msn-line); border-radius: 0; background: var(--msn-blog-surface); color: var(--msn-link); font: 600 12px/18px var(--msn-font); text-align: center; backdrop-filter: none; transform: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-open-link { left: 0; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-guide-link { right: 0; border-left: 1px solid var(--msn-line); }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog :is(.kbt-story-open-link, .kbt-story-guide-link):hover { background: var(--msn-hover); color: var(--msn-link); transform: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog :is(.kbt-story-inline-player, .kbt-story-open-link, .kbt-story-guide-link):focus-visible { outline: 2px solid var(--msn-link); outline-offset: -3px; }
/* Keep row browsing below the cards, separate from each Story's colored arrows. */
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-scroll-button { top: auto; bottom: -48px; width: 44px; height: 44px; border: 1px solid var(--msn-line); border-radius: 6px; background: var(--msn-blog-surface); color: var(--msn-ink); opacity: 1; pointer-events: auto; box-shadow: none; transform: none; backdrop-filter: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-scroll-button--prev { left: 0; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-scroll-button--next { right: 0; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-scroll-shell.is-scrollable:is(:hover, :focus-within) .kbt-story-scroll-button:not(:disabled) { opacity: 1; pointer-events: auto; transform: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-scroll-button:is(:hover, :focus-visible, :active):not(:disabled) { background: var(--msn-hover); box-shadow: none; transform: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-scroll-button:focus-visible { outline: 2px solid var(--msn-link); outline-offset: 2px; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-scroll-icon { width: 25px; height: 25px; filter: none; }
:is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-inline-help { min-height: 44px; margin: 8px 0 0; padding: 0 56px; color: var(--msn-muted); font: 400 12px/18px var(--msn-font); }
@media (max-width: 760px), (hover: none), (any-pointer: coarse) {
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-inline-help { min-height: 0; padding: 0; }
}
@media (max-width: 1099.98px) {
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-track > .kbt-story-card { flex-basis: calc((100% - 12px) / 2); }
}
@media (max-width: 600px) {
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-track > .kbt-story-card { flex-basis: 100%; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-inline-help { justify-content: flex-start; text-align: left; }
}

@media (max-width: 1120px) {
    html.kbt-msn-local body.blog-page .msn-local-shortcuts { justify-content: flex-start; gap: 16px; padding-bottom: 8px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--compact .msn-blog-card-link { grid-template-columns: minmax(0, 1fr) 104px; gap: 10px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--compact .msn-blog-read { display: none; }
}
@media (max-width: 1000px) {
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-grid,
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-more-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: none; grid-auto-rows: auto; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--lead { grid-column: 1 / -1; grid-row: auto; min-height: 360px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary { grid-column: auto; grid-row: auto; min-height: 128px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary .msn-blog-card-link { display: grid; grid-template-columns: minmax(0, 1fr) 104px; gap: 10px; padding: 10px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary .msn-blog-card-link::after { display: none; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary .msn-blog-card-media { position: static; grid-column: 2; grid-row: 1; height: 108px; border-radius: 5px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary .msn-blog-card-copy { position: static; grid-column: 1; grid-row: 1; gap: 4px; padding: 0; color: var(--msn-ink); text-shadow: none; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary .msn-blog-card-copy h3 { font-size: 16px; line-height: 21px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary :is(.msn-blog-card-source, .msn-blog-card-meta) { color: var(--msn-muted); }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary .msn-blog-card-meta { margin-top: auto; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--secondary .msn-blog-read { display: none; }
    html.kbt-msn-local[data-kbt-msn-theme="light"] body.blog-page .msn-blog-card--secondary .msn-blog-rating-stars { color: #777; }
    html.kbt-msn-local[data-kbt-msn-theme="light"] body.blog-page .msn-blog-card--secondary .msn-blog-rating-stars > span { color: #996200; }
}
@media (max-width: 600px) {
    html.kbt-msn-local body.blog-page .msn-local-shortcuts { gap: 10px; }
    html.kbt-msn-local body.blog-page .msn-local-shortcut { flex-basis: 70px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog { margin-top: 20px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading { margin-bottom: 24px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading h1 { font-size: 25px; line-height: 32px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-heading p { font-size: 14px; line-height: 21px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-category { margin-bottom: 28px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-grid,
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-more-grid { grid-template-columns: minmax(0, 1fr); }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--lead { grid-column: auto; min-height: 340px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--lead .msn-blog-card-copy { padding: 16px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card--lead .msn-blog-card-copy h3 { font-size: 25px; line-height: 31px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog-card-excerpt { font-size: 13px; line-height: 19px; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .kbt-story-card-title { font-size: 20px; line-height: 25px; }
}
@media (prefers-reduced-motion: reduce) {
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .msn-blog-card-media img { transition: none; }
    :is(html.kbt-msn-local body.blog-page, html.kbt-msn-tool-local) .msn-blog .msn-blog-card-link:hover .msn-blog-card-media img { transform: none; }
}

/* Source: assets/css/tool-page-msn-local.css */
/* Presentation only for the server-gated registered-tool local preview. */
html.kbt-msn-tool-local { --msn-tool-width: 1440px; --msn-blog-surface: #333; }
html.kbt-msn-tool-local[data-kbt-msn-theme="light"] { --msn-blog-surface: #fff; }
html.kbt-msn-tool-local .msn-tool-intro,
html.kbt-msn-tool-local body .landing-main > .msn-tool-stage {
    box-sizing: border-box;
    width: min(100% - 32px, var(--msn-tool-width));
    max-width: none;
    margin-inline: auto;
}
html.kbt-msn-tool-local .msn-tool-intro { margin-bottom: 28px; }
html.kbt-msn-tool-local body .landing-main .msn-tool-intro .msn-tool-intro-card { min-width: 0; }
html.kbt-msn-tool-local body .landing-main .msn-tool-intro .home-hero .home-banner-media,
html.kbt-msn-tool-local body .landing-main .msn-tool-intro .msn-tool-intro-media { height: 100px !important; }
html.kbt-msn-tool-local body .landing-main .msn-tool-intro .home-banner-content { padding: 14px 18px !important; }
html.kbt-msn-tool-local body .landing-main .msn-tool-intro h1.msn-tool-intro-title {
    margin: 0 0 7px !important;
    font: 600 clamp(22px, 1.9vw, 28px)/1.2 var(--msn-font) !important;
    overflow-wrap: anywhere;
}
html.kbt-msn-tool-local body .landing-main .msn-tool-intro--long-title h1.msn-tool-intro-title { font-size: 21px !important; }
html.kbt-msn-tool-local body .landing-main .msn-tool-intro .msn-tool-intro-lede {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    font: 400 15px/22px var(--msn-font) !important;
}
html.kbt-msn-tool-local body .landing-main > .msn-tool-stage { margin-block: 16px; padding: 14px 0 0 !important; border-top: 1px solid var(--msn-muted); }
html.kbt-msn-tool-local body .landing-main .msn-tool-stage > .msn-tool-shell { width: 100%; max-width: none; margin-inline: auto; }

/* One index-based guide skin, enabled only after canonical content normalization. */
html.kbt-msn-tool-local .msn-tool-reading { box-sizing: border-box; width: 100%; max-width: none; margin: 0; padding: 0; }
html.kbt-msn-tool-local .msn-tool-guide-block,
html.kbt-msn-tool-local .msn-tool-guide-section { scroll-margin-top: 88px; }
html.kbt-msn-tool-local .msn-tool-guide-block { box-sizing: border-box; width: 100%; max-width: none; margin-inline: 0; padding: 0 !important; }
html.kbt-msn-tool-local .msn-tool-guide-heading { box-sizing: border-box; width: min(100% - 32px, var(--msn-tool-width)); margin: 24px auto 16px; padding-top: 16px; border-top: 1px solid var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-guide-heading h2 { margin: 0; color: var(--msn-ink); font: 600 28px/36px var(--msn-font); }
html.kbt-msn-tool-local body .msn-tool-guide-section[data-msn-guide-normalized] { box-sizing: border-box; width: min(100% - 32px, var(--msn-tool-width)) !important; max-width: none !important; margin: 0 auto 24px; margin-inline: auto; padding: 0 !important; border: 0 !important; background: transparent !important; }
html.kbt-msn-tool-local body .msn-tool-guide-section > :is(.msn-tool-guide-heading, .msn-home-guide-heading) { width: 100%; max-width: none; padding: 16px 0 0; border: 0; border-top: 1px solid var(--msn-muted); border-radius: 0; background: transparent; box-shadow: none; }
html.kbt-msn-tool-local body.home-redesign .landing-main > .msn-tool-reading > .msn-tool-guide-section > .msn-tool-guide-grid { padding-top: 0 !important; border-top: 0 !important; }
html.kbt-msn-tool-local body .msn-tool-guide-section > .container { box-sizing: border-box; width: 100%; max-width: none; margin: 0; padding: 0; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-guide-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; box-sizing: border-box; width: 100% !important; max-width: none !important; align-items: stretch !important; gap: 16px !important; margin: 0 !important; padding: 0 !important; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-guide-grid > :is(.home-guideline-copy, .home-faq-panel) { display: flex; flex-direction: column; box-sizing: border-box; min-width: 0; height: auto; margin: 0; padding: 24px !important; border: 1px solid var(--msn-line) !important; border-radius: var(--msn-radius); background: var(--msn-card) !important; color: var(--msn-ink); box-shadow: none; overflow-wrap: anywhere; }
/* Keep old anchors/content, but discard their former nested card/grid surfaces. */
html.kbt-msn-tool-local [data-msn-guide-normalized] :is(div, section, article, aside).msn-tool-guide-source:not(.home-guideline-steps) { display: contents !important; width: auto !important; max-width: none !important; min-width: 0 !important; height: auto !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
html.kbt-msn-tool-local [data-msn-guide-normalized] :is(div, section, article, aside).msn-tool-guide-source[id]:not(.home-guideline-steps) { display: block !important; width: 100% !important; scroll-margin-top: 88px; }
html.kbt-msn-tool-local [data-msn-guide-normalized] :is(div, section, article, aside).msn-tool-guide-source:not(.home-guideline-steps)::before,
html.kbt-msn-tool-local [data-msn-guide-normalized] :is(div, section, article, aside).msn-tool-guide-source:not(.home-guideline-steps)::after { content: none !important; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-guide-grid .msn-tool-faq-anchor.msn-tool-guide-source { display: block !important; flex: none; box-sizing: border-box; width: 100% !important; height: 0 !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important; scroll-margin-top: 88px; }
html.kbt-msn-tool-local [data-msn-guide-normalized] :is(.home-guideline-copy, .home-faq-panel) > .section-kicker { margin: 0 0 10px !important; padding: 0; color: var(--msn-link) !important; font: 600 12.48px/18px var(--msn-font) !important; letter-spacing: 0; text-transform: none; text-align: start; }
html.kbt-msn-tool-local [data-msn-guide-normalized] :is(.home-guideline-copy, .home-faq-panel) > :is(h2, h3) { margin: 6px 0 16px !important; color: var(--msn-ink) !important; font: 600 24px/32px var(--msn-font) !important; letter-spacing: 0; text-align: start; }
html.kbt-msn-tool-local [data-msn-guide-normalized] :is(p:not(.section-kicker), .home-guideline-step small, .home-guideline-note, .msn-tool-step-body, .msn-tool-faq-answer) { max-width: none; color: var(--msn-muted) !important; font: 400 16px/25px var(--msn-font) !important; text-align: justify; text-align-last: start; hyphens: auto; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-guideline-copy > p:not(.section-kicker) { margin: 0 0 20px; padding: 0; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-guideline-steps { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 0 !important; margin: 28px 0 22px; padding: 0; border: 0; border-top: 1px solid var(--msn-line); background: transparent; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-guideline-step { display: grid !important; grid-template-columns: 38px minmax(0, 1fr) !important; gap: 14px !important; align-items: start; box-sizing: border-box; width: 100% !important; max-width: none !important; min-width: 0; margin: 0 !important; padding: 18px 0 !important; border: 0 !important; border-bottom: 1px solid var(--msn-line) !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-guideline-step::before,
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-guideline-step::after { content: none !important; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-guideline-step-number { display: block; margin: 0; padding: 0; color: var(--msn-link) !important; font: 700 .88rem/1.35 var(--msn-font) !important; text-align: start; white-space: nowrap; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-step-body { min-width: 0; max-width: 100%; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-guide-reference.msn-tool-step-body { display: block !important; box-sizing: border-box; width: 100% !important; max-width: none !important; min-width: 0; height: auto; margin: 0 !important; padding: 18px 0 !important; border: 0 !important; border-bottom: 1px solid var(--msn-line) !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-guide-reference::before,
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-guide-reference::after { content: none !important; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-step-title { display: block; margin: 0 0 5px !important; padding: 0; color: var(--msn-ink) !important; font: 600 16px/24px var(--msn-font) !important; letter-spacing: 0; text-align: start; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-guide-grid .msn-tool-guide-subtitle { margin: 18px 0 8px !important; padding: 0; color: var(--msn-ink) !important; font: 600 16px/24px var(--msn-font) !important; letter-spacing: 0; text-align: start; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-guideline-step small { display: block; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-step-body > p { margin: 0 0 12px; padding: 0; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-step-body > :last-child { margin-bottom: 0; }
html.kbt-msn-tool-local [data-msn-guide-normalized] :is(.home-guideline-copy, .home-faq-panel) :is(ul, ol) { margin-block: 10px 12px; padding-inline-start: 22px; color: var(--msn-muted) !important; font: 400 16px/25px var(--msn-font) !important; text-align: justify; text-align-last: start; hyphens: auto; }
html.kbt-msn-tool-local [data-msn-guide-normalized] :is(.home-guideline-copy, .home-faq-panel) li { color: var(--msn-muted) !important; font: 400 16px/25px var(--msn-font) !important; text-align: justify; text-align-last: start; }
html.kbt-msn-tool-local [data-msn-guide-normalized] :is(.msn-tool-step-body, .msn-tool-faq-answer) :is(h4, h5, h6, table, code, pre) { text-align: start; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-faq-list { display: block !important; flex: 0 1 auto !important; margin: 18px 0 0; padding: 0; border: 0; border-top: 1px solid var(--msn-line); background: transparent; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-faq-item { display: block !important; flex: none !important; margin: 0; padding: 0 !important; border: 0; border-bottom: 1px solid var(--msn-line); border-radius: 0; background: transparent !important; box-shadow: none; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-faq-item > summary { position: relative; display: block; margin: 0; padding: 16px 0; padding-inline-end: 32px; list-style: none; cursor: pointer; color: var(--msn-ink) !important; font: 600 16px/24px var(--msn-font) !important; text-align: start; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-faq-item[open] > summary { padding-bottom: 8px; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-faq-item > summary::-webkit-details-marker { display: none; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-faq-item > summary::marker { content: ''; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-faq-item > summary::after { content: '+'; position: absolute; top: 18px; left: auto; right: auto; inset-inline-end: 4px; float: none; margin: 0; color: var(--msn-link); font: 400 19.2px/1 var(--msn-font); }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-faq-item[open] > summary::after { content: '-'; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-faq-answer { padding: 0 0 16px; padding-inline-end: 32px; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-faq-answer p { margin: 0 0 12px; padding: 0 !important; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-faq-answer > :last-child { margin-bottom: 0; }
html.kbt-msn-tool-local [data-msn-guide-normalized] .home-faq-item > summary:focus-visible { outline: 2px solid var(--msn-link); outline-offset: 2px; }
html.kbt-msn-tool-local [data-msn-guide-normalized] a { color: var(--msn-link); overflow-wrap: anywhere; }
html.kbt-msn-tool-local [data-msn-guide-normalized] :is(pre, .table-wrap, .table-responsive) { max-width: 100%; overflow-x: auto; }
html.kbt-msn-tool-local [data-msn-guide-normalized] [hidden] { display: none !important; }
html.kbt-msn-tool-local .msn-tool-category-blog { box-sizing: border-box; width: min(100% - 32px, var(--msn-tool-width)); margin: 32px auto; padding-top: 16px; border-top: 1px solid var(--msn-muted); }
html.kbt-msn-tool-local .msn-tool-reading > .msn-tool-category-blog { padding-inline: 0 !important; }
html.kbt-msn-tool-local body .msn-tool-category-blog > .msn-blog-category { padding-top: 0 !important; border-top: 0 !important; }
/* The webcam preview stays black in both themes, so its placeholder needs light text. */
html.kbt-msn-tool-local #wc-videoContainer #wc-placeholder,
html.kbt-msn-tool-local #wc-videoContainer #wc-placeholder p { color: #dedede !important; }
html.kbt-msn-tool-local .msn-tool-guide-jump { box-sizing: border-box; display: flex; justify-content: flex-end; width: min(100% - 32px, var(--msn-tool-width)); margin: 0 auto 12px; }
html.kbt-msn-tool-local .msn-tool-guide-jump a { display: inline-flex; align-items: center; min-height: 44px; gap: 7px; color: var(--msn-link); font: 600 14px/22px var(--msn-font); text-decoration: none; }
html.kbt-msn-tool-local .msn-tool-guide-jump a:is(:hover, :focus-visible) { text-decoration: underline; }
html.kbt-msn-tool-local .msn-tool-guide-jump a:focus-visible { outline: 2px solid var(--msn-link); outline-offset: 3px; }

/* Fill sparse category rows without adding unrelated tools or empty cells. */
html.kbt-msn-tool-local .msn-tool-discovery .msn-feed-row:is([data-msn-row-card-count="1"], [data-msn-row-card-count="2"]) { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(0, 1fr); }
html.kbt-msn-tool-local .msn-tool-discovery .msn-feed-row:is([data-msn-row-card-count="1"], [data-msn-row-card-count="2"]) > * { grid-column: auto; }
html.kbt-msn-tool-local .msn-tool-discovery .msn-feed-row:is([data-msn-row-card-count="1"], [data-msn-row-card-count="2"]) .msn-feed-card-link { height: 304px; }
html.kbt-msn-tool-local .msn-tool-discovery .msn-feed-row:is([data-msn-row-card-count="1"], [data-msn-row-card-count="2"]) .msn-feed-card-media { position: absolute; inset: 0; aspect-ratio: auto; z-index: -2; }
html.kbt-msn-tool-local .msn-tool-discovery .msn-feed-row:is([data-msn-row-card-count="1"], [data-msn-row-card-count="2"]) .msn-feed-card-link::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, transparent 20%, #0005 45%, #000e 100%); }
html.kbt-msn-tool-local .msn-tool-discovery .msn-feed-row:is([data-msn-row-card-count="1"], [data-msn-row-card-count="2"]) .msn-feed-card-copy { flex: 0 1 auto; margin-top: auto; padding: 18px; color: #fff; }
html.kbt-msn-tool-local .msn-tool-discovery .msn-feed-row:is([data-msn-row-card-count="1"], [data-msn-row-card-count="2"]) .msn-feed-card-copy h3 { max-width: 50ch; font-size: 23px; line-height: 30px; }
html.kbt-msn-tool-local .msn-tool-discovery .msn-feed-row:is([data-msn-row-card-count="1"], [data-msn-row-card-count="2"]) :is(.msn-feed-card-category, .msn-feed-card-category > span, .msn-feed-card-cta, .msn-feed-rating-meta) { color: #fff; }
html.kbt-msn-tool-local .msn-tool-discovery .msn-feed-row:is([data-msn-row-card-count="1"], [data-msn-row-card-count="2"]) .msn-feed-rating-stars > span { color: #ffbf47; }
html.kbt-msn-tool-local .msn-tool-category-blog[data-msn-blog-count="1"] .msn-blog-grid { grid-template-columns: minmax(0, 1fr); grid-template-rows: 340px; }
html.kbt-msn-tool-local .msn-tool-category-blog[data-msn-blog-count="1"] .msn-blog-card--lead { grid-column: 1; grid-row: 1; min-height: 0; }
@media (min-width: 601px) {
    html.kbt-msn-tool-local .msn-tool-discovery .msn-feed-row[data-msn-row-card-count="2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    html.kbt-msn-tool-local .msn-tool-category-blog[data-msn-blog-count="2"] .msn-blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: 340px; }
    html.kbt-msn-tool-local .msn-tool-category-blog[data-msn-blog-count="2"] .msn-blog-card { grid-column: auto; grid-row: 1; min-height: 0; }
    html.kbt-msn-tool-local .msn-tool-category-blog[data-msn-blog-count="2"] .msn-blog-card-link { display: block; padding: 0; }
    html.kbt-msn-tool-local .msn-tool-category-blog[data-msn-blog-count="2"] .msn-blog-card-media { position: absolute; inset: 0; height: 100%; border-radius: 0; }
    html.kbt-msn-tool-local .msn-tool-category-blog[data-msn-blog-count="2"] .msn-blog-card-link::after { display: block; }
    html.kbt-msn-tool-local .msn-tool-category-blog[data-msn-blog-count="2"] .msn-blog-card-copy { position: absolute; inset: auto 0 0; padding: 18px; color: #fff; text-shadow: 0 1px 4px #0008; }
    html.kbt-msn-tool-local .msn-tool-category-blog[data-msn-blog-count="2"] .msn-blog-card-copy h3 { font-size: 24px; line-height: 31px; }
    html.kbt-msn-tool-local .msn-tool-category-blog[data-msn-blog-count="2"] :is(.msn-blog-card-source, .msn-blog-card-meta) { color: #ededed; }
}

@media (min-width: 1051px) {
    html.kbt-msn-tool-local body .landing-main .msn-tool-intro .home-hero .home-banner-media,
    html.kbt-msn-tool-local body .landing-main .msn-tool-intro .msn-tool-intro-media { height: 90px !important; }
    html.kbt-msn-tool-local .msn-tool-intro-card { min-height: 250px; }
    html.kbt-msn-tool-local .msn-tool-intro .msn-local-ad-slot { min-height: 250px; }
    html.kbt-msn-tool-local body .landing-main .msn-tool-intro .msn-tool-intro-lede { -webkit-line-clamp: 2; }
    html.kbt-msn-tool-local body .landing-main .msn-tool-intro--compact .home-banner-content { padding: 10px 14px !important; }
    html.kbt-msn-tool-local body .landing-main .msn-tool-intro--compact h1.msn-tool-intro-title { font-size: 21px !important; }
    html.kbt-msn-tool-local body .landing-main .msn-tool-intro--compact .home-hero .home-banner-media { height: 70px !important; }
}
@media (max-width: 800px) {
    html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-guide-grid { grid-template-columns: minmax(0, 1fr) !important; }
    html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-guide-grid > :is(.home-guideline-copy, .home-faq-panel) { padding: 20px !important; }
    html.kbt-msn-tool-local .msn-tool-guide-block,
    html.kbt-msn-tool-local .msn-tool-guide-section { scroll-margin-top: 124px; }
    html.kbt-msn-tool-local [data-msn-guide-normalized] :is(div, section, article, aside).msn-tool-guide-source[id]:not(.home-guideline-steps) { scroll-margin-top: 124px; }
    html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-guide-grid .msn-tool-faq-anchor.msn-tool-guide-source { scroll-margin-top: 124px; }
}
@media (max-width: 480px) {
    html.kbt-msn-tool-local [data-msn-guide-normalized] .msn-tool-guide-grid > :is(.home-guideline-copy, .home-faq-panel) { padding: 16px !important; }
}

/* Localized keyboard homepage uses the same control skin; original labels and nodes stay intact. */
html.kbt-msn-tool-local #keyboard-home :is(.keyboard-container, #keyboard-controls, .feature-controls) { width: 100%; max-width: none; }
/* Compact homepage controls, using the same neutral surfaces as the cards. */
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls { --control-height: 88px; min-height: 0; padding: 8px; gap: 10px; border-color: var(--msn-line); border-radius: var(--msn-radius); background: var(--msn-card); color: var(--msn-ink); box-shadow: none; }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls .textarea-wrapper { height: var(--control-height); border-color: var(--msn-line); border-radius: 4px; background: var(--msn-bg); }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls .textarea-label { display: none; }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls .text-box { height: 100%; min-height: 0; padding: 10px 12px; background: var(--msn-bg); color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls .text-box:focus { background: var(--msn-bg); box-shadow: inset 0 0 0 2px var(--msn-link); }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls .text-box::placeholder { color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls :is(.select-wrapper, .reset-button) { border-color: var(--msn-line); border-radius: 4px; background: var(--msn-bg); color: var(--msn-ink); box-shadow: none; }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls .select-wrapper { padding: 3px 8px; gap: 2px; }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls .select-wrapper label { color: var(--msn-muted); }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls .select-wrapper select { min-height: 20px; color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls .select-wrapper option { background: var(--msn-bg); color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls .reset-button:hover { border-color: var(--msn-muted); background: var(--msn-hover); color: var(--msn-ink); }
html.kbt-msn-tool-local .msn-local-hero-row ~ #keyboard-home #keyboard-controls .advanced-toggle-btn { border-radius: 4px; }

/* Advanced diagnostics follow the page theme independently of the keycap theme. */
html.kbt-msn-tool-local body.home-redesign #keyboard-home :is(#feature-controls, .stats-panel) {
    --bg-primary: var(--msn-bg);
    --bg-secondary: var(--msn-card);
    --bg-tertiary: var(--msn-raised);
    --key-text: var(--msn-ink);
    --key-border: var(--msn-line);
    --text-primary: var(--msn-ink);
    --text-secondary: var(--msn-muted);
    --text-muted: var(--msn-muted);
    --border-subtle: var(--msn-line);
    --accent-primary: var(--msn-link);
    --accent-success: #64d996;
    --accent-warning: #ffd166;
    --accent-danger: #ff8a8a;
    --glow-color: transparent;
    color: var(--msn-ink);
    font-family: var(--msn-font);
    border-color: var(--msn-line);
    border-radius: var(--msn-radius);
    background: var(--msn-card);
    box-shadow: none;
}
html.kbt-msn-tool-local[data-kbt-msn-theme="light"] body.home-redesign #keyboard-home :is(#feature-controls, .stats-panel) {
    --accent-success: #167044;
    --accent-warning: #8a5700;
    --accent-danger: #b42318;
}
html.kbt-msn-tool-local body.home-redesign #keyboard-home #feature-controls .feature-button { border-color: var(--msn-line); background: var(--msn-bg); color: var(--msn-ink); }
html.kbt-msn-tool-local body.home-redesign #keyboard-home #feature-controls .feature-button:hover { border-color: var(--msn-muted); background: var(--msn-hover); color: var(--msn-ink); }
html.kbt-msn-tool-local body.home-redesign #keyboard-home #feature-controls .feature-button.active { border-color: #0067b8; background: #0067b8; color: #fff; }
html.kbt-msn-tool-local body.home-redesign #keyboard-home .stats-panel :is(.status-indicator, .status-indicator span) { color: var(--msn-ink); }
html.kbt-msn-tool-local body.home-redesign #keyboard-home .stats-panel .info-text { color: var(--msn-muted); }
html.kbt-msn-tool-local body.home-redesign #keyboard-home .stats-panel .big-latency { background: none; background-clip: border-box; -webkit-background-clip: border-box; -webkit-text-fill-color: currentColor; color: var(--msn-link); }
html.kbt-msn-tool-local body.home-redesign #keyboard-home .stats-panel :is(.stat-item, .log-container, .rating-box, .action-btn, .close-btn) { border-radius: var(--msn-radius); }
html.kbt-msn-tool-local body.home-redesign #keyboard-home .stats-panel .info-box { background: var(--msn-raised); }
html.kbt-msn-tool-local body.home-redesign #keyboard-home .stats-panel .action-btn.primary { border-color: #0067b8; background: #0067b8; color: #fff; box-shadow: none; }
html.kbt-msn-tool-local body.home-redesign #keyboard-home :is(#feature-controls, .stats-panel) :is(button, summary):focus-visible { outline: 2px solid var(--msn-link); outline-offset: 3px; }
html.kbt-msn-tool-local body.home-redesign #keyboard-home #adv-pro-panel {
    --pn-bg: var(--msn-card);
    --pn-bg-card: var(--msn-bg);
    --pn-bg-elev: var(--msn-raised);
    --pn-border: var(--msn-line);
    --pn-border-2: var(--msn-muted);
    --pn-text: var(--msn-ink);
    --pn-text-2: var(--msn-muted);
    --pn-text-3: var(--msn-muted);
    --pn-accent: var(--msn-link);
    --pn-accent-2: var(--msn-link);
    --pn-accent-soft: var(--msn-raised);
    --pn-success: var(--accent-success);
    --pn-success-soft: rgba(62, 207, 142, .1);
    --pn-danger: var(--accent-danger);
    --pn-danger-soft: rgba(239, 68, 68, .1);
    --pn-r-lg: var(--msn-radius);
    --pn-r: var(--msn-radius);
    --pn-r-sm: 4px;
    --pn-shadow: none;
    --pn-shadow-lg: none;
}
html.kbt-msn-tool-local body.home-redesign #keyboard-home #adv-pro-panel .adv-preset-active { background: #0067b8; color: #fff; }


/* Localized keyboard trust panel shares the existing widget and ad clearance. */
/* One existing inline ad, with the genuine usage and rating widgets beside it. */
html.kbt-msn-tool-local #keyboard-home .msn-local-ad-trust-row { order: 16; display: grid; grid-template-columns: minmax(0, 1fr); align-items: center; gap: 16px; width: 100%; margin: 12px 0 0; }
html.kbt-msn-tool-local #keyboard-home .msn-local-ad-trust-row > .kbt-keyboard-inline-surface { order: 0; width: min(970px, 100%); margin: 0 auto; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust { box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-width: 0; min-height: 90px; padding: 10px 8px; border: 1px solid var(--msn-line); border-radius: var(--msn-radius); background: var(--msn-card); color: var(--msn-ink); }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust :is(.kbt-usage-row, .kbt-rating-row) { width: 100%; margin: 0 !important; padding: 0 !important; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust .kbt-usage { white-space: nowrap; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust .kbt-rating { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; border: 0; background: transparent; color: var(--msn-ink); font: 500 13px/20px var(--msn-font); white-space: nowrap; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust .kbt-rating-label { flex: 0 0 auto; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust .kbt-rating-star { font-size: 20px; padding: 0; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust .kbt-rating-meta { gap: 4px; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust .kbt-rating-avg { font-size: 13px; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust .kbt-rating-count { font-size: 12px; }
html.kbt-msn-tool-local body.home-redesign #keyboard-home .msn-local-trust .kbt-rating-prompt { display: none; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust :is(.kbt-rating-prompt, .kbt-rating-thanks) { flex-basis: 100%; white-space: normal; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust .msn-local-rating-feedback-link { display: inline-block; margin-inline-start: 4px; color: var(--msn-link); text-decoration: underline; text-underline-offset: 2px; white-space: nowrap; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust .msn-local-rating-feedback-link:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; border-radius: 2px; }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust :is(.kbt-rating-label, .kbt-rating-avg, .kbt-rating-prompt, .kbt-usage b) { color: var(--msn-ink); }
html.kbt-msn-tool-local #keyboard-home .msn-local-trust :is(.kbt-rating-count, .kbt-usage) { color: var(--msn-muted); }
@media (min-width: 1281px) {
    html.kbt-msn-tool-local #keyboard-home .msn-local-ad-trust-row { grid-template-columns: 970px minmax(0, 1fr); gap: 24px; }
    html.kbt-msn-tool-local #keyboard-home .msn-local-ad-trust-row > .kbt-keyboard-inline-surface { margin: 0; }
}

html.kbt-msn-tool-local #keyboard-home .msn-local-ad-trust-row { padding-bottom: 17px; }

