:root{
  --bg:#0b1220;--card:#0f1a2e;--text:#eaf0ff;--muted:#a6b3d1;
  --line:#1b2a48;--accent:#5eead4;--accent2:#60a5fa;--danger:#ef4444;
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial;background:linear-gradient(180deg,#070b14,#0b1220);color:var(--text)}
a{color:inherit;text-decoration:none}
.container{width:min(1100px,92vw);margin:0 auto}

.site-header{position:sticky;top:0;z-index:20;background:rgba(7,11,20,.75);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:12px 0;gap:16px}
.brand{display:flex;align-items:center;gap:10px;font-weight:750}
.logo{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:rgba(94,234,212,.14);border:1px solid rgba(94,234,212,.25)}
.brand-text{letter-spacing:.2px}
.badge{font-size:12px;color:var(--muted);border:1px solid var(--line);padding:3px 8px;border-radius:999px;background:rgba(255,255,255,.03)}
.links{display:flex;gap:14px;align-items:center}
.links a{padding:8px 10px;border-radius:10px;color:var(--muted)}
.links a:hover{color:var(--text);background:rgba(255,255,255,.06)}

.burger{display:none;flex-direction:column;gap:5px;border:1px solid var(--line);background:transparent;border-radius:12px;padding:10px;cursor:pointer}
.burger span{width:22px;height:2px;background:var(--text);display:block;border-radius:2px}

.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;padding:26px 0}
.hero h1{font-size:42px;line-height:1.08;margin:0 0 10px}
.lead{color:var(--muted);font-size:16px;line-height:1.6;margin:0 0 14px}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips span{font-size:13px;color:var(--muted);border:1px solid var(--line);padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.03)}
.hero-card{border:1px solid var(--line);background:rgba(255,255,255,.03);border-radius:18px;padding:16px}
.hero-card-title{font-weight:750;margin-bottom:6px}

.tool-card{border:1px solid var(--line);background:rgba(255,255,255,.03);border-radius:20px;padding:18px;margin:10px 0 22px}
.grid{display:grid;grid-template-columns:1fr .46fr;gap:18px}
label{display:block;color:var(--muted);font-size:13px;margin:6px 0}
textarea,select{width:100%;border:1px solid var(--line);background:rgba(7,11,20,.45);color:var(--text);border-radius:14px;padding:12px;outline:none}
textarea{min-height:220px;resize:vertical}
.output{min-height:320px}
.row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}
.pill{border:1px dashed rgba(96,165,250,.5);color:var(--muted);border-radius:14px;padding:12px;background:rgba(96,165,250,.08)}
.captcha{margin:12px 0}
.warn{margin:12px 0;padding:12px;border-radius:14px;border:1px solid rgba(239,68,68,.35);background:rgba(239,68,68,.08);color:var(--text)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);padding:10px 14px;border-radius:14px;cursor:pointer}
.btn.primary{border-color:rgba(94,234,212,.45);background:linear-gradient(90deg,rgba(94,234,212,.16),rgba(96,165,250,.16))}
.btn-row{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}
.tiny{font-size:12px}
.muted{color:var(--muted)}
.side-card{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(255,255,255,.03)}
.side-title{font-weight:750;margin-bottom:8px}
.h2{margin:0 0 10px}
.cols{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.mini-card{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(255,255,255,.02)}
.mini-title{font-weight:750;margin-bottom:6px}

.alert{border-radius:18px;padding:14px;border:1px solid var(--line);background:rgba(255,255,255,.03);margin:12px 0}
.alert.ok{border-color:rgba(94,234,212,.35);background:rgba(94,234,212,.08)}
.alert.danger{border-color:rgba(239,68,68,.35);background:rgba(239,68,68,.08)}
.row-between{display:flex;align-items:center;justify-content:space-between;gap:12px}

.ad-wrap{margin:14px 0;border:1px dashed rgba(255,255,255,.14);border-radius:16px;padding:10px;background:rgba(255,255,255,.02);text-align:center}

.site-footer{border-top:1px solid var(--line);margin-top:24px;padding:22px 0;background:rgba(0,0,0,.12)}
.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.footer-brand{font-weight:850}
.footer-title{font-weight:750;margin-bottom:8px}
.footer-grid a{display:block;color:var(--muted);padding:6px 0}
.footer-grid a:hover{color:var(--text)}

details{border:1px solid var(--line);background:rgba(255,255,255,.02);border-radius:16px;padding:10px 12px;margin:10px 0}
summary{cursor:pointer;font-weight:650}
details p{color:var(--muted);line-height:1.6;margin:10px 0 0}



.site-header{ position: sticky; top:0; z-index: 9998; }
.burger{ position: relative; z-index: 10000; pointer-events: auto; }
.links{ position: relative; z-index: 9999; }



@media (max-width: 900px){
  .hero{grid-template-columns:1fr}
  .grid{grid-template-columns:1fr}
  .cols{grid-template-columns:repeat(2,1fr)}
}

.burger{ display:none; background:transparent; border:0; padding:10px; cursor:pointer; }
.burger span{ display:block; width:22px; height:2px; margin:4px 0; background:var(--text); border-radius:2px; }

/* Make header/menu always clickable on mobile */
.site-header{
  position: sticky;
  top: 0;
  z-index: 10000;
  background: rgba(7,11,20,.92);
  backdrop-filter: blur(8px);
}

@media (max-width: 720px){
  .nav{ position: relative; } /* anchor the absolute dropdown */

  .burger{ display:flex; z-index: 10002; }

  .links{
    display:none;
    position:absolute;
    left:0; right:0;
    top:64px;
    z-index: 10001;            /* critical */
    background: rgba(7,11,20,.97);
    border: 1px solid var(--line);
    border-left: 0;
    border-right: 0;
    padding: 12px 4vw;
    flex-direction: column;
    align-items: flex-start;
  }

  .links.open{ display:flex; }

  .links a{
    width:100%;
    padding:10px 0;
  }
}






.compare { display: grid; gap: 14px; }
.compare-block label { margin-bottom: 8px; }

.text-box{
  border:1px solid var(--line);
  background:rgba(7,11,20,.45);
  color:var(--text);
  border-radius:14px;
  padding:12px;
  min-height: 220px;
  white-space: pre-wrap;
  word-wrap: break-word;
  line-height: 1.7;
}

.hl{
  padding: 0 4px;
  border-radius: 6px;
  font-weight: 650;
}

.hl1{ background: rgba(94,234,212,.20); border: 1px solid rgba(94,234,212,.35); }
.hl2{ background: rgba(96,165,250,.20); border: 1px solid rgba(96,165,250,.35); }
.hl3{ background: rgba(168,85,247,.20); border: 1px solid rgba(168,85,247,.35); }
.hl4{ background: rgba(251,191,36,.18); border: 1px solid rgba(251,191,36,.35); }
.hl5{ background: rgba(244,63,94,.18); border: 1px solid rgba(244,63,94,.35); }
.hl6{ background: rgba(34,197,94,.18); border: 1px solid rgba(34,197,94,.35); }


/* Mobile drawer navigation */
.nav-overlay{
  position: fixed;
  inset: 0;
  background: rgba(2,6,23,.55);
  z-index: 9998;
}

.drawer-close{
  display:none;
  background: transparent;
  border: 0;
  color: var(--text);
  font-size: 28px;
  line-height: 1;
  padding: 6px 10px;
  margin: -6px -10px 8px auto;
  cursor: pointer;
}

@media (max-width: 820px){
  /* show only nav icon on mobile */
  .links{
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: min(84vw, 340px);
    background: rgba(7,11,20,.98);
    border-right: 1px solid var(--line);
    padding: 18px 18px 22px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    transform: translateX(-105%);
    transition: transform .22s ease;
    z-index: 9999;
  }
  .links.open{ transform: translateX(0); }

  .drawer-close{ display:block; }

  /* hide inline links area until opened */
  .nav{ position: relative; }
  .burger{
    display:flex;
    margin-left:auto;
    z-index:10001;
  }

  /* optional: keep header tidy */
  .badge{ display:none; }
}

/* prevent background scroll when nav open */
html.nav-lock, body.nav-lock{ overflow: hidden; }
