:root{
      --bg-body:#ffffff;--bg-sidebar:#ffffff;--bg-card:#ffffff;
      --primary:#000000;--primary-soft:#f2f2f2;--text-main:#000000;--text-muted:rgba(0,0,0,.55);
      --border-soft:#e5e5e5;--radius-xl:18px;--shadow-soft:0 8px 24px rgba(0,0,0,.08);
      --font-family:system-ui,-apple-system,BlinkMacSystemFont,"SF Pro",sans-serif;
      --sidebar-wide:260px; --sidebar-narrow:72px;
      --content-max:1140px;
    }
    *{box-sizing:border-box}
    html,body{height:100%}
    body{
      margin:0;
      overflow-x:hidden;
      font-family:var(--font-family);
      background:#f5f7fb;
      color:var(--text-main)
    }
    .app-layout{display:flex;min-height:100vh;background:linear-gradient(180deg,#f7f9ff 0%,#f1f4fb 60%,#eef1f8 100%);overflow:hidden}

    #sidebar{
      width:var(--sidebar-wide);
      background:#0f111b;
      position:fixed;left:0;top:0;bottom:0;
      padding:20px 18px;
      border-right:1px solid rgba(255,255,255,.05);
      display:flex;flex-direction:column;z-index:1030;
      transition:width .25s ease, transform .3s ease;
      overflow-y:auto;
    }
    #sidebar::-webkit-scrollbar{width:0;height:0}
    #sidebar{scrollbar-width:none;-ms-overflow-style:none}
    #sidebar.narrow{width:var(--sidebar-narrow)}
    @media (max-width: 991.98px){
      #sidebar{transform:translateX(-100%);}  
      #sidebar.mobile-open{transform:translateX(0);}  
    }

    .brand{display:flex;align-items:center;gap:12px;padding:6px 8px;border-radius:12px;color:#fff}
    .brand-emblem{
      width:48px;
      height:48px;
      border-radius:18px;
      background:#ffffff1a;
      color:#fff;
      font-weight:700;
      font-size:0.95rem;
      letter-spacing:0.08em;
      display:flex;
      align-items:center;
      justify-content:center;
      flex-shrink:0;
      transition:transform .25s ease;
    }
    .brand-wordmark{display:flex;flex-direction:column;line-height:1.1}
    .brand-wordmark strong{font-size:1.1rem;color:#fff}
    .brand-wordmark span{font-size:0.75rem;color:rgba(255,255,255,.65);letter-spacing:0.08em;text-transform:uppercase}
    #sidebar.narrow .brand-wordmark{display:none}

    .home-toggle{
      display:flex;align-items:center;gap:10px;
      padding:12px 14px;margin:16px 0;border-radius:16px;
      color:#fff;text-decoration:none;cursor:pointer;
      background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);
    }
    .home-toggle:hover{border-color:#000}
    .home-toggle i{width:24px;text-align:center}
    .home-toggle .label{font-size:14px}
    #sidebar.narrow .home-toggle{justify-content:center}
    #sidebar.narrow .home-toggle .label{display:none}

    .nav-list{list-style:none;padding:12px 0 0;margin:0;display:flex;flex-direction:column;gap:6px}
    .nav-list a{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:14px;color:rgba(255,255,255,.65);text-decoration:none;font-size:14px;transition:all .2s ease;white-space:nowrap}
    .nav-list a i{width:24px;text-align:center;font-size:15px}
    .nav-list a:hover{background:rgba(255,255,255,.08);color:#fff}
    .nav-list a.active{background:#ffffff1a;color:#fff}
    #sidebar.narrow .nav-list a span{display:none}

    #content{
      margin-left:var(--sidebar-narrow);
      width:calc(100% - var(--sidebar-narrow));
      flex:1;
      display:flex;
      flex-direction:column;
      min-height:100vh;
      transition:margin-left .25s ease,width .25s ease;
      background:transparent;
      max-width:100%;
      overflow:visible;
    }
    #content.expanded{
      margin-left:var(--sidebar-wide);
      width:calc(100% - var(--sidebar-wide));
    }
    #content.hiddenShift{
      margin-left:0;
      width:100%;
    }
    @media (max-width: 991.98px){
      #content,#content.expanded{
        margin-left:0 !important;
        width:100% !important;
      }
    }

    #app-header{height:78px;padding:0 24px;background:#fff;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(15,23,42,.08);position:sticky;top:0;z-index:1020;flex-wrap:wrap;gap:8px;box-shadow:0 10px 30px rgba(15,23,42,.05)}

    .app-note-banner{
      margin:18px 32px 12px;
      padding:18px 24px;
      border-radius:24px;
      border:1px solid rgba(15,23,42,.08);
      background:linear-gradient(135deg, #ffffff, #f6f8ff);
      box-shadow:0 18px 38px rgba(15,23,42,.08);
      display:flex;
      align-items:center;
      gap:18px;
      color:var(--text-main);
      flex-wrap:nowrap;
    }
    .app-note-icon-ring{
      width:48px;
      height:48px;
      border-radius:14px;
      background:#000;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      color:#fff;
      font-size:1.2rem;
      box-shadow:0 10px 20px rgba(0,0,0,.2);
      flex-shrink:0;
    }
    .app-note-text{
      margin:0;
      font-size:1rem;
      color:var(--text-main);
      font-weight:500;
      white-space:nowrap;
    }
    .app-note-text strong{color:#000}
    .app-note-actions{
      display:flex;
      align-items:center;
      gap:0.75rem;
      margin-left:auto;
    }
    .app-note-actions .btn{
      border-radius:999px;
      padding:0.35rem 1.2rem;
      font-weight:600;
    }
    .app-note-link{
      font-weight:600;
      color:#1a4fff;
      text-decoration:none;
      border-bottom:1px solid transparent;
    }
    .app-note-link:hover{border-color:currentColor}

    .content-wrap{padding:32px 32px 52px;max-width:1400px;margin:0 auto;width:100%}

    #tools{margin-top:32px}
    #tools h6{font-size:1.05rem;letter-spacing:.04em;text-transform:uppercase;color:rgba(15,23,42,.65) !important;margin-bottom:1.2rem;font-weight:600}
    #tools .row{row-gap:24px}
    #tools .tool-card{background:#fff;border-radius:24px;padding:6px;border:1px solid rgba(15,23,42,.08);box-shadow:0 20px 36px rgba(15,23,42,.06);height:100%;transition:transform .25s ease, box-shadow .25s ease,border-color .25s ease}
    #tools .tool-card:hover{transform:translateY(-6px);box-shadow:0 30px 45px rgba(15,23,42,.1);border-color:rgba(15,23,42,.16)}
    #tools .tool-card .card-body{padding:26px 22px;display:flex;flex-direction:column;align-items:center;gap:12px}
    #tools .tool-card i{width:56px;height:56px;border-radius:16px;background:rgba(15,23,42,.06);display:flex;align-items:center;justify-content:center;font-size:20px;color:#000}
    #tools .tool-card h5{font-size:1.05rem;margin-bottom:.1rem;color:#000}
    #tools .tool-card p{color:rgba(15,23,42,.7);font-size:.92rem;min-height:42px}
    #tools .tool-card .btn{font-size:.9rem;padding:8px 18px;border-radius:999px;border:1px solid #000;color:#000;background:#fff;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.35rem}
    #tools .tool-card .btn:hover{background:#000;color:#fff}

    .btn,
    .btn-primary,
    .btn-secondary,
    .btn-success,
    .btn-danger,
    .btn-dark,
    .btn-info{
      background:#fff;
      color:#000;
      border:1px solid #000;
      transition:background .15s,color .15s;
    }
    .btn:hover,
    .btn-primary:hover,
    .btn-secondary:hover,
    .btn-success:hover,
    .btn-danger:hover,
    .btn-dark:hover,
    .btn-info:hover{
      background:#000;
      color:#fff;
    }

    .dashboard-card{background:#fff;border-radius:24px;padding:22px;border:1px solid rgba(15,23,42,.08);box-shadow:0 22px 35px rgba(15,23,42,.08);display:flex;align-items:center;gap:18px;min-height:130px}
    .dashboard-card i{width:52px;height:52px;border-radius:16px;background:rgba(15,23,42,.08);display:flex;align-items:center;justify-content:center;font-size:22px;color:#000}
    #metricsWrap h6{font-size:1.05rem;font-weight:600;margin-bottom:.25rem}
    #metricsWrap p{color:rgba(15,23,42,.7);margin:0}
    #metricsWrap .row{row-gap:20px}
    .demo-label{background:#000;color:#fff;padding:.2rem .5rem;border-radius:8px;font-size:.8rem;margin-left:.5rem}

    .extension-banner-wrapper{
      background:#fff;
      padding:8px;
      color:#000;
      border:1px solid var(--border-soft);
      margin:8px 16px 16px;
      border-radius:12px;
      display:flex;
      justify-content:center;
    }
    .extension-banner{
      overflow:hidden;
      white-space:nowrap;
      width:100%;
      max-width:900px;
    }
    .tool-host .extension-banner,
    .bw-panel .extension-banner{
      display:flex !important;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      gap:.6rem;
      border:1px solid var(--border-soft) !important;
      border-radius:10px !important;
      padding:10px 14px !important;
      background:#fff !important;
      color:#000 !important;
      width:100%;
      max-width:900px;
      margin:0 auto 1rem !important;
      white-space:normal !important;
    }
   .extension-banner .marquee{display:inline-block;animation:marquee 40s linear infinite}
    .tool-host .extension-banner-buttons,
    .bw-panel .extension-banner-buttons{
      display:flex;
      flex-wrap:wrap;
      gap:.5rem;
      justify-content:center;
    }
    .tool-host .extension-banner-buttons .btn,
    .bw-panel .extension-banner-buttons .btn{
      border:1px solid #000 !important;
      background:#fff !important;
      color:#000 !important;
    }
    @keyframes marquee{0%{transform:translateX(-100%)}50%{transform:translateX(100%)}100%{transform:translateX(-100%)}
    }

    .max-wrap{max-width:var(--content-max);margin:0 auto;padding:0 15px}

    #sidebarBackdrop{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:1025;display:none}
    #sidebarBackdrop.show{display:block}

    @media (max-width:768px){
      .content-wrap{padding:24px 16px 32px}
      .app-note-banner{
        margin:12px 16px 0;
        flex-wrap:wrap;
        padding:16px 18px;
      }
      .app-note-text{white-space:normal}
      .app-note-actions{width:100%;justify-content:flex-start;margin-left:0}
      .extension-banner-wrapper{margin:8px 16px 16px}
      .tool-host,
      .bw-panel{margin:20px 12px;padding:16px}
      .bw-table table{min-width:600px}
    }

    .tool-page-heading{text-align:center;padding:2rem 1rem 1.5rem}
    .tool-page-heading h2{font-size:clamp(1.9rem,3.2vw,2.5rem);font-weight:700;margin:0 0 .35rem;color:var(--text-main)}
    .tool-page-heading p{margin:0;color:var(--text-muted);font-size:.98rem}

    .tool-host{
      border:1px solid var(--border-soft);
      border-radius:24px;
      padding:clamp(16px,4vw,24px);
      margin:clamp(20px,3vw,32px) auto;
      width:calc(100% - clamp(24px,4vw,64px));
      max-width:1300px;
      background:#fff;
      overflow:hidden;
    }
    .tool-host *{box-sizing:border-box;max-width:100%;}
    .tool-host img,
    .tool-host video,
    .tool-host canvas{max-width:100%;height:auto}
    .tool-loader{text-align:center;color:var(--text-muted);font-size:.95rem;padding:2rem 0;}
    .tool-host .tool-layout{padding-left:0!important}
    .tool-host aside.sidebar,
    .tool-host [data-sidebar]{display:none!important}
    .tool-host .container,
    .tool-host main,
    .tool-host .main-content,
    .tool-host .tool-layout{max-width:100%!important;width:100%!important}
    .tool-host textarea,
    .tool-host input,
    .tool-host select,
    #ace-gmaps-scraper #keyword,
    #social-links-extractor-section #socialDomainsInput,
    #ace-decision-makers-section #domainsInput,
    #captcha-free-email-finder-section #captchaDomainsInput,
    #email-finder-section #efDomainsInput{
      width:100%!important;
      max-width:100%!important;
    }
    .tool-host .table-responsive,
    .tool-host .table-wrap{overflow-x:auto}

    .bw-panel{
      background:#fff;
      border:1px solid var(--border-soft);
      border-radius:24px;
      padding:clamp(16px,4vw,48px) 0;
      margin:clamp(20px,3vw,32px) auto;
      width:calc(100% - clamp(24px,4vw,64px));
      max-width:1180px;
    }
    .bw-panel textarea,
    .bw-panel input,
    .bw-panel select{background:#fff;color:#000;border:1px solid #000}

    .bw-table{overflow-x:auto}
    .bw-table table{border:1px solid #000;width:100%;min-width:720px}
    .bw-table th,
    .bw-table td{border:1px solid #000;padding:.75rem;text-align:center;background:#fff;color:#000}

    .alert{background:#fff;border:1px solid #000;color:#000}

    progress{
      width:100%;
      height:20px;
      border:1px solid #000;
      background:#fff;
    }
    progress::-webkit-progress-bar{background:#fff}
    progress::-webkit-progress-value{background:#000}
    progress::-moz-progress-bar{background:#000}
