    :root {
      color-scheme: dark;
      --background: 240 15% 6%;
      --foreground: 220 15% 95%;
      --card: 240 15% 8%;
      --primary: 217 92% 65%;
      --primary-hover: 217 92% 72%;
      --primary-foreground: 240 15% 6%;
      --secondary: 240 10% 18%;
      --muted: 240 10% 15%;
      --muted-foreground: 240 8% 65%;
      --accent: 142 76% 45%;
      --border: 240 10% 20%;
      --input: 240 10% 18%;
      --ring: 217 92% 65%;
    }
    html[data-theme="light"] {
      color-scheme: light;
      --background: 220 13% 97%;
      --foreground: 240 15% 8%;
      --card: 220 20% 98%;
      --primary: 217 92% 56%;
      --primary-hover: 217 92% 48%;
      --primary-foreground: 0 0% 100%;
      --secondary: 220 15% 92%;
      --muted: 220 16% 94%;
      --muted-foreground: 240 8% 42%;
      --accent: 142 76% 36%;
      --border: 220 15% 88%;
      --input: 0 0% 100%;
      --ring: 217 92% 56%;
    }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      background: hsl(var(--background));
      color: hsl(var(--foreground));
      font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
      line-height: 1.5;
      -webkit-font-smoothing: antialiased;
    }
    a { color: inherit; text-decoration: none; }
    button, input, select { font: inherit; color: inherit; }
    button { cursor: pointer; }
    svg { display: block; }

    .site-header { position: fixed; inset: 0 0 auto 0; z-index: 50; height: 6rem; border-bottom: 1px solid hsl(var(--border)); background: hsl(var(--background)); box-shadow: 0 10px 30px rgba(0,0,0,.18); }
    .header-inner { height: 100%; display: flex; align-items: center; gap: 1.5rem; padding: 0 2rem 0 1.5rem; }
    .mobile-menu { display: none; width: 2.75rem; height: 2.75rem; align-items: center; justify-content: center; border: 1px solid hsl(var(--border)); border-radius: .75rem; background: hsl(var(--card)); color: hsl(var(--muted-foreground)); }
    .brand-zone { flex: 1; display: flex; justify-content: flex-start; min-width: 0; margin-left: 20rem; }
    .brand { display: inline-flex; align-items: center; gap: 1rem; min-width: 0; }
    .brand-mark-wrap { position: relative; flex: 0 0 auto; }
    .brand-mark-glow { position: absolute; inset: 0; border-radius: 1rem; background: linear-gradient(90deg, #3b82f6, #06b6d4); filter: blur(14px); opacity: .25; }
    .brand-mark { position: relative; display: grid; place-items: center; width: 4rem; height: 4rem; border-radius: 1rem; background: linear-gradient(90deg, #3b82f6, #06b6d4); color: #fff; box-shadow: 0 10px 25px rgba(59,130,246,.18); }
    .brand-spark { position: absolute; top: .35rem; right: .35rem; color: rgba(255,255,255,.65); }
    .brand-title { margin: 0; max-width: 24rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 1.5rem; line-height: 2rem; font-weight: 800; letter-spacing: -.025em; background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)), hsl(var(--primary))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .brand-subtitle { display: flex; align-items: center; gap: .25rem; margin: 0; max-width: 28rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: hsl(var(--muted-foreground)); font-size: .875rem; font-weight: 500; letter-spacing: .025em; }
    .header-nav { display: flex; align-items: center; gap: .7rem; flex: 0 0 auto; }
    .nav-link, .nav-button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 2.75rem; border: 0; border-radius: .5rem; background: transparent; color: hsl(var(--foreground) / .72); padding: .625rem .9rem; font-size: 1rem; font-weight: 700; transition: background .18s ease, color .18s ease; }
    .nav-link:hover, .nav-button:hover { color: hsl(var(--primary)); background: hsl(var(--primary) / .08); }
    .donate-link { border: 1px solid hsl(var(--primary) / .3); border-radius: .85rem; background: linear-gradient(90deg, hsl(var(--primary) / .16), hsl(var(--accent) / .12)); color: hsl(var(--foreground)); }
    .tools-menu { position: relative; }
    .tools-menu.open .tools-dropdown { display: grid; }
    .tools-dropdown { position: absolute; left: 0; top: calc(100% + .75rem); z-index: 60; display: none; width: min(390px, 92vw); max-height: min(76vh, 720px); overflow-y: auto; gap: .3rem; border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(var(--card)); padding: 1rem; box-shadow: 0 24px 70px rgba(0,0,0,.28); }
    .tools-dropdown-title { margin: 0 0 .45rem; color: hsl(var(--muted-foreground)); font-size: .78rem; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
    .tools-dropdown-item { display: flex; align-items: center; gap: .85rem; width: 100%; min-height: 3.2rem; border: 0; border-radius: .8rem; background: transparent; color: hsl(var(--foreground)); padding: .65rem .7rem; font: inherit; font-size: 1rem; font-weight: 400; text-align: left; cursor: pointer; }
    .tools-dropdown-item:hover { background: hsl(var(--primary) / .08); color: hsl(var(--primary)); }
    .icon-badge { width: 2.1rem; height: 2.1rem; display: grid; place-items: center; flex: 0 0 auto; border-radius: .7rem; background: hsl(var(--primary) / .12); color: hsl(var(--primary)); }
    .icon-badge.green { background: hsl(148 84% 42% / .12); color: hsl(148 84% 42%); }
    .icon-badge.purple { background: hsl(270 91% 65% / .12); color: hsl(270 91% 65%); }
    .icon-badge.orange { background: hsl(28 92% 50% / .12); color: hsl(28 92% 50%); }
    .menu-icon { width: 2.35rem; height: 2.35rem; display: grid; place-items: center; flex: 0 0 auto; border-radius: .75rem; background: hsl(var(--primary) / .12); color: hsl(var(--primary)); }
    .menu-icon svg { width: 1.22rem; height: 1.22rem; stroke-width: 2.15; }
    .menu-icon.blue { background: hsl(217 91% 60% / .14); color: hsl(217 91% 62%); }
    .menu-icon.purple { background: hsl(270 91% 65% / .14); color: hsl(270 91% 68%); }
    .menu-icon.orange { background: hsl(28 92% 50% / .14); color: hsl(28 92% 54%); }
    .menu-icon.green { background: hsl(148 84% 42% / .14); color: hsl(148 84% 44%); }
    .menu-icon.teal { background: hsl(173 80% 42% / .14); color: hsl(173 80% 44%); }
    .menu-icon.red { background: hsl(0 84% 60% / .14); color: hsl(0 84% 64%); }
    .menu-icon.pink { background: hsl(330 81% 60% / .14); color: hsl(330 81% 64%); }
    .menu-icon.gold { background: hsl(48 96% 53% / .14); color: hsl(48 96% 53%); }
    .segmented { display: inline-flex; align-items: center; gap: .2rem; padding: .2rem; border: 1px solid hsl(var(--border)); border-radius: .75rem; background: hsl(var(--card)); }
    .segmented button { min-width: 2.45rem; min-height: 2.1rem; border: 0; border-radius: .55rem; background: transparent; color: hsl(var(--muted-foreground)); font-weight: 900; }
    .segmented button.active { background: hsl(var(--primary)); color: hsl(var(--primary-foreground)); }
    .language-menu-wrap { position: relative; }
    .language-button { min-width: 3.2rem; min-height: 2.45rem; border: 1px solid hsl(var(--border)); border-radius: .65rem; background: hsl(var(--card)); color: hsl(var(--foreground)); font-weight: 700; display: inline-flex; align-items: center; justify-content: center; gap: .4rem; cursor: pointer; }
    .language-button svg { width: .9rem; height: .9rem; color: hsl(var(--muted-foreground)); }
    .language-menu { position: absolute; right: 0; top: calc(100% + .6rem); z-index: 70; display: none; width: min(255px, 86vw); border: 1px solid hsl(var(--border)); border-radius: .85rem; background: hsl(var(--card)); padding: .55rem; box-shadow: 0 24px 60px rgba(0,0,0,.34); }
    .language-menu-wrap.open .language-menu { display: grid; }
    .language-option { width: 100%; border: 0; border-radius: .65rem; background: transparent; color: hsl(var(--foreground)); padding: .62rem .7rem; display: grid; grid-template-columns: 2.35rem 1fr 1rem; align-items: center; gap: .35rem; text-align: left; cursor: pointer; font-size: .92rem; }
    .language-option:hover { background: hsl(var(--primary) / .08); }
    .language-code { font-weight: 700; letter-spacing: .02em; }
    .language-name { color: hsl(var(--muted-foreground)); font-weight: 400; }
    .language-check { color: hsl(var(--primary)); opacity: 0; }
    .language-option.active .language-check { opacity: 1; }
    .language-option.disabled { opacity: .58; cursor: default; }
    .language-option.disabled:hover { background: transparent; }
    .theme-menu { position: relative; }
    .theme-popover { position: absolute; right: 0; top: calc(100% + .5rem); display: none; min-width: 170px; border: 1px solid hsl(var(--border)); border-radius: .85rem; background: hsl(var(--card)); padding: .35rem; box-shadow: 0 18px 40px rgba(0,0,0,.22); }
    .theme-menu.open .theme-popover { display: grid; }
    .theme-popover button { border: 0; border-radius: .65rem; background: transparent; padding: .7rem .85rem; text-align: left; font-weight: 800; color: hsl(var(--muted-foreground)); }
    .theme-popover button:hover, .theme-popover button.active { background: hsl(var(--primary) / .1); color: hsl(var(--primary)); }

    .sidebar { position: fixed; left: 0; top: 6rem; bottom: 0; z-index: 30; width: 20rem; overflow-y: auto; border-right: 1px solid hsl(var(--border)); background: hsl(var(--background)); box-shadow: 10px 0 30px rgba(0,0,0,.1); transition: width .22s ease, transform .22s ease; }
    .sidebar-inner { padding: 1.5rem; }
    .sidebar-toggle { width: 100%; display: flex; align-items: center; justify-content: center; gap: .5rem; margin-bottom: 1rem; border: 1px solid hsl(var(--border)); border-radius: .85rem; background: hsl(var(--card) / .65); color: hsl(var(--muted-foreground)); padding: .7rem; font-weight: 900; }
    .sidebar-group { margin-bottom: 1.15rem; }
    .group-head { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: .85rem; padding: 1.05rem 1.15rem; border: 1px solid hsl(var(--border)); border-radius: 1.15rem; background: hsl(var(--card) / .52); color: hsl(var(--foreground)); }
    .group-left { display: flex; align-items: center; gap: .9rem; min-width: 0; }
    .group-icon { width: 2.65rem; height: 2.65rem; display: grid; place-items: center; flex: 0 0 auto; border-radius: .9rem; color: #fff; background: linear-gradient(135deg, #3b82f6, #06b6d4); box-shadow: 0 10px 30px hsl(var(--primary) / .18); }
    .group-icon.green { background: linear-gradient(135deg, #fb7185, #f472b6); }
    .group-icon.purple { background: linear-gradient(135deg, #22c55e, #10b981); }
    .group-icon svg { width: 1.3rem; height: 1.3rem; }
    .group-title { overflow: visible; text-overflow: clip; white-space: normal; font-size: .98rem; font-weight: 650; text-align: left; line-height: 1.25; overflow-wrap: anywhere; }
    .group-title, .side-title, .sidebar-toggle span, .group-head > span:last-child, .quick-access-title, .quick-access .side-title, .sidebar-brand-pill span { transition: opacity .2s ease, max-width .22s ease, transform .22s ease, visibility .2s ease; }
    .sidebar-list { display: grid; gap: .58rem; margin-top: .8rem; padding-left: 1rem; transition: max-height .2s ease, opacity .2s ease; }
    .sidebar-group.collapsed .sidebar-list { max-height: 0; overflow: hidden; opacity: 0; }
    .side-item { width: 100%; display: flex; align-items: center; gap: .9rem; min-height: 3.15rem; padding: .55rem .7rem; border: 0; border-radius: .95rem; background: transparent; color: hsl(var(--foreground) / .82); text-align: left; text-decoration: none; transition: background .18s ease, color .18s ease, transform .18s ease; }
    .side-item:hover, .side-item.active { background: hsl(var(--primary) / .08); color: hsl(var(--primary)); transform: translateX(.1rem); }
    .side-icon { width: 2.25rem; height: 2.25rem; display: grid; place-items: center; flex: 0 0 auto; border-radius: .75rem; color: var(--side-color, #60a5fa); background: color-mix(in srgb, var(--side-color, #60a5fa) 17%, transparent); }
    .side-icon svg { width: 1.18rem; height: 1.18rem; }
    .side-title { display: block; font-size: .97rem; font-weight: 600; color: inherit; line-height: 1.2; }
    .side-desc { display: none; }
    .quick-access { margin-top: 1.35rem; padding-top: 1.15rem; border-top: 1px solid hsl(var(--border)); }
    .quick-access-title { display: flex; align-items: center; gap: .5rem; margin: 0 0 .75rem; color: hsl(var(--foreground)); font-size: .86rem; text-transform: uppercase; letter-spacing: .04em; font-weight: 650; }
    .quick-access-title svg { width: 1rem; height: 1rem; color: hsl(var(--muted-foreground)); }
    .quick-access .sidebar-list { padding-left: 0; margin-top: 0; gap: .5rem; }
    .sidebar-brand-pill { margin: 1.25rem auto 0; display: inline-flex; align-items: center; justify-content: center; gap: .55rem; width: 100%; min-height: 2.8rem; border: 1px solid hsl(var(--border)); border-radius: 999px; background: linear-gradient(90deg, hsl(var(--primary) / .10), hsl(var(--accent) / .07)); color: hsl(var(--muted-foreground)); text-decoration: none; }
    .sidebar-brand-pill .mini-brand-icon { width: 1.4rem; height: 1.4rem; color: hsl(var(--primary)); }

    .page { min-height: 100vh; display: flex; flex-direction: column; padding-top: 6rem; padding-left: 20rem; transition: padding-left .22s ease; }
    body.sidebar-collapsed .sidebar { width: 5.6rem; }
    body.sidebar-collapsed .page { padding-left: 5.6rem; }
    body.sidebar-collapsed .sidebar-inner { padding: 1rem .7rem; }
    body.sidebar-collapsed .group-title, body.sidebar-collapsed .side-title, body.sidebar-collapsed .quick-access-title span, body.sidebar-collapsed .sidebar-brand-pill span, body.sidebar-collapsed .sidebar-toggle span, body.sidebar-collapsed .group-head > span:last-child { opacity: 0; max-width: 0; overflow: hidden; visibility: hidden; transform: translateX(-.35rem); white-space: nowrap; }
    body.sidebar-collapsed .sidebar-toggle, body.sidebar-collapsed .group-head { width: 3.65rem; min-height: 3.65rem; margin-left: auto; margin-right: auto; padding: 0; justify-content: center; }
    body.sidebar-collapsed .side-item { width: 3.45rem; min-height: 3.45rem; margin-left: auto; margin-right: auto; padding: 0; justify-content: center; }
    body.sidebar-collapsed .group-left { width: auto; flex: 0 0 auto; justify-content: center; gap: 0; }
    body.sidebar-collapsed .group-icon, body.sidebar-collapsed .side-icon { margin: 0; }
    body.sidebar-collapsed .sidebar-list { padding-left: 0; justify-items: center; }
    body.sidebar-collapsed .quick-access-title { justify-content: center; }
    body.sidebar-collapsed .sidebar-brand-pill { width: 3.15rem; margin-left: auto; margin-right: auto; }
    .main { order: 1; flex: 1; padding: 2rem; background: hsl(var(--background)); }
    .container { width: 100%; max-width: 80rem; margin: 0 auto; }
    .hero, .section, .checker-card, .result-card { border: 1px solid hsl(var(--border)); border-radius: 1.5rem; background: hsl(var(--card) / .82); box-shadow: 0 18px 44px rgba(0,0,0,.12); }
    .hero { position: relative; overflow: hidden; margin-bottom: 4rem; padding: 2rem; background: radial-gradient(circle at 0% 0%, hsl(var(--primary) / .18), transparent 34rem), radial-gradient(circle at 100% 100%, hsl(var(--accent) / .12), transparent 34rem), linear-gradient(135deg, hsl(var(--card) / .95), hsl(var(--card) / .68)); }
    .home-hero { min-height: 560px; display: grid; place-items: center; text-align: center; padding: clamp(3rem, 8vw, 6rem) 2rem; }
    .home-hero .hero-grid { display: block; max-width: 980px; margin: 0 auto; }
    .home-hero .hero-text { max-width: 850px; margin-left: auto; margin-right: auto; font-size: clamp(1.05rem, 2vw, 1.35rem); }
    .home-hero .hero-actions { justify-content: center; }
    .home-hero .hero-panel { display: none; }
    .about-hero { text-align: center; padding: clamp(3rem, 7vw, 5rem) 2rem; }
    .about-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
    .about-card { border: 1px solid hsl(var(--border)); border-radius: 1.15rem; background: hsl(var(--card) / .72); padding: 1.25rem; }
    .tool-page .home-only { display: none !important; }
    .tool-page :where(.home-popular.home-only, .home-why.home-only, #tools.home-only, .home-hero.home-only) { display: none !important; }
    .hero-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr); gap: 2rem; align-items: center; }
    .badge { display: inline-flex; align-items: center; gap: .5rem; margin-bottom: 1.5rem; border: 1px solid hsl(var(--primary) / .2); border-radius: 999px; background: hsl(var(--primary) / .1); color: hsl(var(--primary)); padding: .5rem 1rem; font-size: .875rem; font-weight: 800; }
    .hero-title { margin: 0; font-size: clamp(3rem, 6vw, 4.8rem); line-height: .96; letter-spacing: -.055em; font-weight: 900; background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)), hsl(var(--primary))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .hero-text, .section-text { color: hsl(var(--muted-foreground)); font-size: 1.125rem; line-height: 1.75rem; }
    .hero-text { max-width: 47rem; margin: 1.5rem 0 0; }
    .hero-actions { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2rem; }
    .btn-primary, .btn-secondary, .small-button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 3rem; border-radius: .75rem; padding: .75rem 1.5rem; font-weight: 800; border: 1px solid transparent; transition: transform .18s ease, background .18s ease, border-color .18s ease; }
    .btn-primary { background: hsl(var(--primary)); color: hsl(var(--primary-foreground)); box-shadow: 0 10px 24px hsl(var(--primary) / .22); }
    .btn-primary:hover { background: hsl(var(--primary-hover)); transform: translateY(-1px); }
    .btn-secondary, .small-button { background: hsl(var(--secondary)); color: hsl(var(--foreground)); border-color: hsl(var(--border)); }
    .hero-panel { border: 1px solid hsl(var(--border)); border-radius: 1.5rem; background: hsl(var(--card) / .86); padding: 1.5rem; }
    .ip-line { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .75rem; }
    .label { color: hsl(var(--muted-foreground)); font-size: .875rem; font-weight: 700; }
    .ip-value { margin: 0; color: hsl(var(--foreground)); font-size: clamp(1.55rem, 3vw, 2.25rem); line-height: 1.15; font-weight: 900; word-break: break-word; }
    .stat-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .75rem; margin-top: 1rem; }
    .stat { border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(var(--muted) / .6); padding: 1rem; }
    .stat strong { display: block; margin-top: .25rem; font-size: 1rem; }
    .section { margin-bottom: 4rem; padding: 1.5rem; }
    .section-head { max-width: 48rem; margin: 0 auto 2rem; text-align: center; }
    .kicker { display: inline-flex; margin-bottom: 1rem; color: hsl(var(--primary)); font-size: .875rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
    .section-title { margin: 0; color: hsl(var(--foreground)); font-size: clamp(2rem, 4vw, 3rem); line-height: 1; font-weight: 850; letter-spacing: -.035em; }
    .tools-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
    .tool-card { min-height: 210px; display: flex; flex-direction: column; align-items: flex-start; border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(var(--card) / .72); padding: 1.5rem; color: inherit; text-align: left; transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease; }
    .tool-card:hover { transform: translateY(-4px); border-color: hsl(var(--primary) / .45); background: hsl(var(--card)); }
    .tool-icon { width: 3.5rem; height: 3.5rem; display: grid; place-items: center; margin-bottom: 1rem; border-radius: 1rem; background: linear-gradient(90deg, #3b82f6, #06b6d4); color: #fff; }
    .tool-icon.green { background: linear-gradient(90deg, #22c55e, #10b981); }
    .tool-icon.purple { background: linear-gradient(90deg, #8b5cf6, #ec4899); }
    .tool-icon.orange { background: linear-gradient(90deg, #f59e0b, #ef4444); }
    .tool-icon svg { width: 1.65rem; height: 1.65rem; }
    .tool-card h3 { margin: 0 0 .5rem; font-size: 1.25rem; line-height: 1.75rem; font-weight: 800; }
    .tool-card p { margin: 0; color: hsl(var(--muted-foreground)); font-size: .95rem; line-height: 1.55rem; }
    .home-popular { margin: -2.25rem 0 4rem; border: 0; background: transparent; box-shadow: none; padding: 0; }
    .home-popular .section-title, .home-why .section-title { text-align: center; font-weight: 620; }
    .home-popular-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.35rem; }
    .home-popular-card { display: grid; grid-template-columns: 4.1rem minmax(0,1fr); align-items: center; gap: 1.15rem; min-height: 8.1rem; border: 1px solid hsl(var(--primary) / .35); border-radius: 1.05rem; background: linear-gradient(135deg, hsl(var(--card) / .92), hsl(var(--primary) / .08)); padding: 1.2rem 1.35rem; color: hsl(var(--foreground)); overflow: hidden; transition: transform .18s ease, border-color .18s ease, background .18s ease; }
    .home-popular-card:hover { transform: translateY(-3px); border-color: hsl(var(--primary) / .72); background: linear-gradient(135deg, hsl(var(--card)), hsl(var(--primary) / .14)); }
    .home-popular-card.purple { border-color: hsl(267 84% 62% / .38); background: linear-gradient(135deg, hsl(var(--card) / .92), hsl(267 84% 62% / .12)); }
    .home-popular-card.red { border-color: hsl(0 84% 64% / .38); background: linear-gradient(135deg, hsl(var(--card) / .92), hsl(0 84% 64% / .14)); }
    .home-popular-icon, .home-why-icon { display: grid; place-items: center; border-radius: 1rem; background: hsl(220 22% 5% / .74); color: hsl(var(--primary)); }
    .home-popular-icon { width: 4.1rem; height: 4.1rem; }
    .home-popular-icon svg { width: 2.25rem; height: 2.25rem; }
    .home-popular-card.purple .home-popular-icon { color: hsl(267 84% 62%); }
    .home-popular-card.red .home-popular-icon { color: hsl(0 84% 64%); }
    .home-popular-card h3 { margin: 0 0 .4rem; font-size: clamp(1rem, 1.6vw, 1.35rem); line-height: 1.15; font-weight: 520; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .home-popular-card p { margin: 0; color: hsl(var(--muted-foreground)); font-size: .92rem; line-height: 1.35; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .home-why { border: 0; background: linear-gradient(90deg, transparent, hsl(var(--card) / .56), transparent); box-shadow: none; padding: clamp(1.7rem, 4vw, 3rem) 0; }
    .home-why-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.8rem; }
    .home-why-card { display: grid; place-items: center; min-height: 19rem; border: 1px solid hsl(var(--border)); border-radius: 1.1rem; background: hsl(var(--card) / .46); padding: 2rem; text-align: center; }
    .home-why-icon { width: 5.4rem; height: 5.4rem; margin-bottom: 1.65rem; background: hsl(148 84% 42% / .12); color: hsl(148 84% 46%); }
    .home-why-icon.blue { background: hsl(var(--primary) / .12); color: hsl(var(--primary)); }
    .home-why-icon.red { background: hsl(0 84% 64% / .13); color: hsl(0 84% 64%); }
    .home-why-icon svg { width: 2.7rem; height: 2.7rem; }
    .home-why-card h3 { margin: 0 0 1rem; font-size: 1.35rem; line-height: 1.35; font-weight: 520; }
    .home-why-card p { max-width: 23rem; margin: 0 auto; color: hsl(var(--muted-foreground)); font-size: 1.05rem; line-height: 1.55; }
    .checker-grid { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 1.5rem; align-items: start; }
    .field-label { display: block; margin-bottom: .5rem; color: hsl(var(--foreground)); font-weight: 800; }
    .target-input { width: 100%; min-height: 3.25rem; border: 1px solid hsl(var(--border)); border-radius: .75rem; outline: none; background: hsl(var(--input)); color: hsl(var(--foreground)); padding: 0 1rem; transition: box-shadow .18s ease, border-color .18s ease; }
    .target-input:focus { border-color: hsl(var(--ring)); box-shadow: 0 0 0 3px hsl(var(--ring) / .18); }
    .target-input.invalid { border-color: #ef4444; box-shadow: 0 0 0 3px rgb(239 68 68 / .22); }
    .target-error { display: none; margin-top: .5rem; color: #f87171; font-weight: 800; }
    .action-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: .75rem; margin-top: 1rem; }
    .tool-page .action-grid { display: none; }
    .action-button { min-height: 4.25rem; border: 1px solid hsl(var(--border)); border-radius: .9rem; background: hsl(var(--muted) / .48); padding: .8rem; color: hsl(var(--foreground)); text-align: left; transition: background .18s ease, border-color .18s ease; }
    .action-button:hover { border-color: hsl(var(--primary) / .45); background: hsl(var(--primary) / .08); }
    .action-button strong { display: block; font-size: .92rem; font-weight: 800; }
    .action-button span { display: block; margin-top: .15rem; color: hsl(var(--muted-foreground)); font-size: .75rem; line-height: 1rem; }
    .dns-type-panel { display: none; margin-top: 1rem; }
    .tool-dns .dns-type-panel, body:not(.tool-page) .dns-type-panel { display: block; }
    .dns-type-grid { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: .65rem; }
    .dns-type-button { min-height: 3rem; border: 1px solid hsl(var(--border)); border-radius: .75rem; background: hsl(var(--background)); font-weight: 900; transition: transform .16s ease, background .16s ease, border-color .16s ease, box-shadow .16s ease; }
    .dns-type-button:hover { transform: translateY(-1px); border-color: hsl(var(--primary) / .65); }
    .dns-type-button.active { background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); color: hsl(var(--primary-foreground)); border-color: hsl(var(--primary)); box-shadow: 0 10px 24px hsl(var(--primary) / .18); }
    .dns-propagation-type-panel { display: none; margin-top: 1.15rem; }
    .propagation-select-wrap { position: relative; display: block; }
    .propagation-select { width: 100%; min-height: 3.65rem; border: 1px solid hsl(var(--border)); border-radius: .85rem; background: hsl(var(--background)); color: hsl(var(--foreground)); padding: 0 1rem; font-size: 1rem; font-weight: 750; appearance: none; outline: none; }
    .propagation-select:focus { border-color: hsl(var(--ring)); box-shadow: 0 0 0 3px hsl(var(--ring) / .18); }
    .propagation-select option { background: hsl(var(--background)); color: hsl(var(--foreground)); }
    .propagation-select-wrap::after { content: "⌄"; position: absolute; right: 1rem; top: 50%; transform: translateY(-54%); color: hsl(var(--muted-foreground)); pointer-events: none; font-weight: 900; }
    .tool-submit { display: none; width: 100%; margin-top: 1rem; }
    .tool-page .tool-submit { display: inline-flex; }
    .tool-submit:disabled { cursor: not-allowed; opacity: .5; transform: none; box-shadow: none; }
    .countries { border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(var(--muted) / .35); padding: 1rem; }
    .tool-page:not(.tool-ping) .countries { display: none; }
    .country-title { margin-bottom: .75rem; font-size: .95rem; font-weight: 800; }
    .country-desc { margin: 0 0 1rem; color: hsl(var(--muted-foreground)); font-size: .875rem; line-height: 1.35rem; }
    .country-list { display: grid; gap: .5rem; }
    .country-list label { display: flex; align-items: center; gap: .5rem; border-radius: .75rem; background: hsl(var(--card) / .75); color: hsl(var(--muted-foreground)); padding: .55rem .65rem; font-size: .875rem; font-weight: 700; cursor: pointer; }
    .country-list input { accent-color: hsl(var(--primary)); }
    #speedtestSection { display: none; }
    .tool-speedtest #speedtestSection { display: block; }
    .tool-speedtest #checker, .tool-speedtest #result { display: none; }
    .speed-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1rem; margin-top: 1rem; }
    .speed-card { border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(var(--muted) / .45); padding: 1rem; }
    .speed-card strong { display: block; font-size: 1.8rem; margin-top: .35rem; }
    .speed-hero { text-align: center; max-width: 760px; margin: 0 auto 1.5rem; }
    .speed-hero h2 { margin: 0 0 .75rem; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.05; }
    .speed-hero p { color: hsl(var(--muted-foreground)); font-size: 1.05rem; line-height: 1.7; font-weight: 700; }
    .tool-speedtest .container { max-width: 92rem; }
    .speed-page-hero { text-align: center; padding: clamp(1rem, 3vw, 2rem) 0 3rem; }
    .speed-page-title { margin: 0 auto 1rem; max-width: 920px; font-size: clamp(2.45rem, 5.4vw, 4.55rem); line-height: .98; letter-spacing: -.055em; font-weight: 950; background: linear-gradient(90deg, #60a5fa, #22d3ee, #22c55e); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .speed-page-lead { max-width: 820px; margin: 0 auto; color: hsl(var(--muted-foreground)); font-size: clamp(1rem, 1.55vw, 1.3rem); line-height: 1.5; font-weight: 700; }
    .speed-start-card { margin: 0 auto 2rem; border: 1px solid hsl(var(--border)); border-radius: 1.45rem; background: radial-gradient(circle at 50% 0%, hsl(var(--primary) / .14), transparent 18rem), linear-gradient(135deg, hsl(240 18% 5% / .9), hsl(var(--card) / .78)); padding: clamp(1.65rem, 4vw, 3.1rem); text-align: center; box-shadow: 0 24px 70px rgba(0,0,0,.28); }
    .speed-start-icon, .speed-section-icon { width: 4.35rem; height: 4.35rem; display: grid; place-items: center; margin: 0 auto 1.6rem; border-radius: 999px; background: linear-gradient(135deg, hsl(var(--primary) / .22), hsl(148 84% 42% / .16)); color: #60a5fa; }
    .speed-start-card h2 { margin: 0 0 .9rem; font-size: clamp(1.55rem, 3.1vw, 2.35rem); line-height: 1.08; }
    .speed-start-card p { max-width: 820px; margin: .65rem auto; color: hsl(var(--muted-foreground)); font-size: .98rem; line-height: 1.62; font-weight: 750; }
    .speed-start-card .btn-primary { margin-top: 1.5rem; min-width: 320px; border-radius: .85rem; background: #2563eb; }
    .speed-info-block.speed-feature { display: grid; grid-template-columns: 110px minmax(0, 1fr); align-items: center; gap: 2rem; padding: clamp(1.5rem, 3vw, 2.2rem); background: linear-gradient(135deg, hsl(220 32% 11% / .8), hsl(148 84% 12% / .18)); }
    .speed-info-block.speed-feature h2 { margin: 0 0 .9rem; color: hsl(var(--primary)); font-size: clamp(1.7rem, 3vw, 2.25rem); }
    .speed-info-block.speed-feature p { max-width: 920px; margin: .35rem 0; color: hsl(var(--foreground) / .88); line-height: 1.65; font-weight: 650; }
    .speed-info-block.speed-measures { padding: clamp(1.5rem, 3vw, 2.6rem); text-align: center; }
    .speed-info-block.speed-measures > h2, .speed-info-block.speed-benefits > h2 { margin: 0 0 1.4rem; font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1; background: linear-gradient(90deg, #60a5fa, #22d3ee, #22c55e); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .speed-info-block.speed-measures > p { max-width: 920px; margin: 0 auto 2rem; font-size: 1.2rem; line-height: 1.7; }
    .metric-card-icon { display: block; margin-bottom: 1rem; font-size: 2.1rem; }
    .speed-info-block.speed-benefits { padding: clamp(1.5rem, 3vw, 2.3rem); text-align: center; }
    .speed-benefit-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.3rem; }
    .speed-benefit-card { display: grid; grid-template-columns: 3.2rem minmax(0, 1fr); gap: 1rem; align-items: start; border: 1px solid hsl(var(--border)); border-radius: 1.15rem; background: hsl(240 18% 5% / .48); padding: 1.45rem; text-align: left; }
    .speed-benefit-card h3 { margin: 0 0 .55rem; font-size: 1.25rem; }
    .speed-benefit-card p { margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.65; font-weight: 650; }
    .speed-trust { display: grid; gap: 1.4rem; margin-top: 1.5rem; padding: clamp(1.5rem, 3vw, 2rem); border-left: 1px solid hsl(var(--border)); border-right: 1px solid hsl(var(--border)); }
    .speed-trust h2 { margin: 0; font-size: clamp(1.6rem, 3vw, 2.2rem); }
    .speed-trust-item { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: .85rem; }
    .speed-trust-item h3 { margin: 0 0 .45rem; }
    .speed-trust-item p { margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.65; font-weight: 650; }
    .speed-status { display: none; align-items: center; justify-content: center; gap: .85rem; margin: 1.25rem 0; font-size: 1.2rem; font-weight: 900; }
    .speed-status.active { display: flex; }
    .speed-spinner { width: 1.55rem; height: 1.55rem; border: 3px solid hsl(var(--primary) / .25); border-top-color: hsl(var(--primary)); border-radius: 999px; animation: spin .8s linear infinite; }
    @keyframes spin { to { transform: rotate(360deg); } }
    .speed-results { display: none; margin-top: 1.5rem; border: 1px solid hsl(var(--border)); border-radius: 1.25rem; overflow: hidden; background: linear-gradient(135deg, hsl(var(--card)), hsl(var(--card) / .78)); }
    .speed-results.show { display: block; }
    .speed-results-head { display: flex; gap: .85rem; align-items: center; padding: 1.25rem; border-bottom: 1px solid hsl(var(--border)); }
    .speed-results-title { margin: 0; font-size: 1.7rem; color: hsl(var(--primary)); }
    .speed-results-subtitle { margin: .25rem 0 0; color: hsl(var(--muted-foreground)); font-weight: 700; }
    .speed-quality { margin: 1rem; padding: 1rem; border: 1px solid hsl(148 84% 40% / .35); border-radius: 1rem; background: hsl(148 84% 18% / .18); display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; justify-content: space-between; }
    .speed-history, .speed-info-block { margin-top: 1.5rem; border: 1px solid hsl(var(--border)); border-radius: 1.25rem; background: hsl(var(--card) / .72); padding: 1.25rem; }
    .speed-history-list { display: grid; gap: .75rem; margin-top: 1rem; }
    .speed-history-item { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; justify-content: space-between; border: 1px solid hsl(var(--border)); border-radius: .95rem; padding: .9rem 1rem; background: hsl(var(--muted) / .34); }
    .speed-info-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin-top: 1rem; }
    .speed-info-card { border: 1px solid hsl(var(--border)); border-radius: 1rem; padding: 1.35rem; background: hsl(var(--background) / .42); text-align: left; }
    .speed-info-card h3 { margin: .5rem 0; font-size: 1.15rem; }
    .speed-info-card p { color: hsl(var(--muted-foreground)); line-height: 1.65; font-weight: 700; }
    .speed-faq details { border-bottom: 1px solid hsl(var(--border)); padding: .9rem 0; }
    .speed-faq summary { cursor: pointer; font-weight: 900; }
    .speed-faq p { color: hsl(var(--muted-foreground)); line-height: 1.65; font-weight: 700; }
    .speed-controls { display: grid; grid-template-columns: minmax(220px, 1fr) auto; gap: 1rem; align-items: end; margin: 1rem 0; }
    .speed-select { width: 100%; min-height: 3rem; border: 1px solid hsl(var(--border)); border-radius: .9rem; background: hsl(var(--input)); color: hsl(var(--foreground)); padding: 0 .9rem; font-weight: 800; }
    .speed-endpoint-note { color: hsl(var(--muted-foreground)); font-size: .9rem; font-weight: 700; }
    .tool-page .content { display: flex; flex-direction: column; }
    .dns-content { display: none; }
    .dns-content ~ #result { display: none; }
    .tool-dns .dns-content { display: contents; }
    .tool-dns #checker { order: 2; }
    .tool-dns #result { order: 3; }
    .tool-dns #checker > .section-head { display: none; }
    .dns-page-hero { padding: clamp(.75rem, 2vw, 1.5rem) 0 1.5rem; text-align: center; }
    .tool-dns .dns-page-hero { order: 1; }
    .dns-page-title { margin: 0 auto .65rem; max-width: 760px; font-size: clamp(1.35rem, 2.9vw, 2.4rem); line-height: 1.05; letter-spacing: -.045em; font-weight: 950; background: linear-gradient(90deg, #60a5fa, #22d3ee, #22c55e); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .dns-page-lead { max-width: 720px; margin: 0 auto; color: hsl(var(--muted-foreground)); font-size: clamp(.82rem, 1.1vw, 1rem); line-height: 1.45; font-weight: 700; }
    .dns-card { margin-top: 1.5rem; border: 1px solid hsl(var(--border)); border-radius: 1.35rem; background: hsl(var(--card) / .72); padding: clamp(1.4rem, 3vw, 2.4rem); }
    .tool-dns .dns-card { order: 4; }
    .dns-card.center { text-align: center; }
    .dns-card h2 { margin: 0 0 1rem; font-size: clamp(1.8rem, 3vw, 2.7rem); line-height: 1.08; background: linear-gradient(90deg, #60a5fa, #22d3ee, #22c55e); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .dns-card > p { max-width: 880px; margin: 0 auto 1.8rem; color: hsl(var(--muted-foreground)); font-size: 1.08rem; line-height: 1.7; font-weight: 650; }
    .dns-info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
    .dns-info-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dns-info-item { border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(var(--background) / .46); padding: 1.4rem; text-align: left; }
    .dns-info-item svg, .trust-item svg { width: 1.85rem; height: 1.85rem; color: hsl(var(--primary)); margin-bottom: .8rem; }
    .dns-info-item h3 { margin: 0 0 .65rem; font-size: 1.2rem; }
    .dns-info-item p { margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.65; font-weight: 650; }
    .dns-query-head { display: none; text-align: center; margin-bottom: 2rem; }
    .tool-dns .dns-query-head { display: block; }
    .dns-query-icon { width: 4.35rem; height: 4.35rem; margin: 0 auto 1.25rem; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; color: white; background: linear-gradient(135deg, #3b82f6, #22c55e); box-shadow: 0 18px 44px hsl(var(--primary) / .24); }
    .dns-query-icon svg { width: 2.1rem; height: 2.1rem; }
    .dns-query-head h2 { margin: 0 0 .65rem; font-size: clamp(1.85rem, 3vw, 2.25rem); line-height: 1.1; }
    .dns-query-head p { margin: 0; color: hsl(var(--muted-foreground)); font-weight: 700; }
    .tool-dns .checker-card { max-width: 100%; border-radius: 1.35rem; background: hsl(var(--card) / .78); }
    .tool-dns .checker-grid { display: block; }
    .tool-dns .action-grid, .tool-dns .countries { display: none; }
    .target-field-wrap { position: relative; display: block; }
    .target-status-icon { position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); width: 1.55rem; height: 1.55rem; display: none; pointer-events: none; }
    .target-input.valid { border-color: hsl(148 84% 44%); box-shadow: 0 0 0 3px hsl(148 84% 44% / .18); }
    .target-input.valid + .target-status-icon { display: block; color: hsl(148 84% 44%); }
    .dns-records-list { display: grid; gap: .8rem; }
    .dns-records-list details { border: 1px solid transparent; border-radius: .95rem; background: hsl(var(--muted) / .28); padding: 0; overflow: hidden; }
    .dns-records-list details[open] { background: hsl(var(--card) / .86); border-color: hsl(var(--border)); }
    .dns-records-list summary { display: flex; align-items: center; gap: .85rem; cursor: pointer; padding: 1.15rem 1.25rem; font-weight: 900; list-style: none; }
    .dns-records-list summary::-webkit-details-marker { display: none; }
    .dns-record-icon { width: 1.25rem; height: 1.25rem; color: hsl(var(--primary)); flex: 0 0 auto; }
    .dns-record-title { color: hsl(var(--foreground)); }
    .dns-record-note { color: hsl(var(--muted-foreground)); font-size: .95rem; }
    .dns-records-list summary::after { content: "⌄"; margin-left: auto; color: hsl(var(--primary)); font-size: 1.1rem; }
    .dns-records-list details[open] summary::after { content: "⌃"; }
    .dns-records-list p { margin: 0; padding: 0 1.25rem 1.35rem 3.35rem; color: hsl(var(--muted-foreground)); line-height: 1.65; font-weight: 650; }
    .tool-dns .result-card { border: 0; background: transparent; box-shadow: none; padding: 0; }
    .tool-dns .result-top { justify-content: center; text-align: center; margin-bottom: 2rem; }
    .tool-dns .result-title { font-size: clamp(1.55rem, 3.4vw, 2.55rem); line-height: 1.08; letter-spacing: -.035em; font-weight: 820; background: linear-gradient(90deg, #60a5fa, #22d3ee, #22c55e); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .tool-dns .result-actions { display: none; }
    .tool-dns .output { border: 0; background: transparent; padding: 0; max-height: none; overflow: visible; white-space: normal; word-break: normal; font-family: "Segoe UI", Roboto, Arial, sans-serif; }
    .tool-dns .dns-results { display: grid; gap: 1rem; font-family: "Segoe UI", Roboto, Arial, sans-serif; white-space: normal; }
    .tool-dns .dns-results + .dns-results { margin-top: 1rem; }
    .tool-dns .dns-result-card { border: 1px solid hsl(var(--border)); border-radius: 1rem; overflow: hidden; background: hsl(var(--card) / .78); }
    .tool-dns .dns-result-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.1rem 1.25rem; background: hsl(var(--muted) / .35); }
    .tool-dns .dns-result-title { display: flex; align-items: center; gap: .75rem; color: hsl(var(--primary)); font-size: 1.25rem; font-weight: 950; }
    .tool-dns .dns-result-subtitle { display: block; margin-top: .2rem; color: hsl(var(--muted-foreground)); font-size: .9rem; font-weight: 700; }
    .tool-dns .dns-count { border: 1px solid hsl(var(--border)); border-radius: 999px; padding: .35rem .75rem; font-weight: 900; }
    .tool-dns .dns-result-row { display: grid; grid-template-columns: minmax(180px, .7fr) minmax(0, 1fr) minmax(100px, .3fr); gap: 1rem; padding: 1rem 1.25rem; border-top: 1px solid hsl(var(--border)); }
    .tool-dns .dns-result-label { color: hsl(var(--muted-foreground)); font-weight: 800; }
    .tool-dns .dns-empty { padding: 1rem 1.25rem; color: hsl(var(--muted-foreground)); font-weight: 800; }
    .dns-notice-card { display: flex; align-items: center; gap: 1rem; border: 1px solid hsl(0 84% 60% / .65); border-radius: 1rem; background: linear-gradient(90deg, hsl(0 72% 18% / .42), hsl(0 72% 12% / .25)); color: hsl(0 100% 68%); padding: 1.25rem; font-size: 1rem; line-height: 1.55; font-weight: 700; }
    .dns-notice-card p { margin: 0; }
    .dns-notice-icon { width: 1.7rem; height: 1.7rem; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; border: 2px solid currentColor; border-radius: 999px; font-weight: 900; }
    .dns-propagation-content { display: none; }
    .tool-dnspropagation .dns-propagation-content { display: contents; }
    .tool-dnspropagation .dns-propagation-hero { order: 1; padding: clamp(.75rem, 2vw, 1.5rem) 0 1.5rem; text-align: center; }
    .tool-dnspropagation #checker { order: 2; }
    .tool-dnspropagation #result { order: 3; }
    .tool-dnspropagation #checker > .section-head { display: none; }
    .tool-dnspropagation .dns-query-head { display: block; }
    .tool-dnspropagation .checker-card { max-width: 100%; border-radius: 1.35rem; background: hsl(var(--card) / .78); }
    .tool-dnspropagation .checker-grid { display: block; max-width: 720px; margin: 0 auto; }
    .tool-dnspropagation .action-grid, .tool-dnspropagation .countries, .tool-dnspropagation .dns-type-panel { display: none; }
    .tool-dnspropagation .dns-propagation-type-panel { display: block; }
    .tool-dnspropagation .result-card { border: 0; background: transparent; box-shadow: none; padding: 0; }
    .tool-dnspropagation .result-top { display: none; }
    .tool-dnspropagation .output { border: 0; background: transparent; padding: 0; max-height: none; overflow: visible; white-space: normal; word-break: normal; font-family: "Segoe UI", Roboto, Arial, sans-serif; }
    .propagation-results { display: grid; gap: 1.35rem; }
    .propagation-results-head { display: flex; align-items: center; gap: 1rem; padding: 1.25rem; border: 1px solid hsl(var(--border)); border-radius: 1rem; background: linear-gradient(90deg, hsl(var(--primary) / .13), transparent); }
    .propagation-head-icon { width: 3rem; height: 3rem; display: grid; place-items: center; color: hsl(var(--primary)); }
    .propagation-head-icon svg { width: 2.2rem; height: 2.2rem; }
    .propagation-results-head h2 { margin: 0; font-size: clamp(1.45rem, 2.8vw, 2.25rem); line-height: 1.05; background: linear-gradient(90deg, #60a5fa, #22d3ee, #22c55e); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .propagation-results-head p { margin: .25rem 0 0; color: hsl(var(--muted-foreground)); font-weight: 650; }
    .propagation-results-head p span { color: hsl(var(--primary)); }
    .propagation-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
    .propagation-card { border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(var(--card) / .78); padding: 1.15rem; box-shadow: inset 3px 0 0 hsl(var(--border)); }
    .propagation-card.status-propagated { box-shadow: inset 3px 0 0 hsl(148 84% 42%); }
    .propagation-card.status-timeout { box-shadow: inset 3px 0 0 hsl(var(--primary)); }
    .propagation-card.status-error { box-shadow: inset 3px 0 0 hsl(var(--muted-foreground)); }
    .prop-card-title { display: flex; align-items: flex-start; gap: .75rem; margin-bottom: 1rem; }
    .pin-icon { color: hsl(var(--primary)); font-size: 1.25rem; line-height: 1; }
    .prop-card-title h3 { margin: 0 0 .35rem; font-size: 1.15rem; line-height: 1.2; font-weight: 760; }
    .prop-card-title p { margin: 0; color: hsl(var(--muted-foreground)); font-size: .86rem; line-height: 1.35; }
    .prop-card-row { display: grid; grid-template-columns: 95px minmax(0,1fr); gap: .75rem; align-items: center; margin-top: .65rem; color: hsl(var(--muted-foreground)); }
    .prop-card-row code { color: hsl(var(--foreground)); font-weight: 750; white-space: normal; word-break: break-word; background: transparent; }
    .prop-status { justify-self: start; display: inline-flex; align-items: center; gap: .4rem; border-radius: 999px; padding: .25rem .7rem; font-size: .82rem; font-weight: 800; }
    .prop-status span { width: 1rem; height: 1rem; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; border: 1px solid currentColor; line-height: 1; }
    .prop-propagated { color: hsl(148 84% 48%); background: hsl(148 84% 28% / .22); border: 1px solid hsl(148 84% 42% / .35); }
    .prop-timeout { color: hsl(var(--primary)); background: hsl(var(--primary) / .14); border: 1px solid hsl(var(--primary) / .28); }
    .prop-error { color: hsl(var(--muted-foreground)); background: hsl(var(--muted) / .58); border: 1px solid hsl(var(--border)); }
    .propagation-details { margin-top: .75rem; color: hsl(var(--primary)); font-weight: 700; }
    .propagation-details ul { margin: .5rem 0 0; padding-left: 1.2rem; color: hsl(var(--foreground)); }
    .propagation-map-card { display: grid; gap: 1rem; margin-top: .75rem; }
    .propagation-map-title { display: flex; align-items: center; gap: .75rem; }
    .propagation-map-title > span { color: hsl(var(--primary)); font-size: 2rem; }
    .propagation-map-title h2 { margin: 0; font-size: clamp(1.35rem, 2.5vw, 2rem); }
    .propagation-map-title p, .propagation-map-note { margin: .25rem 0 0; color: hsl(var(--muted-foreground)); font-size: .92rem; }
    .propagation-map { position: relative; min-height: 440px; overflow: hidden; border: 1px solid hsl(var(--border)); border-radius: .85rem; background-color: #d9eef4; background-image: radial-gradient(circle at 20% 25%, rgba(255,255,255,.75), transparent 16rem), radial-gradient(circle at 72% 38%, rgba(255,255,255,.68), transparent 18rem), linear-gradient(135deg, #c7e7ef, #a9d9e5); background-size: cover; background-position: center; }
    .propagation-map .leaflet-container, .leaflet-container.propagation-map { background: #acd7e4; color: #111827; font-family: "Segoe UI", Roboto, Arial, sans-serif; }
    .propagation-map .leaflet-control-zoom a { color: #111827; font-weight: 700; }
    .propagation-map .leaflet-control-attribution { font-size: .72rem; }
    .propagation-map .leaflet-popup-content { margin: .65rem .8rem; color: #111827; font-weight: 500; }
    .map-marker { position: absolute; transform: translate(-50%, -50%); width: 2.15rem; height: 2.15rem; display: grid; place-items: center; border-radius: 999px; color: #fff; font-size: 1.25rem; font-weight: 900; box-shadow: 0 8px 18px rgba(0,0,0,.3); }
    .map-propagated { background: #07880b; }
    .map-timeout { background: #3b82f6; }
    .map-error { background: #737373; }
    .leaflet-status-marker { width: 2rem; height: 2rem; display: grid; place-items: center; border-radius: 999px; color: #fff; font-size: 1.1rem; font-weight: 850; box-shadow: 0 8px 20px rgba(0,0,0,.35); border: 2px solid rgba(255,255,255,.45); }
    .leaflet-status-marker.map-timeout { font-size: 1rem; }
    .propagation-education { display: none; }
    .tool-dnspropagation .propagation-education { display: grid; gap: 1.35rem; order: 2; margin-top: 1.25rem; }
    .tool-dnspropagation :where(h1, h2, h3, h4, p, li, span, strong, summary, a, button, label, code, div) { font-weight: 400 !important; }
    .tool-dnspropagation :where(.dns-page-title, .propagation-results-head h2, .propagation-map-title h2, .prop-edu-title, .continue-title) { font-weight: 500 !important; }
    .prop-edu-card { border: 1px solid hsl(var(--border)); border-radius: 1rem; background: linear-gradient(135deg, hsl(var(--card) / .78), hsl(150 80% 12% / .14)); padding: clamp(1.25rem, 3vw, 2rem); color: hsl(var(--muted-foreground)); font-weight: 400; line-height: 1.7; }
    .prop-edu-card h2 { margin: 0 0 .85rem; color: hsl(var(--foreground)); font-size: clamp(1.35rem, 2.6vw, 2rem); font-weight: 600; line-height: 1.18; }
    .prop-edu-card h3 { margin: 0 0 .45rem; color: hsl(var(--foreground)); font-size: 1.05rem; font-weight: 560; line-height: 1.35; }
    .prop-edu-card p { margin: 0; color: hsl(var(--muted-foreground)); font-weight: 400; line-height: 1.72; }
    .prop-edu-title { display: flex; align-items: center; gap: .75rem; margin-bottom: .95rem; }
    .prop-edu-title svg, .prop-info-item svg, .prop-trust-item svg { width: 1.65rem; height: 1.65rem; color: hsl(var(--primary)); flex: 0 0 auto; }
    .prop-info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; margin-top: 1.25rem; }
    .prop-info-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .prop-info-item { display: grid; grid-template-columns: 2.2rem minmax(0,1fr); gap: .85rem; border: 1px solid hsl(var(--border)); border-radius: .95rem; padding: 1.25rem; background: hsl(var(--background) / .44); }
    .prop-steps { margin: 1rem 0 0; padding-left: 1.35rem; color: hsl(var(--muted-foreground)); font-weight: 400; }
    .prop-steps li { margin: .55rem 0; padding-left: .25rem; }
    .prop-steps strong { font-weight: 560; color: hsl(var(--foreground)); }
    .prop-trust-list { display: grid; gap: 1.1rem; margin-top: 1rem; }
    .prop-trust-item { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: .8rem; }
    .prop-faq details { border-bottom: 1px solid hsl(var(--border)); padding: 1rem 0; }
    .prop-faq summary { cursor: pointer; color: hsl(var(--foreground)); font-weight: 500; list-style: none; }
    .prop-faq summary::-webkit-details-marker { display: none; }
    .prop-faq p { margin-top: .7rem; }
    @media (max-width: 980px) { .propagation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
    @media (max-width: 900px) { .prop-info-grid, .prop-info-grid.two { grid-template-columns: 1fr; } }
    @media (max-width: 640px) { .propagation-grid { grid-template-columns: 1fr; } .propagation-results-head { align-items: flex-start; } .propagation-map { min-height: 320px; } }
    .tool-rating { margin-top: 1.25rem; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.5rem; align-items: center; border: 1px solid hsl(var(--border)); border-radius: 1rem; background: linear-gradient(135deg, hsl(var(--card) / .72), hsl(240 18% 5% / .42)); padding: 1.4rem; }
    .tool-rating-title { margin: 0; font-size: clamp(1.15rem, 2.2vw, 1.65rem); line-height: 1.2; font-weight: 650; background: linear-gradient(90deg, #60a5fa, #22d3ee, #22c55e); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .tool-rating-left { display: flex; align-items: center; gap: .9rem; flex-wrap: wrap; }
    .tool-rating-copy { margin: .55rem 0 0; color: hsl(var(--muted-foreground)); font-size: .9rem; font-weight: 500; }
    .tool-rating-stars { display: flex; justify-content: flex-end; gap: .35rem; }
    .tool-rating-star { border: 0; background: transparent; color: hsl(var(--muted-foreground) / .72); font-size: 2.05rem; line-height: 1; cursor: pointer; filter: drop-shadow(0 0 10px hsl(var(--foreground) / .14)); transition: transform .15s ease, color .15s ease, filter .15s ease; }
    .tool-rating-star:hover, .tool-rating-star.active { color: #facc15; transform: translateY(-1px); filter: drop-shadow(0 0 12px rgb(250 204 21 / .28)); }
    .tool-rating-stats { margin: .45rem 0 0; color: hsl(var(--muted-foreground)); font-size: .88rem; font-weight: 500; text-align: right; }
    .trust-list { display: grid; gap: 1.35rem; margin-top: 1.5rem; }
    .trust-item { display: grid; grid-template-columns: 2.1rem minmax(0, 1fr); gap: .9rem; text-align: left; }
    .trust-item svg { margin: .15rem 0 0; }
    .trust-item h3 { margin: 0 0 .55rem; }
    .trust-item p { margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.7; font-weight: 650; }
    .dns-faq details { border-bottom: 1px solid hsl(var(--border)); padding: 1rem 0; }
    .dns-faq summary { cursor: pointer; font-size: 1.05rem; font-weight: 900; }
    .dns-faq p { margin: .65rem 0 0; color: hsl(var(--muted-foreground)); line-height: 1.65; font-weight: 650; }
    .result-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
    .result-title { margin: 0; font-size: 1.5rem; line-height: 2rem; font-weight: 800; }
    .result-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
    .small-button { min-height: 2.5rem; padding: 0 .875rem; font-size: .875rem; }
    .output { min-height: 170px; max-height: 620px; overflow: auto; border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(240 18% 5%); color: hsl(var(--foreground)); padding: 1rem; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; white-space: pre-wrap; word-break: break-word; line-height: 1.65; }
    html[data-theme="light"] .output { background: #fff; }
    .output:empty::before { content: "Результаты появятся здесь после запуска проверки."; color: hsl(var(--muted-foreground)); font-family: "Segoe UI", Roboto, Arial, sans-serif; font-weight: 700; }
    .output table { width: 100%; border-collapse: collapse; white-space: normal; font-family: "Segoe UI", Roboto, Arial, sans-serif; }
    .output th, .output td { border-bottom: 1px solid hsl(var(--border)); padding: .75rem; text-align: left; vertical-align: top; }
    .output th { background: hsl(var(--muted)); color: hsl(var(--foreground)); font-weight: 800; }
    .output .result-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; font-family: "Segoe UI", Roboto, Arial, sans-serif; }
    .output .result-card { box-shadow: none; border-radius: 1rem; padding: 1rem; background: hsl(var(--muted) / .55); }
    .output .result-card span { display: block; color: hsl(var(--muted-foreground)); font-weight: 700; margin-bottom: .35rem; }
    .continue-section { order: 3; max-width: 80rem; margin: 2.5rem auto 0; padding: 3rem 1.5rem 3.25rem; background: radial-gradient(circle at 84% 12%, hsl(150 85% 34% / .12), transparent 32%), hsl(var(--background)); }
    .continue-head { max-width: 760px; margin: 0 auto 2rem; text-align: center; }
    .continue-head h2 { margin: 0 0 .75rem; font-size: clamp(1.45rem, 3vw, 2rem); line-height: 1.15; font-weight: 700; }
    .continue-head p { margin: 0; color: hsl(var(--muted-foreground)); font-size: 1rem; font-weight: 400; }
    .continue-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
    .continue-card { min-height: 10.5rem; border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(var(--card) / .68); padding: 1.55rem; display: grid; gap: .75rem; align-content: start; color: hsl(var(--foreground)); text-decoration: none; transition: transform .18s ease, border-color .18s ease, background .18s ease; }
    .continue-card:hover { transform: translateY(-2px); border-color: hsl(var(--primary) / .45); background: hsl(var(--primary) / .07); }
    .continue-icon { width: 3.05rem; height: 3.05rem; border-radius: .85rem; display: inline-flex; align-items: center; justify-content: center; background: hsl(var(--primary) / .12); color: hsl(var(--primary)); }
    .continue-card h3 { margin: 0; font-size: 1.1rem; font-weight: 700; }
    .continue-card p { margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.5; font-weight: 400; }
    .footer { order: 5; border-top: 1px solid hsl(var(--border)); background: linear-gradient(90deg, hsl(var(--background)), hsl(var(--card) / .42)); padding: 3.25rem 2rem 1.5rem; color: hsl(var(--muted-foreground)); }
    .footer-inner { max-width: 80rem; margin: 0 auto; }
    .footer-grid { display: grid; grid-template-columns: 1.15fr 1fr .9fr; gap: 3rem; align-items: start; }
    .footer-brand-line { display: flex; align-items: center; gap: 1rem; margin-bottom: 1.25rem; }
    .footer-logo { width: 3.7rem; height: 3.7rem; border-radius: 1rem; display: inline-flex; align-items: center; justify-content: center; background: linear-gradient(135deg, hsl(var(--primary)), hsl(var(--accent))); color: hsl(var(--primary-foreground)); box-shadow: 0 18px 42px hsl(var(--primary) / .22); }
    .footer-brand-title { margin: 0; font-size: 1.5rem; line-height: 1.05; font-weight: 700; background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .footer-brand-subtitle { margin: .35rem 0 0; color: hsl(var(--muted-foreground)); font-weight: 400; }
    .footer p { margin: 0; line-height: 1.65; font-weight: 400; }
    .social-links { display: flex; gap: .9rem; margin-top: 1.25rem; }
    .social-link { width: 3.15rem; height: 3.15rem; border: 1px solid hsl(var(--border)); border-radius: .85rem; display: inline-flex; align-items: center; justify-content: center; color: hsl(var(--muted-foreground)); background: hsl(var(--card) / .55); transition: color .18s ease, border-color .18s ease, transform .18s ease; }
    .social-link:hover { color: hsl(var(--primary)); border-color: hsl(var(--primary) / .45); transform: translateY(-1px); }
    .footer-section-title { margin: 0 0 1.1rem; display: flex; align-items: center; gap: .65rem; color: hsl(var(--foreground)); font-size: 1.08rem; font-weight: 700; }
    .footer-section-title svg { color: hsl(var(--primary)); }
    .footer-donate { margin-top: 1.35rem; display: inline-flex; min-height: 2.75rem; padding-inline: 1.6rem; }
    .quick-links { display: grid; gap: .75rem; }
    .quick-links a { display: inline-flex; align-items: center; gap: .55rem; color: hsl(var(--muted-foreground)); text-decoration: none; font-weight: 400; }
    .quick-links a:hover { color: hsl(var(--primary)); }
    .footer-bottom { max-width: 80rem; margin: 2.5rem auto 0; padding-top: 1.35rem; border-top: 1px solid hsl(var(--border)); display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; font-size: .92rem; }
    .footer-bottom-links { display: flex; gap: 1.35rem; flex-wrap: wrap; }
    .footer-bottom a { color: hsl(var(--muted-foreground)); text-decoration: none; font-weight: 400; }
    .footer-heart { color: #ef4444; }
    p, .section-text, .hero-text, .tool-card p, .side-desc, .country-desc, .speed-page-lead, .dns-page-lead, .dns-info-item p, .speed-info-card p, .speed-benefit-card p, .speed-trust-item p, .trust-item p, .dns-faq p, .tool-rating-copy, .tool-rating-stats, .cookie p { font-weight: 400; }
    .home-only :where(h1,h2,h3,h4,p,span,a,button,strong,small), .tools-dropdown :where(span,a,button), .sidebar :where(span,button,a) { font-weight: 400 !important; }
    .home-only :where(.hero-title,.section-title,.brand-title), .tools-dropdown-title { font-weight: 500 !important; }
    body:not(.tool-page):not(.about-page) :where(.brand-title,.brand-subtitle,.nav-link,.nav-button,.tool-card h3,.tool-card p,.footer h2,.footer h3,.footer p,.footer a) { font-weight: 400 !important; }
    .tool-dns :where(h1, h2, h3, h4, p, li, span, strong, summary, a, button, label, code, div) { font-weight: 400 !important; }
    .tool-dns :where(.dns-page-title, .result-title, .dns-result-title, .tool-rating-title, .continue-title) { font-weight: 500 !important; }
    body:not(.tool-page):not(.about-page) :where(.hero-title,.section-title) { font-weight: 500 !important; }

    .tool-page-extra { order: 4; display: none; max-width: 80rem; margin: 0 auto 0; padding: 0 1.5rem 2.5rem; }
    .tool-page .tool-page-extra { display: block; }
    .tool-page-extra .home-popular { margin: 0 0 2rem; }
    .tool-page-extra .home-why { margin-top: 1.5rem; }
    .tool-speedtest :where(h1,h2,h3,h4,p,li,span,strong,summary,a,button,label,div),
    .tool-whois :where(h1,h2,h3,h4,p,li,span,strong,summary,a,button,label,div) { font-weight: 400 !important; }
    .tool-speedtest :where(.speed-page-title,.speed-results-title,.tool-rating-title,.continue-head h2),
    .tool-whois :where(.whois-page-title,.whois-card-title,.tool-rating-title,.continue-head h2,.whois-section-title) { font-weight: 500 !important; }
    .tool-whois #checker, .tool-whois #result, .tool-whois .result-inline + .tool-rating { display: none; }
    .whois-page { display: grid; gap: 2.25rem; }
    .whois-hero { text-align: center; padding: 1rem 0 1.6rem; }
    .whois-page-title { margin: 0 auto 1.1rem; max-width: 900px; font-size: clamp(2.55rem, 6.5vw, 5rem); line-height: .96; letter-spacing: -.055em; background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .whois-page-lead { max-width: 820px; margin: 0 auto; color: hsl(var(--muted-foreground)); font-size: clamp(1rem, 1.8vw, 1.35rem); line-height: 1.5; }
    .whois-search-card, .whois-info-card, .whois-faq-card { border: 1px solid hsl(var(--border)); border-radius: 1rem; background: linear-gradient(135deg, hsl(var(--card) / .88), hsl(150 80% 18% / .06)); box-shadow: 0 20px 55px rgba(0,0,0,.16); padding: clamp(1.4rem, 3vw, 2.1rem); }
    .whois-search-card { text-align: center; }
    .whois-search-icon { width: 4.4rem; height: 4.4rem; margin: 0 auto 1.3rem; border-radius: 999px; display: grid; place-items: center; color: hsl(var(--primary)); background: linear-gradient(135deg, hsl(var(--primary) / .18), hsl(var(--accent) / .18)); }
    .whois-card-title { margin: 0 0 .55rem; font-size: clamp(1.5rem, 3vw, 2.15rem); line-height: 1.1; }
    .whois-search-card p, .whois-info-card p, .whois-faq-card p { color: hsl(var(--muted-foreground)); line-height: 1.65; }
    .whois-search-form { max-width: 760px; margin: 1.65rem auto 0; display: grid; gap: 1rem; }
    .whois-search-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1rem; align-items: center; }
    .whois-search-row .target-input { min-height: 3.7rem; }
    .whois-search-row .btn-primary { min-height: 3.7rem; gap: .65rem; }
    .whois-search-form .target-field-wrap { position: relative; display: block; }
    .whois-search-form .target-input { width: 100%; padding-right: 3.4rem; }
    .whois-search-form .target-status-icon { position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); width: 1.55rem; height: 1.55rem; opacity: 0; transition: opacity .16s ease; pointer-events: none; }
    .whois-search-form .target-field-wrap.is-valid .target-input { border-color: hsl(142 76% 45%); box-shadow: 0 0 0 2px hsl(142 76% 45% / .18); }
    .whois-search-form .target-field-wrap.is-valid .status-valid { opacity: 1; color: hsl(142 76% 45%); }
    .whois-search-form .target-field-wrap.is-invalid .target-input { border-color: hsl(0 84% 61%); box-shadow: 0 0 0 2px hsl(0 84% 61% / .18); }
    .whois-search-form .target-field-wrap.is-invalid .status-invalid { opacity: 1; color: hsl(0 84% 61%); }
    .whois-search-error { min-height: 1.35rem; color: hsl(0 92% 66%); text-align: left; font-size: .95rem; line-height: 1.35; }
    .whois-search-row .btn-primary:disabled { opacity: .55; cursor: not-allowed; filter: saturate(.65); }
    .whois-result-card, .whois-after-result { border: 1px solid hsl(var(--border)); border-radius: 1rem; background: linear-gradient(135deg, hsl(var(--card) / .88), hsl(150 80% 18% / .08)); box-shadow: 0 20px 55px rgba(0,0,0,.16); overflow: hidden; }
    .whois-result-head { display: grid; grid-template-columns: 2.7rem minmax(0, 1fr); gap: 1rem; align-items: center; padding: 1.55rem 1.8rem; border-bottom: 1px solid hsl(var(--border)); }
    .whois-result-head svg { color: hsl(var(--primary)); }
    .whois-result-head h2 { margin: 0; font-size: clamp(1.55rem, 3vw, 2.25rem); line-height: 1.1; background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; font-weight: 500; }
    .whois-result-head p { margin: .35rem 0 0; color: hsl(var(--muted-foreground)); }
    .whois-result-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.2rem; padding: 1.65rem 1.8rem; }
    .whois-result-field { min-height: 5.1rem; border: 1px solid hsl(var(--border)); border-radius: .9rem; background: hsl(var(--card) / .55); padding: 1rem; display: grid; gap: .35rem; align-content: start; }
    .whois-result-field.is-soft { border-color: hsl(var(--primary) / .26); background: hsl(var(--primary) / .08); }
    .whois-result-field.is-warn { border-color: hsl(0 84% 61% / .34); background: hsl(0 70% 18% / .2); }
    .whois-result-field.wide { grid-column: span 2; }
    .whois-result-field.full { grid-column: 1 / -1; }
    .whois-result-field span { color: hsl(var(--primary)); font-size: .94rem; }
    .whois-result-field strong { color: hsl(var(--foreground)); font-size: .98rem; font-weight: 400; overflow-wrap: anywhere; }
    .whois-chip-list { display: flex; flex-wrap: wrap; gap: .45rem; }
    .whois-chip { display: inline-flex; align-items: center; min-height: 2rem; padding: .35rem .7rem; border: 1px solid hsl(var(--border)); border-radius: 999px; background: hsl(var(--muted) / .55); color: hsl(var(--foreground)); overflow-wrap: anywhere; }
    .whois-error-card { border: 1px solid hsl(0 78% 58% / .55); border-radius: 1rem; background: hsl(0 80% 16% / .2); color: hsl(0 95% 72%); padding: 1.15rem 1.35rem; line-height: 1.55; }
    .whois-after-result { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr); gap: 1.5rem; padding: 1.4rem; }
    .whois-popular-title { display: flex; align-items: center; gap: .75rem; margin: 0 0 1rem; font-size: clamp(1.25rem, 2.4vw, 1.75rem); font-weight: 500; background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .whois-trend-badge { color: hsl(var(--primary-foreground)); background: hsl(var(--primary)); border-radius: 999px; padding: .25rem .65rem; font-size: .82rem; }
    .whois-popular-chips { display: flex; flex-wrap: wrap; gap: .55rem; }
    .whois-trend-chip { border: 1px solid hsl(var(--primary) / .32); border-radius: 999px; background: hsl(var(--primary) / .12); color: hsl(var(--primary)); padding: .42rem .85rem; cursor: pointer; font: inherit; }
    .whois-after-result .tool-rating { margin: 0; border: 0; box-shadow: none; background: transparent; padding: 0; }
    @media (max-width: 980px) { .whois-result-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .whois-after-result { grid-template-columns: 1fr; } }
    @media (max-width: 720px) { .whois-search-row { grid-template-columns: 1fr; } .whois-result-grid { grid-template-columns: 1fr; } .whois-result-field.wide { grid-column: auto; } }
    .whois-section-head { max-width: 840px; margin: 0 auto 2rem; text-align: center; }
    .whois-section-title { margin: 0 0 1rem; font-size: clamp(1.8rem, 4vw, 2.75rem); line-height: 1.08; background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .whois-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.35rem; }
    .whois-feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.2rem 2rem; }
    .whois-mini-card, .whois-feature-row { border: 1px solid hsl(var(--border)); border-radius: .95rem; background: hsl(var(--background) / .42); padding: 1.35rem; display: grid; gap: .65rem; }
    .whois-mini-card h3, .whois-feature-row h3, .whois-trust-item h3 { margin: 0; font-size: 1.1rem; line-height: 1.25; color: hsl(var(--foreground)); }
    .whois-mini-card svg, .whois-feature-row svg, .whois-trust-item svg, .whois-steps svg { color: hsl(var(--primary)); }
    .whois-steps { display: grid; gap: .95rem; counter-reset: whoisStep; }
    .whois-step { display: grid; grid-template-columns: 2.4rem minmax(0, 1fr); gap: .9rem; align-items: start; color: hsl(var(--muted-foreground)); line-height: 1.65; }
    .whois-step::before { counter-increment: whoisStep; content: counter(whoisStep); width: 2.2rem; height: 2.2rem; border-radius: 999px; display: grid; place-items: center; background: hsl(var(--primary) / .14); color: hsl(var(--primary)); }
    .whois-trust-list { display: grid; gap: 1.2rem; }
    .whois-trust-item { display: grid; grid-template-columns: 1.8rem minmax(0, 1fr); gap: .9rem; align-items: start; }
    .whois-faq-card details { border-top: 1px solid hsl(var(--border)); padding: 1rem 0; }
    .whois-faq-card details:first-of-type { border-top: 0; }
    .whois-faq-card summary { cursor: pointer; color: hsl(var(--foreground)); font-size: 1.02rem; }
    @media (max-width: 860px) {
      .whois-search-row, .whois-card-grid, .whois-feature-grid { grid-template-columns: 1fr; }
      .tool-page-extra { padding-inline: 1rem; }
    }

    .tool-myip .myip-page, .tool-iplookup .myip-page { display: grid; gap: 1.75rem; }
    .iplookup-search-card { border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(var(--card) / .78); padding: clamp(1.35rem, 3vw, 2rem); }
    .iplookup-form { max-width: 760px; margin: 0 auto; display: grid; gap: 1rem; }
    .iplookup-form .target-field-wrap { position: relative; display: block; }
    .iplookup-form .target-input { width: 100%; padding-right: 3.25rem; }
    .iplookup-form .target-status-icon { position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); width: 1.65rem; height: 1.65rem; opacity: 0; pointer-events: none; color: hsl(145 80% 48%); transition: opacity .18s ease, color .18s ease; }
    .iplookup-form .target-field-wrap.is-valid .target-input { border-color: hsl(145 80% 43%); box-shadow: 0 0 0 2px hsl(145 80% 43% / .24); }
    .iplookup-form .target-field-wrap.is-invalid .target-input { border-color: hsl(0 84% 61%); box-shadow: 0 0 0 2px hsl(0 84% 61% / .24); }
    .iplookup-form .target-field-wrap.is-valid .target-status-icon, .iplookup-form .target-field-wrap.is-invalid .target-status-icon { opacity: 1; }
    .iplookup-form .target-field-wrap.is-invalid .target-status-icon { color: hsl(0 84% 61%); }
    .iplookup-target-error { min-height: 1.35rem; color: hsl(0 92% 66%); text-align: center; font-size: .95rem; line-height: 1.35; }
    .iplookup-form .btn-primary:disabled { opacity: .55; cursor: not-allowed; filter: saturate(.65); }
    .iplookup-search-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1rem; align-items: end; }
    .iplookup-error { border: 1px solid hsl(0 78% 58% / .55); border-radius: .9rem; background: hsl(0 80% 16% / .2); color: hsl(0 95% 72%); padding: 1rem 1.15rem; line-height: 1.55; }
    .iplookup-map { min-height: 420px; border: 1px solid hsl(var(--border)); border-radius: .95rem; overflow: hidden; background: #d9eef4; }
    .tool-iplookup :where(h1,h2,h3,h4,p,li,span,strong,summary,a,button,label,div) { font-weight: 400 !important; }
    .tool-iplookup :where(.myip-title,.myip-card-head h2,.myip-info-block h2,.tool-rating-title) { font-weight: 500 !important; }
    .myip-hero { text-align: center; padding: clamp(2.25rem, 4vw, 3rem) 0 1.5rem; }
    .myip-title { margin: 0; font-size: clamp(2.35rem, 6vw, 4.35rem); line-height: 1.12; padding-top: .12rem; font-weight: 500; background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .myip-lead { max-width: 760px; margin: 1.2rem auto 0; color: hsl(var(--muted-foreground)); font-size: clamp(1.05rem, 2vw, 1.45rem); line-height: 1.5; font-weight: 400; }
    .myip-card, .myip-info-block, .myip-cta-block { border: 1px solid hsl(var(--border)); border-radius: 1rem; background: linear-gradient(135deg, hsl(var(--card) / .86), hsl(150 80% 20% / .08)); box-shadow: 0 20px 55px rgba(0,0,0,.16); }
    .myip-card-head { display: grid; grid-template-columns: 2.6rem minmax(0, 1fr); gap: 1rem; align-items: center; padding: 1.6rem 1.8rem; border-bottom: 1px solid hsl(var(--border)); }
    .myip-card-head h2, .myip-info-block h2, .myip-faq h2 { margin: 0; font-size: clamp(1.35rem, 3vw, 2.05rem); font-weight: 500; background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .myip-card-head p, .myip-info-block p { margin: .4rem 0 0; color: hsl(var(--muted-foreground)); line-height: 1.55; font-weight: 400; }
    .myip-icon { color: hsl(var(--primary)); }
    .myip-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.1rem; padding: 1.8rem; }
    .myip-field { min-height: 5rem; border: 1px solid hsl(var(--border)); border-radius: .85rem; background: hsl(var(--card) / .62); padding: 1rem; display: grid; gap: .35rem; }
    .myip-field span { color: hsl(var(--primary)); font-size: .95rem; font-weight: 500; }
    .myip-field strong { color: hsl(var(--foreground)); font-size: 1rem; font-weight: 400; overflow-wrap: anywhere; }
    .myip-info-block { padding: 1.6rem 1.8rem; }
    .myip-info-title { display: flex; align-items: center; gap: .8rem; margin-bottom: 1rem; }
    .myip-bullets, .myip-steps, .myip-feature-grid, .myip-audience-grid, .myip-continue-grid { display: grid; gap: 1rem; margin-top: 1.25rem; }
    .myip-bullets { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .myip-feature-grid, .myip-audience-grid, .myip-continue-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .myip-mini-card { border: 1px solid hsl(var(--border)); border-radius: .9rem; background: hsl(var(--background) / .42); padding: 1.15rem; display: grid; gap: .55rem; }
    .myip-mini-card h3 { margin: 0; font-size: 1.05rem; font-weight: 500; color: hsl(var(--foreground)); }
    .myip-mini-card p, .myip-mini-card li { margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.55; font-weight: 400; }
    .myip-trust-list { display: grid; gap: 1.25rem; margin-top: 1.25rem; }
    .myip-trust-item { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: .85rem; align-items: start; }
    .myip-trust-item svg { width: 1.45rem; height: 1.45rem; color: hsl(var(--primary)); margin-top: .1rem; }
    .myip-trust-item h3 { margin: 0 0 .45rem; color: hsl(var(--foreground)); font-size: 1rem; font-weight: 500; }
    .myip-trust-item p { margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.7; font-weight: 400; }
    .myip-cta-block { padding: clamp(2rem, 4vw, 3rem); display: grid; justify-items: center; gap: 1rem; text-align: center; border-color: hsl(var(--primary) / .5); background: radial-gradient(circle at 74% 44%, hsl(150 85% 22% / .28), transparent 38%), linear-gradient(135deg, hsl(var(--card) / .86), hsl(var(--background) / .74)); }
    .myip-cta-icon { width: 4rem; height: 4rem; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; color: hsl(var(--primary)); background: hsl(var(--primary) / .13); }
    .myip-cta-block h2 { margin: .55rem 0 0; color: hsl(var(--foreground)); font-size: clamp(1.45rem, 3vw, 2rem); font-weight: 500; }
    .myip-cta-block p { max-width: 720px; margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.65; font-weight: 400; }
    .myip-cta-block .btn-primary { margin-top: 1rem; min-width: min(100%, 24rem); }
    .myip-faq details { border-top: 1px solid hsl(var(--border)); padding: 1rem .25rem; }
    .myip-faq summary { cursor: pointer; color: hsl(var(--foreground)); font-weight: 400; }
    .myip-faq p { color: hsl(var(--muted-foreground)); line-height: 1.6; font-weight: 400; }
    .ip-blacklist-page { display: grid; gap: 1.75rem; }
    .ip-blacklist-hero { text-align: center; padding: clamp(2rem, 4vw, 3rem) 0 1rem; }
    .ip-blacklist-title { margin: 0; font-size: clamp(2.15rem, 5.4vw, 4rem); line-height: 1.08; font-weight: 500; background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .ip-blacklist-lead { max-width: 850px; margin: 1.1rem auto 0; color: hsl(var(--muted-foreground)); font-size: clamp(1.02rem, 2vw, 1.35rem); line-height: 1.55; }
    .ip-blacklist-search-card,
    .ip-blacklist-info-card,
    .ip-blacklist-cta,
    .ip-blacklist-result,
    .ip-blacklist-loading {
      border: 1px solid hsl(var(--border));
      border-radius: 1rem;
      background: linear-gradient(135deg, hsl(var(--card) / .88), hsl(150 80% 18% / .06));
      box-shadow: 0 20px 55px rgba(0,0,0,.16);
    }
    .ip-blacklist-search-card { padding: clamp(1.35rem, 3vw, 2rem); text-align: center; }
    .ip-blacklist-search-card h2,
    .ip-blacklist-info-card h2,
    .ip-blacklist-cta h2 {
      margin: 0;
      font-size: clamp(1.45rem, 3vw, 2.08rem);
      font-weight: 500;
      background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
    .ip-blacklist-search-card > p {
      max-width: 660px;
      margin: .55rem auto 0;
      color: hsl(var(--muted-foreground));
      font-size: .9rem;
      line-height: 1.5;
      font-weight: 400;
    }
    .ip-blacklist-info-card p,
    .ip-blacklist-info-card li,
    .ip-blacklist-cta p { color: hsl(var(--muted-foreground)); line-height: 1.65; font-weight: 400; }
    .ip-blacklist-form { max-width: 720px; margin: 1.05rem auto 0; display: grid; gap: .75rem; text-align: left; }
    .ip-blacklist-form label { display: flex; align-items: center; gap: .5rem; color: hsl(var(--muted-foreground)); font-weight: 500; }
    .ip-blacklist-form label svg { width: 1.15rem; height: 1.15rem; color: hsl(var(--primary)); }
    .ip-blacklist-input-wrap { position: relative; display: block; }
    .ip-blacklist-input {
      width: 100%;
      min-height: 3.35rem;
      border: 2px solid hsl(var(--primary));
      border-radius: .8rem;
      background: hsl(230 18% 9% / .88);
      color: hsl(var(--foreground));
      padding: .72rem 3.1rem .72rem .95rem;
      font: inherit;
      font-size: .95rem;
      outline: none;
      box-shadow: 0 0 0 3px hsl(var(--primary) / .18);
      transition: border-color .18s ease, box-shadow .18s ease;
    }
    .ip-blacklist-input::placeholder { color: hsl(var(--muted-foreground)); }
    .ip-blacklist-status-icon {
      position: absolute;
      right: 1rem;
      top: 50%;
      transform: translateY(-50%);
      width: 1.55rem;
      height: 1.55rem;
      opacity: 0;
      color: hsl(145 80% 48%);
      pointer-events: none;
    }
    .ip-blacklist-input-wrap.is-valid .ip-blacklist-input { border-color: hsl(145 80% 43%); box-shadow: 0 0 0 3px hsl(145 80% 43% / .24); }
    .ip-blacklist-input-wrap.is-invalid .ip-blacklist-input { border-color: hsl(0 84% 61%); box-shadow: 0 0 0 3px hsl(0 84% 61% / .24); }
    .ip-blacklist-input-wrap.is-valid .ip-blacklist-status-icon,
    .ip-blacklist-input-wrap.is-invalid .ip-blacklist-status-icon { opacity: 1; }
    .ip-blacklist-input-wrap.is-invalid .ip-blacklist-status-icon { color: hsl(0 84% 61%); }
    .ip-blacklist-error-text { min-height: 1.2rem; color: hsl(0 92% 66%); font-size: .95rem; line-height: 1.3; }
    .ip-blacklist-form .btn-primary { min-height: 3.1rem; width: 100%; display: inline-flex; align-items: center; justify-content: center; gap: .65rem; border-radius: .7rem; font-size: .95rem; }
    .ip-blacklist-form .btn-primary svg { width: 1.05rem; height: 1.05rem; }
    .ip-blacklist-form .btn-primary:disabled { opacity: .55; cursor: not-allowed; filter: saturate(.65); }
    .ip-blacklist-note { margin: .8rem auto 0; max-width: 760px; color: hsl(var(--muted-foreground)); font-size: .9rem; line-height: 1.5; }
    .ip-blacklist-loading { display: none; min-height: 16rem; place-items: center; text-align: center; padding: 2rem; }
    .ip-blacklist-loading.is-visible { display: grid; }
    .ip-blacklist-spinner { width: 3.1rem; height: 3.1rem; border: .34rem solid hsl(var(--primary) / .24); border-top-color: hsl(var(--primary)); border-radius: 999px; margin: 0 auto 1.2rem; animation: ipBlacklistSpin .9s linear infinite; }
    @keyframes ipBlacklistSpin { to { transform: rotate(360deg); } }
    .ip-blacklist-loading h3 { margin: 0; color: hsl(var(--foreground)); font-size: 1.35rem; font-weight: 500; }
    .ip-blacklist-loading p { margin: .55rem 0 0; color: hsl(var(--muted-foreground)); }
    .ip-blacklist-result { overflow: hidden; border-color: hsl(var(--primary) / .5); background: radial-gradient(circle at 100% 0, hsl(150 80% 18% / .16), transparent 34rem), hsl(var(--card) / .9); }
    .ip-blacklist-report-head { display: grid; grid-template-columns: 3.8rem minmax(0, 1fr) minmax(190px, auto); gap: 1rem; align-items: center; padding: clamp(1.4rem, 3vw, 2rem); }
    .ip-blacklist-result-icon { width: 3.8rem; height: 3.8rem; display: grid; place-items: center; color: hsl(145 80% 48%); }
    .ip-blacklist-result.listed .ip-blacklist-result-icon { color: hsl(0 84% 64%); }
    .ip-blacklist-result-icon svg { width: 3.1rem; height: 3.1rem; }
    .ip-blacklist-report-head h2 { margin: 0; font-size: clamp(1.65rem, 3.5vw, 2.35rem); background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .ip-blacklist-report-head p { margin: .25rem 0 0; color: hsl(var(--muted-foreground)); }
    .ip-blacklist-report-head b { color: hsl(var(--primary)); overflow-wrap: anywhere; }
    .ip-blacklist-score { display: grid; gap: .35rem; justify-items: end; color: hsl(var(--muted-foreground)); }
    .ip-blacklist-score div { width: 10rem; height: .75rem; border-radius: 999px; overflow: hidden; background: hsl(220 45% 25%); }
    .ip-blacklist-score i { display: block; height: 100%; border-radius: inherit; background: hsl(145 70% 48%); }
    .ip-blacklist-result.listed .ip-blacklist-score i { background: hsl(0 84% 60%); }
    .ip-blacklist-score strong { color: hsl(145 80% 48%); font-size: 1.8rem; line-height: 1; }
    .ip-blacklist-result.listed .ip-blacklist-score strong { color: hsl(0 84% 68%); }
    .ip-blacklist-summary { margin: 0 clamp(1.4rem, 3vw, 2rem) 1.4rem; border: 1px solid hsl(var(--border)); border-radius: .75rem; background: hsl(var(--background) / .42); padding: 1rem 1.15rem; color: hsl(var(--foreground)); line-height: 1.55; }
    .ip-blacklist-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; padding: clamp(1.4rem, 3vw, 2rem); border-top: 1px solid hsl(var(--border)); }
    .ip-blacklist-stats article { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: .85rem; align-items: start; min-height: 6rem; border-radius: .9rem; background: hsl(var(--background) / .38); padding: 1.2rem; }
    .ip-blacklist-stats article > span { color: hsl(var(--primary)); }
    .ip-blacklist-stats svg { width: 1.45rem; height: 1.45rem; }
    .ip-blacklist-stats p { margin: 0 0 .45rem; color: hsl(var(--muted-foreground)); }
    .ip-blacklist-stats strong { color: hsl(var(--foreground)); font-size: 1.05rem; }
    .ip-blacklist-pill { display: inline-flex; width: max-content; border-radius: 999px; padding: .25rem .75rem; background: hsl(145 70% 44%); color: #fff !important; }
    .ip-blacklist-result.listed .ip-blacklist-pill { background: hsl(0 84% 60%); }
    .ip-blacklist-listed { margin: 0 clamp(1.4rem, 3vw, 2rem) 1.8rem; border: 1px solid hsl(0 84% 60% / .42); border-radius: .85rem; padding: 1rem 1.15rem; color: hsl(0 92% 72%); background: hsl(0 72% 16% / .18); }
    .ip-blacklist-listed h3 { margin: 0 0 .7rem; color: hsl(0 92% 72%); }
    .ip-blacklist-listed ul { margin: 0; padding-left: 1.2rem; }
    .ip-blacklist-info-card { padding: clamp(1.45rem, 3vw, 2rem); }
    .ip-blacklist-importance { text-align: center; padding: clamp(1.9rem, 4vw, 3rem); }
    .ip-blacklist-importance .ip-blacklist-info-title {
      justify-content: center;
      margin-bottom: 1.25rem;
    }
    .ip-blacklist-importance .ip-blacklist-info-title svg { display: none; }
    .ip-blacklist-importance > p {
      max-width: 880px;
      margin: 0 auto;
      font-size: clamp(1rem, 1.6vw, 1.25rem);
      line-height: 1.7;
    }
    .ip-blacklist-info-title { display: flex; align-items: center; gap: .8rem; margin-bottom: 1rem; }
    .ip-blacklist-info-title svg,
    .ip-blacklist-trust-item > svg { width: 1.55rem; height: 1.55rem; color: hsl(var(--primary)); flex: 0 0 auto; }
    .ip-blacklist-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 1.2rem; }
    .ip-blacklist-importance .ip-blacklist-grid { gap: 1.75rem; margin-top: 2.4rem; }
    .ip-blacklist-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ip-blacklist-mini { border: 1px solid hsl(var(--border)); border-radius: .9rem; background: hsl(var(--background) / .42); padding: 1.15rem; }
    .ip-blacklist-importance .ip-blacklist-mini {
      min-height: 14.5rem;
      display: grid;
      grid-template-columns: 3rem minmax(0, 1fr);
      align-content: start;
      gap: .85rem 1rem;
      text-align: left;
      padding: 1.9rem 1.85rem;
      background: hsl(var(--background) / .36);
    }
    .ip-blacklist-mini-icon {
      width: 2.2rem;
      height: 2.2rem;
      color: hsl(var(--primary));
      grid-row: 1 / span 2;
      margin-top: .1rem;
    }
    .ip-blacklist-mini-icon.red { color: hsl(0 92% 64%); }
    .ip-blacklist-mini-icon.yellow { color: hsl(45 96% 52%); }
    .ip-blacklist-importance .ip-blacklist-mini p { grid-column: 2; }
    .ip-blacklist-mini h3 { margin: 0 0 .45rem; color: hsl(var(--foreground)); font-size: 1.04rem; font-weight: 500; }
    .ip-blacklist-importance .ip-blacklist-mini h3 { margin: 0; font-size: 1.18rem; line-height: 1.35; }
    .ip-blacklist-status-list { display: grid; gap: .8rem; margin-top: 1rem; }
    .ip-blacklist-status-list p { margin: 0; }
    .ip-blacklist-trust-list { display: grid; gap: 1.15rem; margin-top: 1.15rem; }
    .ip-blacklist-trust-item { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: .85rem; align-items: start; }
    .ip-blacklist-trust-item h3 { margin: 0 0 .35rem; color: hsl(var(--foreground)); font-size: 1.05rem; font-weight: 500; }
    .ip-blacklist-faq details { border-top: 1px solid hsl(var(--border)); padding: 1rem .15rem; }
    .ip-blacklist-faq details:first-of-type { border-top: 0; }
    .ip-blacklist-faq summary { cursor: pointer; color: hsl(var(--foreground)); font-size: 1.02rem; font-weight: 400; }
    .ip-blacklist-healthy { border-radius: .8rem; padding: clamp(1.45rem, 3vw, 2rem); background: linear-gradient(115deg, hsl(var(--primary)), hsl(145 72% 46%)); color: hsl(220 25% 7%); }
    .ip-blacklist-healthy h2 { margin: 0 0 .65rem; color: hsl(220 25% 7%); font-size: clamp(1.45rem, 3vw, 2rem); font-weight: 500; }
    .ip-blacklist-healthy p { margin: .6rem 0 0; color: hsl(220 25% 7%); line-height: 1.65; }
    .ip-blacklist-continue-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 1.2rem; }
    .ip-blacklist-continue-grid a { border: 1px solid hsl(var(--border)); border-radius: .85rem; background: hsl(var(--background) / .42); padding: 1rem; text-decoration: none; color: inherit; }
    .ip-blacklist-continue-grid h3 { margin: 0 0 .4rem; color: hsl(var(--foreground)); font-weight: 500; }
    .ip-blacklist-continue-grid p { margin: 0; }
    .ip-blacklist-cta { padding: clamp(2rem, 4vw, 3rem); display: grid; justify-items: center; gap: 1rem; text-align: center; border-color: hsl(var(--primary) / .5); }
    .ip-blacklist-cta .btn-primary { margin-top: .5rem; min-width: min(100%, 22rem); }
    @media (max-width: 900px) {
      .ip-blacklist-report-head,
      .ip-blacklist-stats,
      .ip-blacklist-grid,
      .ip-blacklist-grid.two,
      .ip-blacklist-continue-grid { grid-template-columns: 1fr; }
      .ip-blacklist-score { justify-items: start; }
    }
    @media (max-width: 900px) { .iplookup-search-row { grid-template-columns: 1fr; } .iplookup-map { min-height: 320px; } }
    .ping-page { display: grid; gap: 1.75rem; }
    .ping-hero { text-align: center; padding: clamp(2rem, 4vw, 3rem) 0 1rem; }
    .ping-title { margin: 0; font-size: clamp(2.2rem, 5vw, 4rem); line-height: 1.08; font-weight: 500; background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .ping-lead { max-width: 850px; margin: 1rem auto 0; color: hsl(var(--muted-foreground)); font-size: clamp(1rem, 2vw, 1.35rem); line-height: 1.55; font-weight: 400; }
    .ping-card, .ping-info-card, .ping-result-card, .ping-loading, .ping-cta { border: 1px solid hsl(var(--border)); border-radius: 1rem; background: linear-gradient(135deg, hsl(var(--card) / .88), hsl(150 80% 18% / .06)); box-shadow: 0 20px 55px rgba(0,0,0,.16); }
    .ping-card { padding: clamp(1.5rem, 3vw, 2rem); }
    .ping-card-head { text-align: center; display: grid; justify-items: center; gap: .7rem; margin-bottom: 1.5rem; }
    .ping-card-icon { width: 4.4rem; height: 4.4rem; border-radius: 999px; display: grid; place-items: center; color: white; background: linear-gradient(135deg, hsl(var(--primary)), hsl(var(--accent))); }
    .ping-card-icon svg { width: 2.3rem; height: 2.3rem; }
    .ping-card h2, .ping-info-card h2, .ping-cta h2 { margin: 0; font-size: clamp(1.45rem, 3vw, 2rem); font-weight: 500; color: hsl(var(--foreground)); }
    .ping-card p, .ping-info-card p, .ping-info-card li, .ping-cta p { color: hsl(var(--muted-foreground)); line-height: 1.65; font-weight: 400; }
    .ping-form { display: grid; gap: 1.25rem; }
    .ping-form label, .ping-label { display: flex; align-items: center; gap: .55rem; color: hsl(var(--foreground)); font-weight: 500; }
    .ping-form label svg, .ping-label svg { width: 1.1rem; height: 1.1rem; color: hsl(var(--primary)); }
    .ping-input-wrap { position: relative; display: block; }
    .ping-input { width: 100%; min-height: 3.6rem; border: 1px solid hsl(var(--border)); border-radius: .75rem; background: hsl(230 18% 9% / .88); color: hsl(var(--foreground)); padding: .8rem 3.1rem .8rem 1rem; font: inherit; outline: none; }
    .ping-input-wrap.is-valid .ping-input { border-color: hsl(145 80% 43%); box-shadow: 0 0 0 3px hsl(145 80% 43% / .24); }
    .ping-input-wrap.is-invalid .ping-input { border-color: hsl(0 84% 61%); box-shadow: 0 0 0 3px hsl(0 84% 61% / .24); }
    .ping-status-icon { position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); width: 1.45rem; height: 1.45rem; opacity: 0; color: hsl(145 80% 48%); }
    .ping-input-wrap.is-valid .ping-status-icon, .ping-input-wrap.is-invalid .ping-status-icon { opacity: 1; }
    .ping-input-wrap.is-invalid .ping-status-icon { color: hsl(0 84% 61%); }
    .ping-error { min-height: 1.2rem; color: hsl(0 92% 66%); font-size: .95rem; }
    .ping-select { width: 100%; min-height: 3.5rem; border: 1px solid hsl(var(--border)); border-radius: .75rem; background: hsl(230 18% 9% / .88); color: hsl(var(--foreground)); padding: .75rem 1rem; font: inherit; }
    .ping-mode-desc { margin: .55rem 0 0; font-size: .92rem; }
    .ping-custom-locations { display: none; border: 1px solid hsl(var(--border)); border-radius: .9rem; padding: 1rem; }
    .ping-custom-locations.is-visible { display: block; }
    .ping-location-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .65rem; margin-top: .9rem; }
    .ping-location-grid label { display: grid; gap: .25rem; align-items: center; border: 1px solid hsl(var(--border)); border-radius: .7rem; background: hsl(var(--background) / .42); padding: .75rem; cursor: pointer; }
    .ping-location-grid strong { font-weight: 400; color: hsl(var(--foreground)); }
    .ping-location-grid input { display: none; }
    .ping-location-grid label:has(input:checked) { border-color: hsl(var(--primary)); background: hsl(var(--primary) / .12); }
    .ping-submit { width: 100%; min-height: 3.55rem; justify-self: stretch; padding: .85rem 1.35rem; display: inline-flex; align-items: center; justify-content: center; gap: .85rem; border-radius: .75rem; border: 0; background: hsl(221 86% 55%); color: #fff; box-shadow: 0 14px 32px hsl(221 86% 45% / .28); font-size: 1.08rem; font-weight: 500; white-space: nowrap; }
    .ping-submit:hover { background: hsl(221 91% 58%); box-shadow: 0 16px 38px hsl(221 86% 45% / .36); }
    .ping-submit svg { width: 1.25rem; height: 1.25rem; flex: 0 0 1.25rem; color: currentColor; }
    .ping-submit:disabled { opacity: .55; cursor: not-allowed; filter: saturate(.65); }
    .ping-loading { display: none; min-height: 18rem; place-items: center; text-align: center; padding: 2rem; }
    .ping-loading.is-visible { display: grid; }
    .ping-loading svg { width: 4.4rem; height: 4.4rem; color: hsl(var(--primary)); margin-bottom: 1.2rem; animation: pulse 1.2s ease-in-out infinite; }
    .ping-limit-warning { border: 1px solid hsl(45 96% 52% / .42); border-radius: .85rem; background: hsl(45 96% 18% / .2); color: hsl(45 96% 72%); padding: 1rem 1.15rem; line-height: 1.55; }
    .ping-limit-warning strong { color: hsl(45 96% 62%); }
    .ping-result-card { overflow: hidden; padding: 0; }
    .ping-result-head { display: grid; grid-template-columns: 3.8rem minmax(0, 1fr) auto; gap: 1rem; align-items: center; padding: clamp(1.4rem, 3vw, 2rem); border-bottom: 1px solid hsl(var(--border)); }
    .ping-result-icon { width: 3.8rem; height: 3.8rem; display: grid; place-items: center; color: hsl(var(--primary)); }
    .ping-result-icon svg { width: 3rem; height: 3rem; }
    .ping-result-head h2 { margin: 0; font-size: clamp(1.6rem, 3vw, 2.25rem); background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .ping-result-head p, .ping-result-summary span { margin: .25rem 0 0; color: hsl(var(--muted-foreground)); }
    .ping-result-summary { display: grid; justify-items: end; gap: .2rem; }
    .ping-result-summary strong { color: hsl(var(--foreground)); font-size: 1.35rem; font-weight: 500; }
    .ping-location-results { display: grid; gap: 1rem; padding: clamp(1.4rem, 3vw, 2rem); }
    .ping-location-card { border: 1px solid hsl(var(--border)); border-radius: .9rem; background: hsl(var(--background) / .42); padding: 1.15rem; }
    .ping-location-head { display: grid; grid-template-columns: 2.3rem minmax(0, 1fr) auto; gap: .8rem; align-items: start; }
    .ping-location-flag { font-size: 1.7rem; line-height: 1; }
    .ping-location-head h3 { margin: 0; color: hsl(var(--foreground)); font-size: 1.1rem; font-weight: 400; }
    .ping-location-head p { margin: .2rem 0 0; color: hsl(var(--muted-foreground)); font-size: .92rem; }
    .ping-location-head strong { color: hsl(145 80% 48%); font-weight: 400; }
    .ping-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin: 1rem 0; }
    .ping-metrics div { border-radius: .7rem; background: hsl(var(--card) / .62); padding: .8rem; }
    .ping-metrics strong { display: block; color: hsl(var(--foreground)); font-size: 1.15rem; font-weight: 400; }
    .ping-metrics span, .ping-resolved { color: hsl(var(--muted-foreground)); font-size: .9rem; }
    .ping-location-card pre { white-space: pre-wrap; overflow-wrap: anywhere; border-radius: .75rem; background: hsl(230 18% 8% / .8); color: hsl(var(--muted-foreground)); padding: 1rem; font-size: .86rem; line-height: 1.55; }
    .mtr-raw-output { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color: hsl(var(--foreground)) !important; }
    .mtr-time { display: inline-flex; align-items: center; gap: .35rem; width: max-content; margin-top: .45rem; border: 1px solid hsl(var(--primary) / .35); border-radius: 999px; padding: .25rem .65rem; color: hsl(var(--primary)); font-size: .85rem; }
    .http-metrics { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .75rem; margin: 1rem 0; }
    .http-metrics div { border-radius: .7rem; background: hsl(var(--card) / .62); padding: .8rem; }
    .http-metrics strong { display: block; color: hsl(var(--foreground)); font-size: 1.08rem; font-weight: 400; }
    .http-metrics span, .http-headers-title { color: hsl(var(--muted-foreground)); font-size: .9rem; }
    .ping-result-actions { display: flex; flex-wrap: wrap; gap: .7rem; padding: 0 clamp(1.4rem, 3vw, 2rem) clamp(1.4rem, 3vw, 2rem); }
    .ping-result-actions .small-button { position: relative; gap: .75rem; min-height: 2.8rem; border-radius: .8rem; background: hsl(230 16% 10% / .84); border-color: hsl(var(--border)); color: hsl(var(--foreground)); font-weight: 650; }
    .ping-result-actions .small-button svg { width: 1.15rem; height: 1.15rem; flex: 0 0 1.15rem; color: hsl(var(--foreground)); }
    .ping-result-actions .small-button:hover { border-color: hsl(var(--primary) / .62); background: hsl(219 68% 18% / .45); }
    .ping-result-actions .small-button::after { content: attr(data-tooltip); position: absolute; left: 50%; bottom: calc(100% + .55rem); transform: translateX(-50%) translateY(.25rem); z-index: 6; width: max-content; max-width: 240px; border: 1px solid hsl(var(--border)); border-radius: .75rem; background: hsl(230 14% 9% / .98); color: hsl(var(--foreground)); padding: .6rem .85rem; font-size: .9rem; line-height: 1.2; font-weight: 400; box-shadow: 0 12px 32px rgba(0,0,0,.35); opacity: 0; pointer-events: none; transition: opacity .16s ease, transform .16s ease; }
    .ping-result-actions .small-button:hover::after, .ping-result-actions .small-button:focus-visible::after { opacity: 1; transform: translateX(-50%) translateY(0); }
    .globalping-link { color: hsl(var(--primary)); font-weight: 750; text-decoration: none; border-bottom: 1px solid hsl(var(--primary) / .55); text-shadow: 0 0 18px hsl(var(--primary) / .22); }
    .globalping-link:hover, .globalping-link:focus-visible { color: hsl(142 76% 52%); border-bottom-color: hsl(142 76% 52%); outline: none; }
    .portscan-form-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 1.2rem; }
    .portscan-form-grid .full { grid-column: 1 / -1; }
    .portscan-result-card { margin-top: 2rem; border: 1px solid hsl(var(--border)); border-radius: 1rem; background: linear-gradient(135deg, hsl(var(--card) / .9), hsl(150 80% 12% / .07)); overflow: hidden; }
    .portscan-result-head { display: grid; grid-template-columns: 2.6rem minmax(0,1fr); gap: 1rem; align-items: center; padding: clamp(1.4rem, 3vw, 2rem); border-bottom: 1px solid hsl(var(--border)); }
    .portscan-result-icon { color: hsl(var(--primary)); }
    .portscan-result-icon svg { width: 2rem; height: 2rem; }
    .portscan-result-head h2 { margin: 0; font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 650; }
    .portscan-result-head p { margin: .35rem 0 0; color: hsl(var(--muted-foreground)); }
    .portscan-result-list { display: grid; gap: .9rem; padding: clamp(1.4rem, 3vw, 2rem); }
    .portscan-port-card { display: grid; grid-template-columns: 2.25rem minmax(0,1fr) auto; gap: 1rem; align-items: center; border-radius: .85rem; padding: 1.25rem; border-left: 4px solid hsl(var(--border)); background: hsl(230 16% 9% / .78); }
    .portscan-port-card.open { border-left-color: hsl(145 80% 48%); background: hsl(145 72% 10% / .72); }
    .portscan-port-card.closed { border-left-color: hsl(0 88% 62%); background: hsl(350 60% 12% / .7); }
    .portscan-port-icon { display: grid; place-items: center; color: hsl(0 88% 62%); }
    .portscan-port-card.open .portscan-port-icon { color: hsl(145 80% 48%); }
    .portscan-port-icon svg { width: 1.7rem; height: 1.7rem; }
    .portscan-port-card h3 { margin: 0; font-size: 1.1rem; font-weight: 650; }
    .portscan-port-card p { margin: .25rem 0 0; color: hsl(var(--muted-foreground)); }
    .portscan-port-card strong { border-radius: 999px; padding: .4rem .8rem; background: hsl(0 88% 58%); color: white; }
    .portscan-port-card.open strong { background: hsl(145 70% 44%); }
    .portscan-warning { margin: 1rem 2rem 0; color: #facc15; }
    .ping-info-card, .ping-cta { padding: clamp(1.5rem, 3vw, 2rem); }
    .ping-info-title { display: flex; align-items: center; gap: .8rem; margin-bottom: 1rem; }
    .ping-info-title svg, .ping-trust-row svg { width: 1.45rem; height: 1.45rem; color: hsl(var(--primary)); }
    .ping-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 1.2rem; }
    .ping-mini { border: 1px solid hsl(var(--border)); border-radius: .85rem; background: hsl(var(--background) / .42); padding: 1rem; }
    .ping-mini h3, .ping-trust-row h3 { margin: 0 0 .45rem; color: hsl(var(--foreground)); font-size: 1.05rem; font-weight: 400; }
    .ping-diagnostics { text-align: center; padding: clamp(2rem, 4vw, 3rem); }
    .ping-diagnostics .ping-info-title { justify-content: center; margin-bottom: 1.2rem; }
    .ping-diagnostics .ping-info-title svg { display: none; }
    .ping-diagnostics .ping-info-title h2 { font-size: clamp(1.9rem, 3.2vw, 2.45rem); background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent))); -webkit-background-clip: text; background-clip: text; color: transparent; }
    .ping-diagnostics > p { max-width: 830px; margin: 0 auto; font-size: 1.05rem; line-height: 1.7; }
    .ping-diagnostics .ping-grid { gap: 1.7rem; margin-top: 2.4rem; }
    .ping-diagnostics .ping-mini { min-height: 16.5rem; display: grid; grid-template-columns: 3rem minmax(0, 1fr); align-content: start; gap: .85rem 1rem; text-align: left; padding: 1.9rem 1.85rem; background: hsl(var(--background) / .36); }
    .ping-mini-icon { width: 2.25rem; height: 2.25rem; color: hsl(var(--primary)); grid-row: 1 / span 2; margin-top: .1rem; }
    .ping-mini-icon.green { color: hsl(145 80% 48%); }
    .ping-mini-icon.red { color: hsl(0 92% 64%); }
    .ping-diagnostics .ping-mini h3 { margin: 0; font-size: 1.18rem; line-height: 1.35; font-weight: 500; }
    .ping-diagnostics .ping-mini p { grid-column: 2; margin: 0; }
    .ping-use { padding: clamp(1.75rem, 3vw, 2.35rem); }
    .ping-use .ping-info-title h2 { font-size: 1.35rem; font-weight: 500; color: hsl(var(--foreground)); }
    .ping-use-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.45rem 3rem; margin-top: 1.8rem; }
    .ping-use-item { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); gap: .9rem; align-items: start; }
    .ping-use-item svg { width: 2rem; height: 2rem; color: hsl(var(--primary)); }
    .ping-use-item svg.green { color: hsl(145 80% 48%); }
    .ping-use-item h3 { margin: 0 0 .4rem; color: hsl(var(--foreground)); font-size: 1.05rem; font-weight: 500; }
    .ping-use-item p { margin: 0; }
    .ping-trust-list { display: grid; gap: 1rem; }
    .ping-trust-row { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: .85rem; }
    .ping-faq details { border-top: 1px solid hsl(var(--border)); padding: 1rem .15rem; }
    .ping-faq summary { cursor: pointer; color: hsl(var(--foreground)); font-weight: 400; }
    .ping-cta { text-align: center; border-color: hsl(var(--primary) / .5); }
    .ping-cta .btn-primary { margin-top: 1rem; min-width: min(100%, 22rem); }
    @media (max-width: 900px) { .ping-result-head, .ping-grid, .ping-location-grid, .ping-metrics, .http-metrics, .ping-use-grid { grid-template-columns: 1fr; } .ping-result-summary { justify-items: start; } .ping-submit { width: 100%; } }
    .loading { display: none; position: fixed; inset: 0; z-index: 80; place-items: center; background: rgba(0,0,0,.62); backdrop-filter: blur(8px); }
    .loading-card { width: min(92vw, 430px); border: 1px solid hsl(var(--border)); border-radius: 1.5rem; background: hsl(var(--card)); padding: 2rem; text-align: center; box-shadow: 0 22px 70px rgba(0,0,0,.42); }
    .spinner { width: 3rem; height: 3rem; margin: 0 auto 1rem; border: 4px solid hsl(var(--border)); border-top-color: hsl(var(--primary)); border-radius: 999px; animation: spin 1s linear infinite; }
    @keyframes spin { to { transform: rotate(360deg); } }
    .cookie { position: fixed; left: 1rem; right: 1rem; bottom: 1rem; z-index: 70; display: none; max-width: 920px; margin: 0 auto; border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(var(--card)); padding: 1rem; box-shadow: 0 18px 44px rgba(0,0,0,.22); }
    .cookie p { margin: 0 0 .75rem; color: hsl(var(--muted-foreground)); font-weight: 700; }
    @media (max-width: 1180px) {
      .brand-zone { margin-left: 0; flex: 0 1 auto; }
      .sidebar { transform: translateX(-100%); transition: transform .2s ease; }
      body.menu-open .sidebar { transform: translateX(0); }
      body.menu-open::before { content: ""; position: fixed; inset: 0; z-index: 25; background: rgba(0,0,0,.42); backdrop-filter: blur(2px); }
      .page, body.sidebar-collapsed .page { padding-left: 0; }
      .mobile-menu { display: inline-flex; flex: 0 0 auto; }
      .header-nav .optional { display: none; }
      body.sidebar-collapsed .sidebar-inner { padding: 1.5rem; }
      body.sidebar-collapsed .group-title,
      body.sidebar-collapsed .side-title,
      body.sidebar-collapsed .quick-access-title span,
      body.sidebar-collapsed .sidebar-brand-pill span,
      body.sidebar-collapsed .sidebar-toggle span,
      body.sidebar-collapsed .group-head > span:last-child { opacity: 1; max-width: none; overflow: visible; visibility: visible; transform: none; white-space: normal; }
      body.sidebar-collapsed .group-head,
      body.sidebar-collapsed .side-item { justify-content: flex-start; padding: .75rem; }
      body.sidebar-collapsed .group-left { width: auto; justify-content: flex-start; gap: .75rem; }
      body.sidebar-collapsed .group-icon,
      body.sidebar-collapsed .side-icon { margin: 0; }
      body.sidebar-collapsed .sidebar-list { padding-left: .5rem; }
      body.sidebar-collapsed .sidebar-brand-pill { width: 100%; }
    }
    @media (max-width: 900px) {
      .site-header { height: auto; min-height: 5.5rem; }
      .header-inner { min-height: 5.5rem; padding: .85rem 1rem; gap: .75rem; }
      .brand-mark { width: 3.35rem; height: 3.35rem; }
      .brand-title { font-size: 1.25rem; max-width: 13rem; }
      .brand-subtitle { display: none; }
      .page { padding-top: 5.5rem; }
      .main { padding: 1rem; }
      .hero { padding: 1.25rem; margin-bottom: 2.5rem; }
      .hero-grid, .checker-grid, .about-grid, .speed-info-block.speed-feature, .speed-benefit-grid, .dns-info-grid, .dns-info-grid.two, .myip-grid, .myip-bullets, .myip-feature-grid, .myip-audience-grid, .myip-continue-grid { grid-template-columns: 1fr; }
      .tools-grid, .action-grid, .dns-type-grid, .speed-grid, .speed-info-grid, .continue-grid, .footer-grid { grid-template-columns: 1fr; }
      .speed-controls { grid-template-columns: 1fr; }
      .stat-grid, .output .result-grid { grid-template-columns: 1fr; }
      .hero-title { font-size: clamp(2.35rem, 12vw, 3.5rem); }
      .speed-page-title { font-size: clamp(2.25rem, 12vw, 3.45rem); }
      .dns-page-title { font-size: clamp(1.35rem, 7vw, 2.25rem); }
      .speed-page-lead, .dns-page-lead { font-size: 1rem; }
      .speed-start-card .btn-primary { min-width: 0; width: 100%; }
      .tool-rating { grid-template-columns: 1fr; text-align: left; }
      .tool-rating-stars { justify-content: flex-start; }
      .tool-rating-stats { text-align: left; }
      .sidebar, body.sidebar-collapsed .sidebar { top: 5.5rem; width: min(20rem, 86vw); }
      .continue-section { margin-top: 1.5rem; padding: 2.25rem 1rem; }
      .footer { padding: 2.5rem 1rem 1.25rem; }
    }
    @media (max-width: 640px) {
      .site-header { min-height: 4.9rem; overflow: visible; }
      .header-inner { min-height: 4.9rem; display: grid; grid-template-columns: auto auto minmax(0, 1fr); gap: .55rem; padding: .65rem .65rem; }
      .mobile-menu { width: 2.55rem; height: 2.55rem; border-radius: .8rem; }
      .brand-zone { flex: 0 0 auto; width: auto; min-width: 0; }
      .brand { gap: 0; }
      .brand > span:not(.brand-mark-wrap) { display: none; }
      .brand-mark { width: 3rem; height: 3rem; border-radius: .85rem; }
      .brand-mark svg { width: 1.55rem; height: 1.55rem; }
      .header-nav { min-width: 0; justify-content: flex-end; gap: .42rem; overflow: hidden; }
      .header-nav > .nav-link:not(.donate-link),
      .theme-menu { display: none; }
      .donate-link { min-height: 2.45rem; max-width: 9.1rem; padding: .52rem .72rem; font-size: .88rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
      .language-button { min-width: 2.85rem; height: 2.45rem; padding: .4rem .55rem; }
      .language-button svg { display: none; }
      .language-menu-wrap { position: static; }
      .language-menu {
        position: fixed;
        top: 4.55rem;
        left: .65rem;
        right: .65rem;
        width: auto;
        max-height: min(72vh, 30rem);
        overflow-y: auto;
        z-index: 250;
      }
      .page { padding-top: 4.9rem; }
      .sidebar, body.sidebar-collapsed .sidebar { top: 4.9rem; width: min(18.5rem, 82vw); }
      .hero-title { font-size: clamp(2.05rem, 11vw, 3rem); line-height: 1.06; }
      .hero-copy { font-size: 1rem; line-height: 1.55; }
    }
      /* netutils-soft-typography */
    body :where(h1,h2,h3,h4,h5,h6,p,li,span,strong,summary,a,button,label,input,select,textarea,code,div) {
      font-weight: 400 !important;
    }
    body :where(
      .brand-title,
      .hero-title,
      .section-title,
      .dns-page-title,
      .speed-page-title,
      .whois-page-title,
      .myip-title,
      .myip-card-head h2,
      .myip-info-block h2,
      .myip-faq h2,
      .whois-result-head h2,
      .whois-card-title,
      .tool-rating-title,
      .continue-head h2,
      .footer-brand-title
    ) {
      font-weight: 500 !important;
    }
    body :where(.btn-primary,.small-button,.nav-link,.nav-button,.donate-button,.submit,.tool-submit) {
      font-weight: 500 !important;
    }
    body :where(.tools-dropdown-item,.side-link,.quick-access a,.footer a,.language-option,.theme-popover button) {
      font-weight: 400 !important;
    }
    .tool-myip .myip-title,
    .tool-iplookup .myip-title {
      font-size: clamp(1.9rem, 4.7vw, 3.55rem) !important;
      line-height: 1.18 !important;
      padding-top: .45rem !important;
      letter-spacing: -.04em !important;
    }
    .tool-myip .myip-hero,
    .tool-iplookup .myip-hero {
      padding-top: clamp(2.85rem, 5vw, 3.9rem) !important;
    }
    .tool-myip .myip-cta-block .btn-primary,
    .tool-iplookup .myip-cta-block .btn-primary {
      font-weight: 400 !important;
    }
    @media (max-width: 720px) {
      .tool-myip .myip-title,
      .tool-iplookup .myip-title {
        font-size: clamp(2rem, 12vw, 3.2rem) !important;
        line-height: 1.08 !important;
      }
    }

    /* netutils-email-health */
    .tool-emailhealth #checker,
    .tool-emailhealth #result,
    .tool-emailhealth .result-inline,
    .tool-emailhealth .result-inline + .tool-rating {
      display: none !important;
    }
    .tool-emailhealth :where(h1,h2,h3,h4,p,li,span,strong,summary,a,button,label,div) {
      font-weight: 400 !important;
    }
    .tool-emailhealth :where(.email-health-title,.email-health-card-title,.email-health-section-title,.email-health-score h2,.continue-head h2,.tool-rating-title) {
      font-weight: 500 !important;
    }
    .email-health-page { display: grid; gap: 2.25rem; }
    .email-health-hero { text-align: center; padding: 1rem 0 1.6rem; }
    .email-health-title {
      margin: 0 auto 1.1rem;
      max-width: 960px;
      font-size: clamp(2rem, 4.4vw, 3.35rem) !important;
      line-height: 1.02 !important;
      letter-spacing: -.04em;
      background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
    .email-health-lead {
      max-width: 830px;
      margin: 0 auto;
      color: hsl(var(--muted-foreground));
      font-size: clamp(1rem, 1.8vw, 1.32rem);
      line-height: 1.55;
    }
    .email-health-check-card,
    .email-health-result,
    .email-health-info-card,
    .email-health-cta {
      border: 1px solid hsl(var(--border));
      border-radius: 1rem;
      background: linear-gradient(135deg, hsl(var(--card) / .88), hsl(150 80% 18% / .06));
      box-shadow: 0 20px 55px rgba(0,0,0,.16);
    }
    .email-health-check-card {
      width: 100%;
      max-width: none;
      margin-inline: auto;
      padding: clamp(1.15rem, 2.5vw, 1.65rem);
      text-align: center;
    }
    .email-health-check-icon,
    .email-health-card-icon,
    .email-health-mini-icon {
      display: grid;
      place-items: center;
      color: hsl(var(--primary));
      background: linear-gradient(135deg, hsl(var(--primary) / .18), hsl(var(--accent) / .18));
    }
    .email-health-check-icon {
      width: 4.4rem;
      height: 4.4rem;
      margin: 0 auto 1.2rem;
      border-radius: 999px;
    }
    .email-health-check-icon svg { width: 2rem; height: 2rem; }
    .email-health-card-title {
      margin: 0 0 .55rem;
      color: hsl(var(--foreground));
      font-size: clamp(1.5rem, 3vw, 2.15rem);
      line-height: 1.12;
    }
    .email-health-check-card p,
    .email-health-info-card p,
    .email-health-cta p,
    .email-health-card p,
    .email-health-next li,
    .email-health-faq p {
      color: hsl(var(--muted-foreground));
      line-height: 1.65;
    }
    .email-health-form {
      max-width: 1020px;
      margin: 1.35rem auto 0;
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(220px, auto);
      gap: .85rem;
      align-items: end;
      text-align: left;
    }
    .email-health-form label {
      grid-column: 1 / -1;
      color: hsl(var(--muted-foreground));
    }
    .email-health-input-shell { position: relative; display: block; }
    .email-health-input-shell input {
      width: 100%;
      min-height: 3.25rem;
      border: 1px solid hsl(var(--border));
      border-radius: .7rem;
      background: hsl(230 18% 9% / .9);
      color: hsl(var(--foreground));
      padding: .75rem 3rem .75rem .95rem;
      font: inherit;
      outline: none;
      transition: border-color .18s ease, box-shadow .18s ease;
    }
    .email-health-input-shell input:focus {
      border-color: hsl(var(--primary));
      box-shadow: 0 0 0 2px hsl(var(--primary) / .24);
    }
    .email-health-input-shell .validation-icon {
      position: absolute;
      right: 1rem;
      top: 50%;
      transform: translateY(-50%);
      width: 1.55rem;
      height: 1.55rem;
      opacity: 0;
      pointer-events: none;
      color: hsl(145 80% 48%);
    }
    .email-health-input-shell .validation-icon::before { content: "✓"; font-size: 1.5rem; line-height: 1; }
    .email-health-input-shell.is-invalid .validation-icon::before { content: "!"; }
    .email-health-input-shell.is-valid input {
      border-color: hsl(145 80% 43%);
      box-shadow: 0 0 0 2px hsl(145 80% 43% / .24);
    }
    .email-health-input-shell.is-invalid input {
      border-color: hsl(0 84% 61%);
      box-shadow: 0 0 0 2px hsl(0 84% 61% / .24);
    }
    .email-health-input-shell.is-valid .validation-icon,
    .email-health-input-shell.is-invalid .validation-icon { opacity: 1; }
    .email-health-input-shell.is-invalid .validation-icon { color: hsl(0 84% 61%); }
    .email-health-form .btn-primary {
      min-height: 3.25rem;
      white-space: nowrap;
      border-radius: .75rem;
      box-shadow: 0 12px 28px hsl(var(--primary) / .24);
    }
    .email-health-form .btn-primary:disabled { cursor: not-allowed; filter: saturate(.65); opacity: .55; }
    .email-health-error {
      grid-column: 1 / -1;
      min-height: 1.35rem;
      color: hsl(0 92% 66%);
      font-size: .95rem;
      line-height: 1.35;
    }
    .email-health-note {
      max-width: 900px;
      margin: .9rem auto 0;
      color: hsl(var(--muted-foreground));
      font-size: .84rem;
      line-height: 1.45;
      display: flex;
      align-items: flex-start;
      justify-content: center;
      gap: .55rem;
      text-align: left;
    }
    .email-health-note svg {
      flex: 0 0 auto;
      width: 1.1rem;
      height: 1.1rem;
      margin-top: .08rem;
      color: hsl(45 96% 55%);
    }
    .email-health-result { padding: clamp(1.25rem, 3vw, 1.8rem); }
    .email-health-score {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: 1.1rem;
      align-items: center;
      padding-bottom: 1.2rem;
      border-bottom: 1px solid hsl(var(--border));
    }
    .email-score-ring {
      --score: 0;
      width: 6rem;
      height: 6rem;
      border-radius: 999px;
      display: grid;
      place-items: center;
      background: conic-gradient(hsl(145 80% 45%) calc(var(--score) * 1%), hsl(var(--border)) 0);
      position: relative;
      isolation: isolate;
    }
    .email-score-ring::before {
      content: "";
      position: absolute;
      inset: .45rem;
      border-radius: inherit;
      background: hsl(var(--card));
      z-index: -1;
    }
    .email-score-ring strong { font-size: 1.75rem; color: hsl(var(--foreground)); }
    .email-score-ring span { margin-top: -1.6rem; color: hsl(var(--muted-foreground)); font-size: .8rem; }
    .email-health-score h2 {
      margin: 0;
      font-size: clamp(1.45rem, 3vw, 2.15rem);
      background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
    .email-health-score p { margin: .35rem 0 0; color: hsl(var(--muted-foreground)); }
    .email-health-score b { color: hsl(var(--foreground)); overflow-wrap: anywhere; }
    .email-health-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 1rem;
      margin-top: 1.25rem;
    }
    .email-health-card {
      display: grid;
      grid-template-columns: 2.35rem minmax(0, 1fr);
      gap: .9rem;
      border: 1px solid hsl(var(--border));
      border-radius: .9rem;
      background: hsl(var(--background) / .42);
      padding: 1rem;
    }
    .email-health-card-icon {
      width: 2.35rem;
      height: 2.35rem;
      border-radius: 999px;
    }
    .email-health-card-ok .email-health-card-icon { color: hsl(145 80% 45%); background: hsl(145 80% 45% / .12); }
    .email-health-card-warn .email-health-card-icon { color: hsl(38 92% 55%); background: hsl(38 92% 55% / .14); }
    .email-health-card-bad .email-health-card-icon { color: hsl(0 84% 64%); background: hsl(0 84% 64% / .14); }
    .email-health-card h3 { margin: 0 0 .35rem; color: hsl(var(--foreground)); font-size: 1.05rem; }
    .email-health-card p { margin: 0; }
    .email-health-card ul,
    .email-health-next ul {
      margin: .75rem 0 0;
      padding-left: 1.05rem;
      color: hsl(var(--muted-foreground));
      overflow-wrap: anywhere;
    }
    .email-health-next {
      margin-top: 1.25rem;
      border: 1px solid hsl(var(--primary) / .28);
      border-radius: .9rem;
      background: hsl(var(--primary) / .08);
      padding: 1rem 1.1rem;
    }
    .email-health-next h3 { margin: 0; color: hsl(var(--foreground)); font-size: 1.1rem; }
    .email-health-alert {
      border: 1px solid hsl(0 84% 61% / .45);
      border-radius: .9rem;
      background: hsl(0 70% 18% / .2);
      padding: 1rem 1.15rem;
      color: hsl(0 95% 72%);
    }
    .email-health-info-card { padding: clamp(1.35rem, 3vw, 1.9rem); }
    .email-health-section-title {
      margin: 0 0 1rem;
      font-size: clamp(1.55rem, 3vw, 2.25rem);
      line-height: 1.1;
      background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
    .email-health-mini-grid,
    .email-health-feature-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 1rem;
      margin-top: 1.25rem;
    }
    .email-health-mini,
    .email-health-feature {
      border: 1px solid hsl(var(--border));
      border-radius: .9rem;
      background: hsl(var(--background) / .42);
      padding: 1.15rem;
    }
    .email-health-mini-icon {
      width: 2.45rem;
      height: 2.45rem;
      border-radius: .85rem;
      margin-bottom: .8rem;
    }
    .email-health-mini-icon svg { width: 1.35rem; height: 1.35rem; }
    .email-health-mini h3,
    .email-health-feature h3 {
      margin: 0 0 .45rem;
      color: hsl(var(--foreground));
      font-size: 1.05rem;
    }
    .email-health-faq details { border-top: 1px solid hsl(var(--border)); padding: 1rem .15rem; }
    .email-health-faq details:first-of-type { border-top: 0; }
    .email-health-faq summary { cursor: pointer; color: hsl(var(--foreground)); font-size: 1.02rem; }
    .email-health-section-head {
      display: flex;
      align-items: center;
      gap: .8rem;
      margin-bottom: 1rem;
    }
    .email-health-section-head .email-health-section-title { margin: 0; }
    .email-health-section-icon,
    .email-tip-row > svg,
    .email-health-trust-item > svg {
      flex: 0 0 auto;
      width: 1.45rem;
      height: 1.45rem;
      color: hsl(var(--primary));
    }
    .email-tip-list,
    .email-health-trust-list {
      display: grid;
      gap: 1rem;
      margin-top: 1.15rem;
    }
    .email-tip-row,
    .email-health-trust-item {
      display: grid;
      grid-template-columns: 1.8rem minmax(0, 1fr);
      gap: .8rem;
      align-items: start;
    }
    .email-tip-row p,
    .email-health-trust-item p {
      margin: 0;
    }
    .email-tip-row b,
    .email-health-trust-item h3 {
      color: hsl(var(--foreground));
    }
    .email-health-trust-item h3 {
      margin: 0 0 .35rem;
      font-size: 1.06rem;
    }
    .email-health-cta {
      padding: clamp(2rem, 4vw, 3rem);
      text-align: center;
      display: grid;
      justify-items: center;
      gap: 1rem;
      border-color: hsl(var(--primary) / .5);
    }
    .email-health-cta h2 { margin: 0; color: hsl(var(--foreground)); font-size: clamp(1.45rem, 3vw, 2rem); }
    .email-health-cta p { max-width: 720px; margin: 0; }
    @media (max-width: 860px) {
      .email-health-form,
      .email-health-grid,
      .email-health-mini-grid,
      .email-health-feature-grid {
        grid-template-columns: 1fr;
      }
      .email-health-score { grid-template-columns: 1fr; text-align: center; justify-items: center; }
    }
    .email-health-report {
      overflow: hidden;
      padding: 0;
      border-color: hsl(var(--primary) / .45);
      background: radial-gradient(circle at 100% 0, hsl(150 80% 18% / .16), transparent 34rem), hsl(var(--card) / .9);
    }
    .email-report-head {
      display: grid;
      grid-template-columns: 3.8rem minmax(0, 1fr) minmax(220px, auto);
      gap: 1rem;
      align-items: center;
      padding: clamp(1.4rem, 3vw, 2rem);
      border-bottom: 1px solid hsl(var(--border));
    }
    .email-report-icon {
      width: 3.8rem;
      height: 3.8rem;
      display: grid;
      place-items: center;
      border-radius: 1rem;
      color: hsl(216 92% 66%);
      background: hsl(216 92% 66% / .14);
    }
    .email-report-icon svg { width: 2.2rem; height: 2.2rem; }
    .email-report-head h2 {
      margin: 0;
      font-size: clamp(1.7rem, 3.5vw, 2.35rem);
      background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
    .email-report-head p { margin: .25rem 0 0; color: hsl(var(--muted-foreground)); }
    .email-report-head b { color: hsl(var(--primary)); overflow-wrap: anywhere; }
    .email-report-score {
      display: grid;
      gap: .35rem;
      justify-items: end;
      color: hsl(var(--muted-foreground));
    }
    .email-report-score div {
      width: 10rem;
      height: .75rem;
      overflow: hidden;
      border-radius: 999px;
      background: hsl(220 45% 25%);
    }
    .email-report-score i {
      display: block;
      height: 100%;
      border-radius: inherit;
      background: hsl(45 96% 50%);
    }
    .email-report-score strong { color: hsl(45 96% 55%); font-size: 1.8rem; line-height: 1; }
    .email-report-recs {
      margin: 1.9rem clamp(1.4rem, 3vw, 2rem);
      color: hsl(45 96% 55%);
      background: hsl(45 96% 12% / .64);
      border-color: hsl(45 96% 45% / .34);
    }
    .email-report-recs li { color: hsl(45 96% 55%); }
    .email-score-details {
      margin: 0 clamp(1.4rem, 3vw, 2rem) 1.8rem;
      border-bottom: 1px solid hsl(var(--border));
      padding-bottom: 1.3rem;
    }
    .email-score-details summary {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      gap: .7rem;
      cursor: pointer;
      color: hsl(var(--muted-foreground));
      list-style: none;
    }
    .email-score-details summary b { font-weight: 400; }
    .email-score-details summary span {
      width: 1.45rem;
      height: 1.45rem;
      display: inline-grid;
      place-items: center;
      border: 2px solid hsl(var(--primary));
      border-radius: 999px;
      color: hsl(var(--primary));
    }
    .email-score-details p { color: hsl(var(--muted-foreground)); }
    .email-score-details-body {
      margin-top: 1rem;
      color: hsl(var(--muted-foreground));
      line-height: 1.65;
    }
    .email-score-details-body ul {
      margin: .9rem 0 1rem;
      padding-left: 1.35rem;
    }
    .email-score-details-body li {
      margin: .3rem 0;
      color: hsl(var(--muted-foreground));
    }
    .email-score-details-body b {
      color: hsl(var(--foreground));
    }
    .email-report-tabs {
      display: grid;
      grid-template-columns: repeat(7, minmax(0, 1fr));
      gap: 0;
      margin: 0 clamp(1.4rem, 3vw, 2rem) 1.15rem;
      overflow: hidden;
      border-radius: .75rem;
      background: hsl(var(--secondary));
    }
    .email-report-tab {
      min-height: 2.95rem;
      border: 0;
      background: transparent;
      color: hsl(var(--muted-foreground));
      padding: .48rem .55rem;
      font: inherit;
      font-size: .88rem;
      line-height: 1.15;
    }
    .email-report-tab.is-active {
      background: hsl(var(--primary));
      color: hsl(var(--primary-foreground));
      border-radius: .68rem;
    }
    .email-report-panels { padding: 0 clamp(1.4rem, 3vw, 2rem) 2rem; }
    .email-report-panel {
      display: none;
      border-radius: .9rem;
      background: hsl(240 15% 5% / .56);
      padding: clamp(1.3rem, 3vw, 2rem);
    }
    .email-report-panel.is-active { display: block; }
    .email-report-panel h3 {
      margin: 0 0 .55rem;
      color: hsl(var(--foreground));
      font-size: clamp(1.45rem, 3vw, 1.85rem);
    }
    .email-report-panel h4 { color: hsl(var(--foreground)); }
    .email-report-panel p { color: hsl(var(--muted-foreground)); }
    .email-mx-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 1.2rem;
      margin-top: 1.7rem;
    }
    .email-mx-card,
    .email-smtp-note,
    .email-ptr-card,
    .email-blacklist-card,
    .email-dkim-list article {
      border: 1px solid hsl(var(--border));
      border-radius: .9rem;
      background: hsl(var(--background) / .46);
      padding: 1.15rem;
    }
    .email-mx-card h4 {
      display: flex;
      align-items: center;
      gap: .65rem;
      margin: 0 0 1rem;
      overflow-wrap: anywhere;
    }
    .email-mx-card h4 svg { width: 1.25rem; height: 1.25rem; color: hsl(var(--primary)); }
    .email-pill,
    .email-status-pill {
      display: inline-flex;
      align-items: center;
      min-height: 1.75rem;
      border: 1px solid hsl(var(--border));
      border-radius: 999px;
      padding: .25rem .65rem;
      color: hsl(var(--foreground));
    }
    .email-status-pill.ok { background: hsl(var(--primary)); color: hsl(var(--primary-foreground)); border-color: transparent; }
    .email-status-pill.warn { background: hsl(45 96% 50% / .14); color: hsl(45 96% 55%); border-color: hsl(45 96% 50% / .4); }
    .email-status-pill.bad { background: hsl(0 84% 60% / .14); color: hsl(0 84% 70%); border-color: hsl(0 84% 60% / .4); }
    .email-ip-chips { display: flex; flex-wrap: wrap; gap: .45rem; }
    .email-ip-chips span {
      border-radius: 999px;
      background: hsl(var(--secondary));
      padding: .3rem .65rem;
      font-family: Consolas, Monaco, monospace;
      font-size: .9rem;
    }
    .email-smtp-note { margin: 1.5rem 0; }
    .email-smtp-list { color: hsl(var(--foreground)); line-height: 1.7; }
    .email-config-row {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: .7rem;
      margin-top: 1.15rem;
      color: hsl(var(--foreground));
    }
    .email-config-row code,
    .email-dkim-list code {
      max-width: 100%;
      overflow-wrap: anywhere;
      border-radius: .5rem;
      background: hsl(var(--secondary));
      padding: .35rem .5rem;
      color: hsl(var(--foreground));
    }
    .email-warnings-title,
    .email-warning-list {
      color: hsl(45 96% 55%);
    }
    .email-warning-list { line-height: 1.55; }
    .email-warning-text { color: hsl(45 96% 55%) !important; }
    .email-dkim-list {
      display: grid;
      gap: .8rem;
      margin-top: 1.2rem;
    }
    .email-dkim-list article {
      display: grid;
      gap: .55rem;
    }
    .email-ptr-grid,
    .email-blacklist-list {
      display: grid;
      gap: 1rem;
      margin-top: 1.4rem;
    }
    .email-ptr-card.ok { border-color: hsl(145 80% 45% / .42); }
    .email-ptr-card.bad { border-color: hsl(0 84% 60% / .42); }
    .email-ptr-card p { margin: .2rem 0; }
    .email-blacklist-card {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 1rem;
    }
    .email-blacklist-card.clean {
      border-color: hsl(145 80% 42% / .6);
      background: hsl(145 80% 10% / .5);
    }
    .email-blacklist-card.listed {
      border-color: hsl(0 84% 60% / .68);
      background: hsl(0 80% 12% / .55);
    }
    .email-blacklist-card h4 {
      display: flex;
      align-items: center;
      gap: .7rem;
      margin: 0 0 .75rem;
      font-family: Consolas, Monaco, monospace;
      font-size: 1.15rem;
    }
    .email-blacklist-card h4 svg { width: 1.35rem; height: 1.35rem; color: hsl(145 80% 48%); }
    .email-blacklist-card.listed h4 svg { color: hsl(0 84% 68%); }
    .email-blacklist-card.clean p { color: hsl(145 90% 56%); }
    .email-blacklist-card.listed p { color: hsl(0 92% 72%); }
    .email-blacklist-card strong {
      flex: 0 0 auto;
      border-radius: 999px;
      background: hsl(var(--primary));
      color: hsl(var(--primary-foreground));
      padding: .4rem .8rem;
    }
    .email-blacklist-card.listed strong { background: hsl(0 84% 60%); color: #fff; }
    .email-report-empty {
      border: 1px solid hsl(var(--border));
      border-radius: .9rem;
      padding: 1rem;
      color: hsl(var(--muted-foreground));
    }
    @media (max-width: 980px) {
      .email-report-head,
      .email-mx-grid {
        grid-template-columns: 1fr;
      }
      .email-report-score { justify-items: start; }
      .email-report-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }
    @media (max-width: 640px) {
      .email-report-tabs { grid-template-columns: 1fr; }
      .email-blacklist-card { display: grid; }
    }
    /* /netutils-email-health */

    /* netutils-reverse-dns */
    .tool-reversedns #checker,
    .tool-reversedns #result,
    .tool-reversedns .result-inline,
    .tool-reversedns .result-inline + .tool-rating {
      display: none !important;
    }

    .tool-reversedns :where(h1, h2, h3, h4, p, li, span, strong, summary, a, button, label, div) {
      font-weight: 400 !important;
    }

    .tool-reversedns :where(.reverse-dns-title, .reverse-dns-card-title, .reverse-dns-result-head h2, .reverse-dns-section-title, .tool-rating-title, .continue-head h2) {
      font-weight: 500 !important;
    }

    .reverse-dns-page {
      display: grid;
      gap: 2.25rem;
    }

    .reverse-dns-hero {
      text-align: center;
      padding: 1rem 0 1.6rem;
    }

    .reverse-dns-title {
      margin: 0 auto 1.1rem;
      max-width: 900px;
      font-size: clamp(2rem, 4.4vw, 3.35rem) !important;
      line-height: .96 !important;
      letter-spacing: -.055em;
      background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }

    .reverse-dns-hero > p:not(.eyebrow) {
      max-width: 820px;
      margin: 0 auto;
      color: hsl(var(--muted-foreground));
      font-size: clamp(1rem, 1.8vw, 1.35rem);
      line-height: 1.5;
    }

    .reverse-dns-search-card,
    .reverse-dns-result-card,
    .reverse-dns-info-card {
      border: 1px solid hsl(var(--border));
      border-radius: 1rem;
      background: linear-gradient(135deg, hsl(var(--card) / .88), hsl(150 80% 18% / .06));
      box-shadow: 0 20px 55px rgba(0, 0, 0, .16);
    }

    .reverse-dns-search-card {
      width: 100%;
      max-width: 980px;
      margin-inline: auto;
      padding: clamp(1.4rem, 3vw, 2.1rem);
      text-align: center;
    }

    .reverse-dns-search-head {
      display: grid;
      gap: .75rem;
      justify-items: center;
      margin-bottom: 1.3rem;
    }

    .reverse-dns-icon {
      width: 4.4rem;
      height: 4.4rem;
      border-radius: 999px;
      display: grid;
      place-items: center;
      color: hsl(var(--primary));
      background: linear-gradient(135deg, hsl(var(--primary) / .18), hsl(var(--accent) / .18));
      font-size: 2rem;
      line-height: 1;
    }

    .reverse-dns-card-title,
    .reverse-dns-search-head h2 {
      margin: 0 0 .35rem;
      color: hsl(var(--foreground));
      font-size: clamp(1.5rem, 3vw, 2.15rem);
      line-height: 1.1;
    }

    .reverse-dns-search-head p,
    .reverse-dns-note,
    .reverse-dns-info-card p,
    .reverse-dns-faq p {
      color: hsl(var(--muted-foreground));
      line-height: 1.65;
    }

    .reverse-dns-form {
      max-width: 760px;
      margin: 1.65rem auto 0;
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 1rem;
      align-items: end;
      text-align: left;
    }

    .reverse-dns-form label {
      grid-column: 1 / -1;
      color: hsl(var(--muted-foreground));
    }

    .reverse-dns-input-shell {
      position: relative;
      display: block;
    }

    .reverse-dns-input-shell input {
      width: 100%;
      min-height: 3.7rem;
      border: 1px solid hsl(var(--border));
      border-radius: .85rem;
      background: hsl(var(--background) / .68);
      color: hsl(var(--foreground));
      padding: .9rem 3.25rem .9rem 1rem;
      font: inherit;
      outline: none;
      transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
    }

    .reverse-dns-input-shell input:focus {
      border-color: hsl(var(--primary));
      box-shadow: 0 0 0 2px hsl(var(--primary) / .24);
    }

    .reverse-dns-input-shell .validation-icon {
      position: absolute;
      right: 1rem;
      top: 50%;
      transform: translateY(-50%);
      width: 1.55rem;
      height: 1.55rem;
      color: hsl(145 80% 48%);
      opacity: 0;
      pointer-events: none;
    }

    .reverse-dns-input-shell .validation-icon::before {
      content: "✓";
      font-size: 1.5rem;
      line-height: 1;
    }

    .reverse-dns-input-shell.is-invalid .validation-icon::before {
      content: "!";
    }

    .reverse-dns-input-shell.is-valid input {
      border-color: hsl(145 80% 43%);
      box-shadow: 0 0 0 2px hsl(145 80% 43% / .24);
    }

    .reverse-dns-input-shell.is-invalid input {
      border-color: hsl(0 84% 61%);
      box-shadow: 0 0 0 2px hsl(0 84% 61% / .24);
    }

    .reverse-dns-input-shell.is-valid .validation-icon,
    .reverse-dns-input-shell.is-invalid .validation-icon {
      opacity: 1;
    }

    .reverse-dns-input-shell.is-invalid .validation-icon {
      color: hsl(0 84% 61%);
    }

    .reverse-dns-form .btn-primary {
      min-height: 3.7rem;
      white-space: nowrap;
    }

    .reverse-dns-form .btn-primary:disabled {
      cursor: not-allowed;
      filter: saturate(.65);
      opacity: .55;
    }

    .validation-error {
      grid-column: 1 / -1;
      min-height: 1.35rem;
      margin: 0;
      color: hsl(0 92% 66%);
      font-size: .95rem;
      line-height: 1.35;
    }

    .reverse-dns-note {
      max-width: 760px;
      margin: 1rem auto 0;
      padding: .9rem 1rem;
      border: 1px solid hsl(var(--border));
      border-radius: .85rem;
      background: hsl(var(--muted) / .2);
      text-align: left;
    }

    .reverse-dns-result-card {
      overflow: hidden;
    }

    .reverse-dns-result-head {
      display: grid;
      grid-template-columns: 2.7rem minmax(0, 1fr);
      gap: 1rem;
      align-items: center;
      padding: 1.55rem 1.8rem;
      border-bottom: 1px solid hsl(var(--border));
    }

    .reverse-dns-result-head .reverse-dns-icon {
      width: 2.7rem;
      height: 2.7rem;
      font-size: 1.35rem;
    }

    .reverse-dns-result-head h2 {
      margin: 0;
      font-size: clamp(1.55rem, 3vw, 2.25rem);
      line-height: 1.1;
      background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }

    .reverse-dns-result-head p {
      margin: .35rem 0 0;
      color: hsl(var(--muted-foreground));
    }

    .reverse-dns-result-head p span {
      color: hsl(var(--primary));
    }

    .reverse-dns-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 1.2rem;
      padding: 1.65rem 1.8rem;
    }

    .reverse-dns-field {
      min-height: 5.1rem;
      border: 1px solid hsl(var(--border));
      border-radius: .9rem;
      background: hsl(var(--card) / .55);
      padding: 1rem;
      display: grid;
      gap: .35rem;
      align-content: start;
    }

    .reverse-dns-field.wide {
      grid-column: 1 / -1;
    }

    .reverse-dns-field span {
      color: hsl(var(--primary));
      font-size: .94rem;
    }

    .reverse-dns-field strong {
      color: hsl(var(--foreground));
      font-size: .98rem;
      font-weight: 400 !important;
      overflow-wrap: anywhere;
    }

    .reverse-dns-ptr-list {
      display: flex;
      flex-wrap: wrap;
      gap: .45rem;
    }


    .reverse-dns-ip-results {
      display: grid;
      gap: .85rem;
      margin-top: .55rem;
    }

    .reverse-dns-ip-card {
      display: grid;
      grid-template-columns: minmax(0, .7fr) minmax(0, 1fr) minmax(0, 1.15fr);
      gap: .95rem;
      align-items: start;
      border: 1px solid hsl(var(--border));
      border-radius: .85rem;
      background: hsl(var(--background) / .42);
      padding: 1rem;
    }

    .reverse-dns-ip-card span {
      display: block;
      margin-bottom: .28rem;
      color: hsl(var(--primary));
      font-size: .9rem;
    }

    .reverse-dns-ip-card strong {
      color: hsl(var(--foreground));
      overflow-wrap: anywhere;
    }

    .reverse-dns-chip {
      display: inline-flex;
      align-items: center;
      min-height: 2rem;
      padding: .35rem .7rem;
      border: 1px solid hsl(var(--primary) / .32);
      border-radius: 999px;
      background: hsl(var(--primary) / .12);
      color: hsl(var(--primary));
      overflow-wrap: anywhere;
    }

    .reverse-dns-alert {
      margin: 1.65rem 1.8rem;
      border: 1px solid hsl(0 78% 58% / .55);
      border-radius: 1rem;
      background: hsl(0 80% 16% / .2);
      color: hsl(0 95% 72%);
      padding: 1.15rem 1.35rem;
      line-height: 1.55;
    }

    .reverse-dns-info-card {
      padding: clamp(1.4rem, 3vw, 2.1rem);
    }

    .reverse-dns-info-card > h2,
    .reverse-dns-section-title {
      margin: 0 0 1.4rem;
      font-size: clamp(1.8rem, 4vw, 2.75rem);
      line-height: 1.08;
      background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
      text-align: center;
    }

    .reverse-dns-info-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 1.2rem;
    }

    .reverse-dns-mini {
      border: 1px solid hsl(var(--border));
      border-radius: .95rem;
      background: hsl(var(--background) / .42);
      padding: 1.35rem;
      display: grid;
      gap: .65rem;
    }

    .reverse-dns-mini > span {
      width: 2.5rem;
      height: 2.5rem;
      border-radius: .85rem;
      display: grid;
      place-items: center;
      color: hsl(var(--primary));
      background: hsl(var(--primary) / .12);
      font-size: 1.25rem;
    }

    .reverse-dns-mini h3 {
      margin: 0;
      color: hsl(var(--foreground));
      font-size: 1.1rem;
      line-height: 1.25;
    }

    .reverse-dns-mini p,
    .reverse-dns-step p,
    .reverse-dns-faq p {
      margin: 0;
      color: hsl(var(--muted-foreground));
      line-height: 1.65;
    }

    .reverse-dns-steps {
      display: grid;
      gap: .95rem;
    }

    .reverse-dns-step {
      display: grid;
      grid-template-columns: 2.4rem minmax(0, 1fr);
      gap: .9rem;
      align-items: start;
      border: 1px solid hsl(var(--border));
      border-radius: .95rem;
      background: hsl(var(--background) / .38);
      padding: 1rem;
    }

    .reverse-dns-step > span {
      width: 2.2rem;
      height: 2.2rem;
      border-radius: 999px;
      display: grid;
      place-items: center;
      background: hsl(var(--primary) / .14);
      color: hsl(var(--primary));
    }

    .reverse-dns-faq {
      display: grid;
      gap: 0;
    }

    .reverse-dns-faq details {
      border-top: 1px solid hsl(var(--border));
      padding: 1rem 0;
      background: transparent;
    }

    .reverse-dns-faq details:first-of-type {
      border-top: 0;
    }

    .reverse-dns-faq summary {
      cursor: pointer;
      color: hsl(var(--foreground));
      font-size: 1.02rem;
    }

    @media (max-width: 980px) {
      .reverse-dns-grid,
      .reverse-dns-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 720px) {
      .reverse-dns-title {
        font-size: clamp(1.9rem, 11vw, 2.9rem) !important;
      }

      .reverse-dns-form,
      .reverse-dns-grid,
      .reverse-dns-info-grid,
      .reverse-dns-ip-card {
        grid-template-columns: 1fr;
      }

      .reverse-dns-result-head {
        align-items: start;
        padding: 1.25rem;
      }

      .reverse-dns-grid {
        padding: 1.25rem;
      }
    }
    /* /netutils-reverse-dns */

    /* /netutils-soft-typography */

    /* netutils-ssl-checker */
    .tool-sslcert #checker,
    .tool-sslcert #result,
    .tool-sslcert .result-inline,
    .tool-sslcert .result-inline + .tool-rating {
      display: none !important;
    }

        .tool-sslcert .tool-rating[data-rating-tool="sslcert"] {
      display: grid;
      margin-top: 2.2rem;
    }

    .tool-sslcert .tool-rating[data-rating-tool="sslcert"] .tool-rating-title,
    .tool-sslcert .tool-rating[data-rating-tool="sslcert"] .tool-rating-copy,
    .tool-sslcert .tool-rating[data-rating-tool="sslcert"] .tool-rating-stats {
      font-weight: 400 !important;
    }
.tool-sslcert :where(h1, h2, h3, h4, p, li, span, strong, summary, a, button, label, div, input) {
      font-weight: 400 !important;
    }

    .tool-sslcert :where(.ssl-title, .ssl-card-title, .ssl-section-title, .ssl-result-head h2, .tool-rating-title, .continue-head h2) {
      font-weight: 500 !important;
    }

    .ssl-page { display: grid; gap: 2.35rem; }
    .ssl-hero { text-align: center; padding: 1rem 0 1.65rem; }
    .ssl-title {
      margin: 0 auto 1rem;
      max-width: 980px;
      font-size: clamp(2.4rem, 6vw, 4.9rem);
      line-height: .98;
      letter-spacing: -.055em;
      background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
    .ssl-lead {
      max-width: 840px;
      margin: 0 auto;
      color: hsl(var(--muted-foreground));
      font-size: clamp(1rem, 1.7vw, 1.3rem);
      line-height: 1.55;
    }
    .ssl-check-card,
    .ssl-result-card,
    .ssl-info-section,
    .ssl-text-card,
    .ssl-resources {
      border: 1px solid hsl(var(--border));
      border-radius: 1.15rem;
      background: linear-gradient(135deg, hsl(var(--card) / .84), hsl(150 75% 16% / .07));
      box-shadow: 0 22px 60px rgba(0,0,0,.16);
    }
    .ssl-check-card {
      text-align: center;
      padding: clamp(1.45rem, 3vw, 2.4rem);
    }
    .ssl-check-icon,
    .ssl-section-badge {
      width: 4.45rem;
      height: 4.45rem;
      margin: 0 auto 1.25rem;
      border-radius: 999px;
      display: grid;
      place-items: center;
      color: #fff;
      background: linear-gradient(135deg, hsl(var(--primary)), hsl(var(--accent)));
      box-shadow: 0 18px 48px hsl(var(--primary) / .18);
    }
    .ssl-check-icon svg,
    .ssl-section-badge svg,
    .ssl-mini-icon svg,
    .ssl-inline-icon svg { width: 1.65rem; height: 1.65rem; }
    .ssl-card-title { margin: 0 0 .5rem; font-size: clamp(1.55rem, 3vw, 2.2rem); letter-spacing: -.025em; }
    .ssl-card-text { margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.55; }
    .ssl-form-grid {
      max-width: 850px;
      margin: 1.35rem auto .85rem;
      display: grid;
      grid-template-columns: minmax(0, 1fr) 7.5rem 11rem;
      gap: .65rem;
      align-items: start;
    }
    .ssl-input,
    .ssl-port {
      min-height: 3.2rem;
      width: 100%;
      border: 1px solid hsl(var(--border));
      border-radius: .78rem;
      background: hsl(var(--background) / .66);
      color: hsl(var(--foreground));
      padding: 0 .95rem;
      font-size: .95rem;
      outline: none;
      transition: border-color .16s ease, box-shadow .16s ease;
    }
    .ssl-input:focus,
    .ssl-port:focus {
      border-color: hsl(var(--primary));
      box-shadow: 0 0 0 3px hsl(var(--primary) / .18);
    }
    .ssl-submit {
      min-height: 3.2rem;
      border-radius: .78rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: .45rem;
      padding: .65rem .9rem;
      font-size: .95rem;
      transition: opacity .16s ease, transform .16s ease, filter .16s ease;
    }
    .ssl-submit svg { width: .98rem; height: .98rem; flex: 0 0 auto; }
    .ssl-submit:disabled,
    .ssl-submit[aria-disabled="true"] {
      cursor: not-allowed;
      opacity: .48;
      filter: saturate(.6);
      transform: none;
    }
    .ssl-note {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: .45rem;
      color: hsl(var(--muted-foreground));
      font-size: .92rem;
    }
    .ssl-note svg { width: 1rem; height: 1rem; }
    .ssl-section,
    .ssl-info-section,
    .ssl-text-card,
    .ssl-resources { padding: clamp(1.45rem, 3vw, 2.2rem); }
    .ssl-section-head { text-align: center; max-width: 900px; margin: 0 auto 2rem; }
    .ssl-section-title {
      margin: 0 0 .85rem;
      font-size: clamp(1.9rem, 4vw, 3rem);
      line-height: 1.08;
      letter-spacing: -.04em;
      background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent)));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
    .ssl-section-text { margin: 0 auto; max-width: 860px; color: hsl(var(--muted-foreground)); line-height: 1.75; font-size: 1.06rem; }
    .ssl-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.15rem; }
    .ssl-card-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ssl-info-card {
      min-height: 12rem;
      border: 1px solid hsl(var(--border));
      border-radius: 1rem;
      background: hsl(var(--background) / .42);
      padding: 1.35rem;
      display: grid;
      align-content: start;
      gap: .8rem;
    }
    .ssl-mini-icon,
    .ssl-inline-icon {
      width: 2.7rem;
      height: 2.7rem;
      display: grid;
      place-items: center;
      border-radius: .85rem;
      color: hsl(var(--primary));
      background: hsl(var(--primary) / .11);
    }
    .ssl-mini-icon.green,
    .ssl-inline-icon.green { color: hsl(145 78% 48%); background: hsl(145 78% 48% / .1); }
    .ssl-mini-icon.red,
    .ssl-inline-icon.red { color: hsl(0 85% 65%); background: hsl(0 85% 65% / .1); }
    .ssl-mini-icon.amber,
    .ssl-inline-icon.amber { color: hsl(42 95% 55%); background: hsl(42 95% 55% / .1); }
    .ssl-info-card h3 { margin: 0; font-size: 1.18rem; line-height: 1.35; }
    .ssl-info-card p { margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.65; }
    .ssl-list-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.15rem 2rem; }
    .ssl-list-item { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .85rem; align-items: start; }
    .ssl-list-item h3 { margin: 0 0 .35rem; font-size: 1.04rem; }
    .ssl-list-item p { margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.6; }
    .ssl-text-card { color: hsl(var(--muted-foreground)); line-height: 1.75; }
    .ssl-text-card h2 { margin: 0 0 1.35rem; color: hsl(var(--foreground)); font-size: clamp(1.35rem, 2.4vw, 1.75rem); }
    .ssl-text-card p { margin: 0 0 1.05rem; }
    .ssl-text-card strong { color: hsl(var(--foreground)); font-weight: 500 !important; }
    .ssl-trust-list { display: grid; gap: 1.25rem; }
    .ssl-trust-row { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .85rem; align-items: start; }
    .ssl-trust-row h3 { margin: 0 0 .35rem; font-size: 1rem; color: hsl(var(--foreground)); }
    .ssl-trust-row p { margin: 0; color: hsl(var(--muted-foreground)); line-height: 1.65; }
    .ssl-result-card { overflow: hidden; }
    .ssl-result-head {
      display: flex;
      align-items: center;
      gap: .85rem;
      border-bottom: 1px solid hsl(var(--border));
      padding: 1.35rem clamp(1.2rem, 2.5vw, 2rem);
      background: hsl(var(--primary) / .08);
    }
    .ssl-result-head h2 { margin: 0; font-size: clamp(1.35rem, 2.6vw, 2rem); letter-spacing: -.025em; }
    .ssl-output {
      margin: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      padding: clamp(1.2rem, 2.5vw, 2rem);
      white-space: pre-wrap;
    }
    .ssl-resource-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 1.4rem; }
    .ssl-resource-link { display: grid; grid-template-columns: auto minmax(0,1fr); gap: .75rem; color: hsl(var(--muted-foreground)); text-decoration: none; line-height: 1.55; }
    .ssl-resource-link span { color: hsl(var(--primary)); }
    .ssl-faq details { border-bottom: 1px solid hsl(var(--border)); padding: 1rem 0; }
    .ssl-faq summary { cursor: pointer; color: hsl(var(--foreground)); list-style: none; }
    .ssl-faq summary::-webkit-details-marker { display: none; }
    .ssl-faq p { margin: .75rem 0 0; color: hsl(var(--muted-foreground)); line-height: 1.6; }
    @media (max-width: 980px) {
      .ssl-form-grid,
      .ssl-card-grid,
      .ssl-card-grid.two,
      .ssl-list-grid,
      .ssl-resource-grid { grid-template-columns: 1fr; }
      .ssl-submit { width: 100%; }
    }
    @media (max-width: 640px) {
      .ssl-title { font-size: clamp(2.2rem, 12vw, 3.2rem); }
      .ssl-section, .ssl-info-section, .ssl-text-card, .ssl-resources, .ssl-check-card { padding: 1.1rem; }
      .ssl-form-grid { gap: .7rem; }
      .ssl-input,
      .ssl-port,
      .ssl-submit { min-height: 3.05rem; }
    }

    .ssl-input-slot { display: grid; gap: .45rem; min-width: 0; }
    .ssl-target-wrap {
      position: relative;
      display: block;
    }
    .ssl-target-wrap .ssl-input { width: 100%; padding-right: 3.25rem; }
    .ssl-target-state {
      position: absolute;
      right: 1rem;
      top: 50%;
      width: 1.35rem;
      height: 1.35rem;
      transform: translateY(-50%);
      pointer-events: none;
    }
    .ssl-target-state svg { display: none; width: 100%; height: 100%; }
    .ssl-target-wrap.is-valid .ssl-state-ok { display: block; color: #22c55e; }
    .ssl-target-wrap.is-invalid .ssl-state-bad { display: block; color: #ff5a5f; }
    .ssl-target-wrap.is-valid .ssl-input {
      border-color: #22c55e;
      box-shadow: 0 0 0 1px #22c55e inset, 0 0 0 4px rgba(34, 197, 94, .12);
    }
    .ssl-target-wrap.is-invalid .ssl-input {
      border-color: #ff5a5f;
      box-shadow: 0 0 0 1px #ff5a5f inset, 0 0 0 4px rgba(255, 90, 95, .12);
    }
    .ssl-target-error {
      display: none;
      color: #ff5a5f;
      font-size: .84rem;
      line-height: 1.35;
      align-items: center;
      gap: .35rem;
    }
    .ssl-target-error::before {
      content: "!";
      display: inline-flex;
      width: 1rem;
      height: 1rem;
      align-items: center;
      justify-content: center;
      border: 1px solid currentColor;
      border-radius: 999px;
      font-size: .7rem;
      line-height: 1;
    }
    .ssl-input-slot.has-error .ssl-target-error { display: inline-flex; }
    .ssl-live-result {
      display: grid;
      gap: 1.35rem;
      color: hsl(var(--foreground));
    }
    .ssl-live-result-head {
      display: flex;
      align-items: flex-start;
      gap: .9rem;
    }
    .ssl-live-result-head h2 {
      margin: 0 0 .4rem;
      font-size: clamp(1.55rem, 3vw, 2.15rem);
      color: hsl(var(--foreground));
    }
    .ssl-live-result-head p { margin: 0; color: #22c55e; }
    .ssl-live-key {
      display: grid;
      place-items: center;
      width: 2.25rem;
      height: 2.25rem;
      border-radius: 999px;
      color: #58a6ff;
      background: rgba(88, 166, 255, .12);
      flex: 0 0 auto;
    }
    .ssl-status {
      display: inline-flex;
      align-items: center;
      padding: .18rem .65rem;
      border-radius: 999px;
      color: #fff;
      background: #16a34a;
    }
    .ssl-status-warn { background: #d97706; }
    .ssl-status-bad { background: #dc2626; }
    .ssl-live-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 1rem;
    }
    .ssl-live-panel {
      border: 1px solid hsl(var(--border));
      border-radius: 1rem;
      padding: 1.15rem;
      background: rgba(15, 23, 42, .42);
    }
    .ssl-live-panel h3 {
      display: flex;
      align-items: center;
      gap: .6rem;
      margin: 0 0 1rem;
      color: #58a6ff;
      font-size: 1.05rem;
    }
    .ssl-live-field {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: .65rem;
      margin: .85rem 0;
      color: hsl(var(--muted-foreground));
    }
    .ssl-live-field-icon { color: #58a6ff; }
    .ssl-live-label {
      display: block;
      margin-bottom: .2rem;
      color: hsl(var(--muted-foreground));
      font-size: .92rem;
    }
    .ssl-live-field p {
      margin: 0;
      color: hsl(var(--foreground));
      word-break: break-word;
    }
    .ssl-live-list {
      margin: 0;
      padding-left: 1.2rem;
      color: hsl(var(--foreground));
      line-height: 1.75;
      word-break: break-word;
    }
    .ssl-live-list span,
    .ssl-uri-group span { color: hsl(var(--muted-foreground)); }
    .ssl-uri-group { margin: .8rem 0; }
    .ssl-uri-group ul { margin: .35rem 0 0; padding-left: 1.2rem; line-height: 1.7; word-break: break-all; }
    .ssl-pill-list { list-style: disc; }
    .ssl-muted { margin: 0; color: hsl(var(--muted-foreground)); }
    .ssl-progress {
      height: .52rem;
      overflow: hidden;
      border-radius: 999px;
      background: rgba(148, 163, 184, .18);
      margin: .75rem 0;
    }
    .ssl-progress span {
      display: block;
      height: 100%;
      border-radius: inherit;
      background: linear-gradient(90deg, #58a6ff, #22c55e);
    }
    .ssl-good-note,
    .ssl-live-note {
      margin: .65rem 0 0;
      color: #22c55e;
    }
    .ssl-live-note {
      padding-top: 1rem;
      border-top: 1px solid hsl(var(--border));
      color: hsl(var(--muted-foreground));
    }
    .ssl-live-error {
      border: 1px solid rgba(255, 90, 95, .45);
      border-radius: 1rem;
      padding: 1.15rem;
      background: rgba(255, 90, 95, .08);
    }
    .ssl-live-error .ssl-live-key { color: #ff5a5f; background: rgba(255, 90, 95, .16); }
    .ssl-live-error .ssl-live-result-head p,
    .ssl-error-detail { color: #ff8b8f; }
    .ssl-error-detail {
      border-top: 1px solid rgba(255, 90, 95, .25);
      padding-top: .85rem;
      word-break: break-word;
    }
    @media (max-width: 980px) {
      .ssl-live-grid { grid-template-columns: 1fr; }
    }

    /* netutils-ssl-checker-end */


    /* netutils-smoother-sidebar */
    .sidebar {
      will-change: width, transform;
      transition: width .16s cubic-bezier(.2,.8,.2,1), transform .16s cubic-bezier(.2,.8,.2,1);
    }
    .page {
      transition: padding-left .16s cubic-bezier(.2,.8,.2,1);
    }
    .sidebar-list {
      transition: max-height .16s cubic-bezier(.2,.8,.2,1), opacity .12s ease;
    }
    .group-title,
    .side-title,
    .quick-access-title span,
    .sidebar-brand-pill span,
    .sidebar-toggle span,
    .group-head > span:last-child {
      transition: opacity .13s ease, max-width .16s cubic-bezier(.2,.8,.2,1), transform .16s cubic-bezier(.2,.8,.2,1), visibility .13s ease;
    }
    @media (max-width: 1180px) {
      .sidebar {
        transition: transform .16s cubic-bezier(.2,.8,.2,1);
      }
    }
    /* netutils-smoother-sidebar-end */


    /* Net Utils SSL polish */
    .tool-sslcert .ssl-form-grid {
      max-width: 760px;
      grid-template-columns: minmax(0, 1fr) 5.8rem 8.8rem;
      gap: .55rem;
    }

    .tool-sslcert .ssl-input,
    .tool-sslcert .ssl-port,
    .tool-sslcert .ssl-submit {
      min-height: 2.75rem;
      font-size: .9rem;
    }

    .tool-sslcert .ssl-submit {
      padding: 0 .85rem;
      gap: .45rem;
    }

    .tool-sslcert .ssl-submit svg {
      width: .95rem;
      height: .95rem;
    }

    .tool-sslcert .ssl-output {
      padding: 0;
    }

    .tool-sslcert .ssl-live-key svg,
    .tool-sslcert .ssl-live-panel h3 svg,
    .tool-sslcert .ssl-live-field-icon svg {
      display: block;
      width: 1.05rem;
      height: 1.05rem;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .tool-sslcert .ssl-live-key svg {
      width: 1.65rem;
      height: 1.65rem;
    }

    .tool-sslcert .ssl-live-result-head .ssl-live-key {
      display: inline-grid;
      place-items: center;
    }
    .ssl-faq summary {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      cursor: pointer;
    }

    .ssl-faq summary::after {
      content: "⌄";
      opacity: .75;
      transition: transform .18s ease;
    }

    .ssl-faq details[open] summary::after {
      transform: rotate(180deg);
    }

    @media (max-width: 640px) {
      .topbar .language-menu-wrap {
        display: inline-flex !important;
        visibility: visible !important;
        flex: 0 0 auto;
        position: relative;
      }

      .topbar .language-button {
        min-width: 3rem;
        min-height: 2.45rem;
      }

      .topbar .language-menu {
        right: .5rem;
        left: auto;
        width: min(245px, 92vw);
        max-height: 70vh;
        overflow: auto;
      }

      .tool-sslcert .ssl-form-grid {
        grid-template-columns: 1fr;
        max-width: 100%;
      }
    }

      /* Net Utils mobile language visibility hardening */
    @media (max-width: 640px) {
      .topbar {
        grid-template-columns: auto auto auto auto !important;
        gap: .55rem !important;
      }
      .topbar .language-menu-wrap {
        display: inline-flex !important;
        position: relative !important;
        z-index: 90 !important;
      }
      .topbar .language-menu {
        position: fixed !important;
        right: .75rem !important;
        top: 4.8rem !important;
        max-height: min(70vh, 420px);
        overflow: auto;
      }
    }
