/* ===== 247TechTeam night theme (generated by tools/gen_dark_css.py - do not edit by hand) ===== */
/* Default = visitor's device preference (index.html bootstrap); manual header toggle persists in localStorage tt_theme. */
:root[data-theme="dark"]{
  --bg:#0B0B0D; --bg-2:#111113; --bg-3:#17171A;
  --panel:#141417; --panel-2:#1C1C20;
  --panel-solid:rgba(20,20,23,0.98); --panel-elev:#1A1A1E;
  --text:#F5F5F7; --text-2:rgba(245,245,247,0.80); --text-3:rgba(245,245,247,0.62);
  --muted:rgba(245,245,247,0.64);
  --border:rgba(245,245,247,0.13); --border-2:rgba(245,245,247,0.24);
  --primary:#FF7A1A; --primary-2:#FF6B00; --accent:#FF7A1A;
  --primary-hover:#FF8E3D; --primary-pressed:#E65C00;
  --primary-ink:#0B0B0D;
  --success:#3DCB82; --warning:#F2A93B; --danger:#F26B6B; --info:#FF8A3D;
  --focus:rgba(255,138,61,0.50); --link:#FF9A4D;
  --glow-blue:0 0 0 1px rgba(255,122,26,0.35);
  --glow-cyan:0 0 0 1px rgba(255,122,26,0.28);
  --glow-purple:0 0 0 1px rgba(245,245,247,0.10);
  --shadow-1:0 1px 2px rgba(0,0,0,0.45), 0 10px 26px rgba(0,0,0,0.45);
  --shadow-2:0 1px 2px rgba(0,0,0,0.5), 0 18px 44px rgba(0,0,0,0.6);
  --highlight:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0) 50%);
  --aurora:radial-gradient(900px 460px at 12% -6%, rgba(255,107,0,0.12), transparent 60%);
  --soft-gray:#1C1C20;
  --check-dark:#5FD69A; --check-dark-ink:#0B0B0D;
  --menu-bg:#141417; --menu-text:#F5F5F7; --menu-text-2:rgba(245,245,247,.72); --menu-border:rgba(245,245,247,.14);
  color-scheme: dark;
}
:root[data-theme="dark"] body::after{opacity:.10}
:root[data-theme="dark"] ::selection{background:var(--primary);color:#0B0B0D}
/* Theme toggle icon state */
.theme-toggle [data-theme-icon]{display:none;line-height:0}
:root[data-theme="light"] .theme-toggle [data-theme-icon="moon"]{display:inline-flex}
:root[data-theme="dark"] .theme-toggle [data-theme-icon="sun"]{display:inline-flex}
/* PayPal hosted card fields / card marks keep a white chip so brand colours stay legible */
:root[data-theme="dark"] .pay-method-cardmarks img{background:#fff;border-color:rgba(255,255,255,.18)}
:root[data-theme="dark"] .pay-method-img{background:#fff;border-radius:6px;padding:3px 7px;height:26px;box-sizing:border-box;border:1px solid rgba(255,255,255,.18)}
:root[data-theme="dark"] .checkout-cardform .cf-host{background:#1C1C20}
:root[data-theme="dark"] .receipt-head img,:root[data-theme="dark"] .thanks img.logo-print{background:#fff;border-radius:8px;padding:6px 10px}
/* Antivirus product box: the artwork is rendered on pure white and uses multiply-blend to melt into a white page.
   Multiply over a dark page makes it vanish, so in night mode we show it unblended inside a soft white product card. */
:root[data-theme="dark"] .av-box-img{mix-blend-mode:normal;background:#fff;border-radius:18px;padding:10px;box-shadow:0 0 0 1px rgba(255,255,255,.14),0 24px 60px rgba(0,0,0,.55),0 0 80px rgba(255,107,0,.18)}
/* Notification panel: it carries its own local tokens */
:root[data-theme="dark"] .notif-panel{--ink:#F5F5F7;--ink-soft:rgba(245,245,247,.82);--muted:rgba(245,245,247,.62);--line:rgba(245,245,247,.13);background:var(--panel);border-color:var(--line);box-shadow:0 24px 60px rgba(0,0,0,.6),0 2px 8px rgba(0,0,0,.4)}
:root[data-theme="dark"] .notif-head{background:var(--panel-2)}
:root[data-theme="dark"] .notif-close:hover{background:rgba(255,255,255,.08)}
:root[data-theme="dark"] .notif-bell.has-badge::after{box-shadow:0 0 0 2px var(--bg)}
/* Page heads (.page-hero) are always black and pin their inputs to dark-on-white; in night mode use dark inputs with light ink. */
:root[data-theme="dark"] .page-hero input,:root[data-theme="dark"] .page-hero select,:root[data-theme="dark"] .page-hero textarea{--text:#F5F5F7;color:#F5F5F7;-webkit-text-fill-color:#F5F5F7;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
:root[data-theme="dark"] .page-hero input::placeholder,:root[data-theme="dark"] .page-hero textarea::placeholder{color:rgba(245,245,247,.55);-webkit-text-fill-color:rgba(245,245,247,.55)}
:root[data-theme="dark"] .page-hero input:focus,:root[data-theme="dark"] .page-hero textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(255,107,0,.25)}
:root[data-theme="dark"] .currency-menu{box-shadow:0 24px 60px rgba(0,0,0,.6),0 2px 8px rgba(0,0,0,.4)}
/* Chat window in night mode: dark message area, visitor bubbles keep the brand orange, handoff chip stays readable */
:root[data-theme="dark"] .chat-body{background:var(--bg-2)}
:root[data-theme="dark"] .chat-body::-webkit-scrollbar-thumb{background:rgba(245,245,247,.2)}
:root[data-theme="dark"] .msg.msg-visitor .msg-bubble{background:linear-gradient(180deg,#FF8A1F,#FF6B00);border-color:transparent;color:#FFFFFF}
:root[data-theme="dark"] .msg.msg-visitor .msg-bubble p{color:#FFFFFF}
:root[data-theme="dark"] .msg.msg-visitor .msg-who{color:rgba(255,255,255,.9)}
:root[data-theme="dark"] .msg.msg-visitor .msg-bubble time{color:rgba(255,255,255,.8)}
:root[data-theme="dark"] .msg.msg-system p{background:rgba(255,107,0,.2);border-color:rgba(255,138,61,.55);color:#F5F5F7}
/* Form controls that force a dark text-fill in light mode (hero search, etc.) */
:root[data-theme="dark"] input,:root[data-theme="dark"] textarea,:root[data-theme="dark"] select{-webkit-text-fill-color:var(--text);caret-color:var(--primary)}
:root[data-theme="dark"] input::placeholder,:root[data-theme="dark"] textarea::placeholder{color:var(--text-3);-webkit-text-fill-color:var(--text-3);opacity:1}

/* ---- generated overrides for hard-coded light surfaces in site.css (121 rules) ---- */
:root[data-theme="dark"] .btn-outline-light:hover{border-color:var(--border)}
:root[data-theme="dark"] .post-img{background:var(--panel)}
:root[data-theme="dark"] .code-input{background:var(--panel)}
:root[data-theme="dark"] .article-img{background:var(--panel)}
:root[data-theme="dark"] input:not([type]), :root[data-theme="dark"] input[type="date"], :root[data-theme="dark"] input[type="time"], :root[data-theme="dark"] input[type="text"], :root[data-theme="dark"] input[type="email"], :root[data-theme="dark"] input[type="tel"], :root[data-theme="dark"] input[type="password"], :root[data-theme="dark"] input[type="number"], :root[data-theme="dark"] input[type="search"], :root[data-theme="dark"] input[type="url"], :root[data-theme="dark"] select, :root[data-theme="dark"] textarea{background:var(--panel)}
:root[data-theme="dark"] .pay-chip{background:var(--panel);color:var(--text)}
:root[data-theme="dark"] .pay-chip-sub{color:var(--text-3)}
:root[data-theme="dark"] .chat-launcher .chat-dot{border-color:var(--border)}
:root[data-theme="dark"] .chat-panel{background:var(--panel)}
:root[data-theme="dark"] .chat-logo{background:var(--panel)}
:root[data-theme="dark"] .chat-welcome{background:var(--panel)}
:root[data-theme="dark"] .msg .msg-bubble{background:var(--panel)}
:root[data-theme="dark"] .msg-ai .msg-bubble{background:var(--panel)}
:root[data-theme="dark"] .msg-ai .msg-who{color:#FF9A4D}
:root[data-theme="dark"] .msg-human .msg-who{color:#5FD69A}
:root[data-theme="dark"] .msg-system p{background:rgba(255,107,0,.14);color:var(--text)}
:root[data-theme="dark"] .chat-foot{background:var(--panel)}
:root[data-theme="dark"] .chat-field input, :root[data-theme="dark"] .chat-field textarea, :root[data-theme="dark"] .chat-send-form input{background:var(--panel)}
:root[data-theme="dark"] .chat-err{color:#F26B6B}
:root[data-theme="dark"] .compare-wrap{background:var(--panel)}
:root[data-theme="dark"] .compare-wrap tbody tr:nth-child(2n) td, :root[data-theme="dark"] .compare-wrap tbody tr:nth-child(2n) th[scope="row"]{background:var(--panel-2)}
:root[data-theme="dark"] .hero-tel-txt small{color:var(--text-3)}
:root[data-theme="dark"] .page-hero input, :root[data-theme="dark"] .page-hero select, :root[data-theme="dark"] .page-hero textarea{color:var(--text);-webkit-text-fill-color:var(--text)}
:root[data-theme="dark"] .page-hero input::placeholder, :root[data-theme="dark"] .page-hero textarea::placeholder{color:var(--text-3)}
:root[data-theme="dark"] .search-result-card{background:var(--panel)}
:root[data-theme="dark"] input:not([type]), :root[data-theme="dark"] input[type="text"], :root[data-theme="dark"] input[type="email"], :root[data-theme="dark"] input[type="tel"], :root[data-theme="dark"] input[type="password"], :root[data-theme="dark"] input[type="number"], :root[data-theme="dark"] input[type="search"], :root[data-theme="dark"] select, :root[data-theme="dark"] textarea{background:var(--panel)}
:root[data-theme="dark"] .trust-badge{background:var(--panel)}
:root[data-theme="dark"] .fraud-doc .fraud-badge{color:#FF9A4D}
:root[data-theme="dark"] .article-prose p.warn, :root[data-theme="dark"] .article-prose .warn{color:#FFB070}
:root[data-theme="dark"] .seo-fallback-addr{color:var(--text-3)}
:root[data-theme="dark"] .pay-method{background:var(--panel)}
:root[data-theme="dark"] .pay-method:hover{background:rgba(255,107,0,.07)}
:root[data-theme="dark"] .pay-method:has(input:checked){background:rgba(255,107,0,.12)}
:root[data-theme="dark"] .notif-panel{background:var(--panel)}
:root[data-theme="dark"] .notif-head{background:var(--panel-2)}
:root[data-theme="dark"] .react-btn{background:var(--panel);color:var(--text)}
:root[data-theme="dark"] .react-btn.is-active{color:#FF9A4D}
:root[data-theme="dark"] .react-btn.is-active .react-count{background:var(--panel);color:#FF9A4D}
:root[data-theme="dark"] .share-btn{background:var(--panel);color:var(--text)}
:root[data-theme="dark"] .engagement-title{color:var(--text)}
:root[data-theme="dark"] .comment-form{background:var(--panel-2)}
:root[data-theme="dark"] .comment-form textarea{background:var(--panel);color:var(--text)}
:root[data-theme="dark"] .comment-gate p{color:var(--text)}
:root[data-theme="dark"] .comment-card{background:var(--panel)}
:root[data-theme="dark"] .comment-meta{color:var(--text)}
:root[data-theme="dark"] .comment-body{color:var(--text-2)}
:root[data-theme="dark"] .notif-modal{background:var(--panel);color:var(--text)}
:root[data-theme="dark"] .notif-modal-close{color:var(--text-3)}
:root[data-theme="dark"] .notif-modal-close:hover{color:var(--text)}
:root[data-theme="dark"] .notif-modal-title{color:var(--text)}
:root[data-theme="dark"] .notif-modal-body{color:var(--text-2)}
:root[data-theme="dark"] .notif-modal-ios{background:rgba(255,107,0,.12)}
:root[data-theme="dark"] .notif-modal-note{color:var(--text-3)}
:root[data-theme="dark"] .contact-popup{background:var(--panel)}
:root[data-theme="dark"] .contact-popup-body strong{color:var(--text)}
:root[data-theme="dark"] .contact-popup-body p{color:var(--text-2)}
:root[data-theme="dark"] .book-service-label{background:var(--panel)}
:root[data-theme="dark"] .book-service-info strong{color:var(--text)}
:root[data-theme="dark"] .book-service-info .muted{color:var(--text-3)}
:root[data-theme="dark"] .book-service-price{color:var(--text)}
:root[data-theme="dark"] .book-service-label.picked{background:rgba(255,107,0,.10)}
:root[data-theme="dark"] .book-total-bar strong{color:var(--text)}
:root[data-theme="dark"] .react-btn{background:var(--panel);color:var(--text)}
:root[data-theme="dark"] .react-btn.react-btn-love.is-active{color:#FF6F91}
:root[data-theme="dark"] .react-btn.react-btn-like.is-active .react-count{background:var(--panel)}
:root[data-theme="dark"] .react-btn.react-btn-love.is-active .react-count{background:var(--panel);color:#FF6F91}
:root[data-theme="dark"] .share-menu{background:var(--panel)}
:root[data-theme="dark"] .article-cta h3{color:var(--text)}
:root[data-theme="dark"] .notif-cta.btn-secondary{background:var(--panel)}
:root[data-theme="dark"] .eyebrow-pill{background:rgba(255,107,0,.12);color:#FF8E3D}
:root[data-theme="dark"] .hero-strip{background:var(--panel)}
:root[data-theme="dark"] .hero-strip-tile{background:var(--panel);border-right-color:var(--border)}
:root[data-theme="dark"] .hero-strip-tile:hover{background:rgba(255,107,0,.08)}
:root[data-theme="dark"] .hero-strip-ic{background:rgba(255,107,0,.14)}
:root[data-theme="dark"] .hero-strip-tile strong{color:var(--text)}
:root[data-theme="dark"] .hero-strip-tile small{color:var(--text-3)}
@media (max-width:960px){:root[data-theme="dark"] .hero-strip-tile{border-bottom-color:var(--border)}}
@media (max-width:420px){:root[data-theme="dark"] .hero-strip-tile{border-bottom-color:var(--border)}}
:root[data-theme="dark"] .help-band{background:var(--bg-2)}
:root[data-theme="dark"] .av-hero{background:var(--panel)}
:root[data-theme="dark"] .av-hero-copy h1{color:var(--text)}
:root[data-theme="dark"] .av-hero-copy .lead{color:var(--text-2)}
:root[data-theme="dark"] .av-hero-list li{color:var(--text-2)}
:root[data-theme="dark"] .av-hero-fineprint{color:var(--text-3)}
:root[data-theme="dark"] .av-hero-fineprint .av-sep{color:var(--text-3)}
:root[data-theme="dark"] .av-hero-badges li{color:var(--text)}
:root[data-theme="dark"] .av-compare-sec{background:var(--panel)}
:root[data-theme="dark"] .av-compare-wrap{background:var(--panel);border-color:var(--border)}
:root[data-theme="dark"] .compare-table thead th{background:var(--panel-2);border-bottom-color:var(--border);color:var(--text)}
:root[data-theme="dark"] .compare-table tbody th{background:var(--panel)}
:root[data-theme="dark"] .compare-table tbody td{background:var(--panel);color:var(--text)}
:root[data-theme="dark"] .compare-table tbody td.cmp-us{background:rgba(255,107,0,.12)}
:root[data-theme="dark"] .cmp-row-highlight th{background:rgba(255,107,0,.12) !important;color:var(--text)}
:root[data-theme="dark"] .cmp-row-highlight td{background:rgba(255,107,0,.08) !important}
:root[data-theme="dark"] .cmp-row-highlight td.cmp-us{background:rgba(255,107,0,.22) !important}
:root[data-theme="dark"] .cmp-feat-ic{background:rgba(255,107,0,.14)}
@media (max-width:720px){:root[data-theme="dark"] .compare-table thead th:first-child{background:var(--panel-2)}}
:root[data-theme="dark"] .av-steps-sec{background:var(--panel)}
:root[data-theme="dark"] .av-step strong{color:var(--text)}
:root[data-theme="dark"] .av-why-sec{background:var(--panel)}
:root[data-theme="dark"] .av-why-item:not(:last-child)::after{background:var(--border)}
:root[data-theme="dark"] .av-why-ic{background:rgba(255,107,0,.14)}
:root[data-theme="dark"] .av-why-lbl{color:var(--text)}
:root[data-theme="dark"] .av-purchase-copy h1{color:var(--text)}
:root[data-theme="dark"] .av-purchase-term{color:var(--text-2)}
:root[data-theme="dark"] .av-purchase-term .av-sep{color:var(--text-3)}
:root[data-theme="dark"] .av-price-summary .av-grand strong{color:var(--text)}
:root[data-theme="dark"] .cmp-price{color:var(--text)}
:root[data-theme="dark"] .cmp-price strong{color:var(--text)}
:root[data-theme="dark"] .cmp-price small{color:var(--text-3)}
:root[data-theme="dark"] .cmp-price-promo small{color:#FFB070}
:root[data-theme="dark"] .cmp-price-us strong{color:#FF9A4D}
:root[data-theme="dark"] .av-addon-price{color:var(--text)}
:root[data-theme="dark"] .av-key{color:var(--text)}
:root[data-theme="dark"] .av-facts-grid strong{color:var(--text)}
:root[data-theme="dark"] .av-msg.sev-success .av-msg-ic{color:#5FD69A}
:root[data-theme="dark"] .av-msg.sev-warning .av-msg-ic{color:#FFB070}
:root[data-theme="dark"] .av-msg.sev-danger .av-msg-ic{color:#F26B6B}
:root[data-theme="dark"] .av-consent-scopes svg{color:#5FD69A}
:root[data-theme="dark"] .promo-os-badge{background:var(--panel);color:var(--text)}
:root[data-theme="dark"] .pay-method-cardmarks img{background:var(--panel)}
