/* ══════════════════════════════════════════════════════════
   lp.css — Standalone Tool Landing Page Styles
   Used by: compress-pdf.html, password-generator.html, etc.
══════════════════════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{background:#050508;color:#e2e8f0;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}

/* ── CSS Variables ────────────────────────────────────────── */
:root{
  --accent:#8250ff;
  --accent-light:#a070ff;
  --accent-dim:rgba(130,80,255,.15);
  --border:rgba(130,80,255,.2);
  --border-subtle:rgba(255,255,255,.07);
  --surface:rgba(255,255,255,.03);
  --surface-2:rgba(255,255,255,.05);
  --text-primary:#e2e8f0;
  --text-muted:#94a3b8;
  --text-dim:#6b7280;
  --green:#4ade80;
  --red:#f87171;
  --yellow:#fbbf24;
}

/* ── Shared Util ─────────────────────────────────────────── */
.hidden{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ── Layout Wrapper ─────────────────────────────────────── */
.lp-wrap{max-width:860px;margin:0 auto;padding:0 20px}
@media(max-width:600px){.lp-wrap{padding:0 14px}}

/* ── Header ─────────────────────────────────────────────── */
.lp-header{
  border-bottom:1px solid var(--border-subtle);
  padding:14px 0;
  background:rgba(5,5,8,.9);
  position:sticky;top:0;z-index:100;
  backdrop-filter:blur(12px);
}
.lp-header-inner{
  max-width:860px;margin:0 auto;padding:0 20px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
}
.lp-logo{
  display:flex;align-items:center;gap:8px;
  font-weight:800;font-size:.95rem;color:#e2e8f0;
  text-decoration:none;
}
.lp-logo:hover{color:var(--accent-light)}
.lp-logo-snake{font-size:1.2rem}
.lp-header-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.lp-header-nav a{
  font-size:.72rem;color:var(--text-muted);padding:.28rem .65rem;
  border:1px solid var(--border-subtle);border-radius:.45rem;
  transition:all .15s;white-space:nowrap;
}
.lp-header-nav a:hover{color:var(--text-primary);border-color:var(--border)}
.lp-lang{display:flex;align-items:center;gap:4px;flex-shrink:0}
.lp-lang .lang-btn{
  padding:3px 9px;border-radius:6px;border:1px solid var(--border-subtle);
  background:rgba(255,255,255,.04);color:var(--text-muted);
  font-size:.68rem;font-weight:800;letter-spacing:.06em;cursor:pointer;font-family:inherit;
  transition:all .15s;
}
.lp-lang .lang-btn:hover,.lp-lang .lang-btn.lang-active{
  border-color:rgba(130,80,255,.5);color:var(--accent-light);background:rgba(130,80,255,.12);
}
.lp-btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:.5rem 1.1rem;border-radius:8px;border:1px solid var(--border);
  background:var(--accent-dim);color:var(--accent-light);font-weight:700;font-size:.8rem;cursor:pointer;
  font-family:inherit;transition:all .15s;
}
.lp-btn:hover{border-color:var(--border);color:#f1f5f9}

/* ── Hero ────────────────────────────────────────────────── */
.lp-hero{
  padding:52px 0 28px;
  text-align:center;
}
.lp-h1{
  font-size:clamp(1.75rem,4vw,2.6rem);
  font-weight:900;
  letter-spacing:-.03em;
  line-height:1.15;
  color:#f1f5f9;
  margin-bottom:.7rem;
}
.lp-h1 .accent{background:linear-gradient(135deg,#a070ff,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.lp-hero-sub{
  font-size:1.02rem;color:var(--text-muted);
  max-width:560px;margin:0 auto 1rem;
}
.lp-trust{
  display:inline-flex;align-items:center;gap:6px;
  font-size:.72rem;font-weight:700;color:var(--green);
  background:rgba(74,222,128,.08);
  border:1px solid rgba(74,222,128,.2);
  padding:.3rem .8rem;border-radius:100px;
  letter-spacing:.04em;text-transform:uppercase;
  margin-bottom:2rem;
}

/* ── Tool Box ────────────────────────────────────────────── */
.lp-tool-box{
  background:rgba(130,80,255,.04);
  border:1px solid var(--border);
  border-radius:1.25rem;
  padding:28px;
  margin-bottom:3rem;
}
@media(max-width:600px){.lp-tool-box{padding:18px;border-radius:.9rem}}

/* ── Sections ────────────────────────────────────────────── */
.lp-section{margin-bottom:3rem}
.lp-section-badge{
  display:inline-block;font-size:.65rem;font-weight:800;
  text-transform:uppercase;letter-spacing:.12em;
  color:var(--accent-light);margin-bottom:.5rem;
}
.lp-section-title{
  font-size:1.45rem;font-weight:800;
  letter-spacing:-.02em;color:#f1f5f9;
  margin-bottom:1rem;
}

/* ── Features Grid ───────────────────────────────────────── */
.lp-features{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:.75rem;
}
.lp-feature{
  background:var(--surface);border:1px solid var(--border-subtle);
  border-radius:.85rem;padding:14px 16px;
  display:flex;align-items:flex-start;gap:10px;
}
.lp-feature-ico{font-size:1.2rem;flex-shrink:0;margin-top:.1rem}
.lp-feature-text strong{display:block;font-size:.82rem;font-weight:700;color:#f1f5f9;margin-bottom:.15rem}
.lp-feature-text span{font-size:.73rem;color:var(--text-muted)}

/* ── How to Use Steps ───────────────────────────────────── */
.lp-steps{display:flex;flex-direction:column;gap:.75rem}
.lp-step{
  display:flex;align-items:flex-start;gap:14px;
  background:var(--surface);border:1px solid var(--border-subtle);
  border-radius:.85rem;padding:14px 16px;
}
.lp-step-num{
  width:30px;height:30px;border-radius:50%;flex-shrink:0;
  background:var(--accent-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:.72rem;font-weight:800;color:var(--accent-light);
}
.lp-step-text strong{display:block;font-size:.85rem;font-weight:700;color:#f1f5f9;margin-bottom:.15rem}
.lp-step-text span{font-size:.76rem;color:var(--text-muted)}

/* ── FAQ ─────────────────────────────────────────────────── */
.lp-faq{display:flex;flex-direction:column;gap:.5rem}
details.lp-faq-item{
  background:var(--surface);border:1px solid var(--border-subtle);
  border-radius:.75rem;overflow:hidden;
}
details.lp-faq-item[open]{border-color:var(--border)}
details.lp-faq-item summary{
  padding:14px 16px;cursor:pointer;list-style:none;
  font-size:.88rem;font-weight:700;color:#e2e8f0;
  display:flex;align-items:center;justify-content:space-between;
  user-select:none;gap:8px;
}
details.lp-faq-item summary::-webkit-details-marker{display:none}
details.lp-faq-item summary::after{
  content:"﹢";font-size:1rem;flex-shrink:0;color:var(--accent-light);transition:transform .2s;
}
details.lp-faq-item[open] summary::after{content:"−"}
.lp-faq-body{
  padding:0 16px 14px;
  font-size:.82rem;color:var(--text-muted);line-height:1.65;
  border-top:1px solid var(--border-subtle);
  padding-top:10px;
}

/* ── Related Tools ───────────────────────────────────────── */
.lp-related-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6rem;
}
.lp-related-card{
  display:flex;align-items:center;gap:10px;
  background:var(--surface);border:1px solid var(--border-subtle);
  border-radius:.75rem;padding:11px 14px;
  transition:all .15s;text-decoration:none;
}
.lp-related-card:hover{border-color:var(--border);background:var(--surface-2);transform:translateY(-1px)}
.lp-related-ico{font-size:1.2rem;flex-shrink:0}
.lp-related-name{font-size:.8rem;font-weight:700;color:#e2e8f0}
.lp-related-desc{font-size:.68rem;color:var(--text-muted)}
.lp-related-arr{margin-left:auto;font-size:1rem;color:var(--text-dim)}

/* ── Divider ─────────────────────────────────────────────── */
.lp-divider{height:1px;background:var(--border-subtle);margin:2.5rem 0}

/* ── Footer ─────────────────────────────────────────────── */
.lp-footer{
  border-top:1px solid var(--border-subtle);
  padding:28px 0;text-align:center;
  font-size:.73rem;color:var(--text-dim);
}
.lp-footer a{color:var(--text-muted);transition:color .15s}
.lp-footer a:hover{color:var(--text-primary)}
.lp-footer-links{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-bottom:.75rem}

/* ── Reused component styles ─────────────────────────────── */
.dropzone{
  border:2px dashed rgba(130,80,255,.3);border-radius:1rem;
  padding:32px 20px;text-align:center;cursor:pointer;
  transition:all .2s;background:rgba(130,80,255,.03);
}
.dropzone:hover,.dropzone.drag-over{
  border-color:var(--accent);background:rgba(130,80,255,.07);
}
.drop-icon{width:52px;height:52px;background:var(--accent-dim);
  border-radius:.75rem;display:flex;align-items:center;justify-content:center;
  margin:0 auto .75rem;color:var(--accent-light);}
.drop-icon svg{width:24px;height:24px}
.drop-title{font-size:.92rem;font-weight:700;color:#f1f5f9;margin-bottom:.3rem}
.drop-sub{font-size:.72rem;color:var(--text-muted)}
.drop-selected{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;color:var(--green);margin-top:.5rem}

.btn-primary{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  width:100%;padding:.7rem 1.25rem;border-radius:.65rem;border:none;
  background:linear-gradient(135deg,#8250ff,#a070ff);color:#fff;
  font-size:.85rem;font-weight:700;cursor:pointer;transition:all .18s;
}
.btn-primary:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}
.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}
.btn-secondary{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  padding:.6rem 1rem;border-radius:.6rem;
  border:1px solid var(--border-subtle);background:var(--surface);
  color:var(--text-muted);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s;
}
.btn-secondary:hover{border-color:var(--border);color:var(--text-primary)}
.input-field{
  width:100%;padding:.55rem .8rem;
  background:rgba(0,0,0,.3);border:1px solid var(--border-subtle);
  border-radius:.55rem;color:#e2e8f0;font-size:.85rem;
  outline:none;transition:border-color .15s;
}
.input-field:focus{border-color:var(--accent)}
.field-label{display:block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.3rem}
.space-y>*+*{margin-top:.85rem}
.progress-track{height:5px;background:rgba(255,255,255,.07);border-radius:3px;overflow:hidden;margin-top:.4rem}
.progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-light));width:0%;transition:width .3s;border-radius:3px}
.result-box{background:rgba(0,0,0,.25);border:1px solid var(--border-subtle);border-radius:.65rem;padding:12px 14px;font-size:.82rem;color:var(--text-primary)}
.stat-row{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.78rem;padding:.6rem .9rem;background:var(--accent-dim);border:1px solid var(--border);border-radius:.65rem}

/* ── Mobile adjustments ──────────────────────────────────── */
@media(max-width:600px){
  .lp-hero{padding:36px 0 20px}
  .lp-section-title{font-size:1.2rem}
  .lp-features{grid-template-columns:1fr}
  .lp-related-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:380px){
  .lp-related-grid{grid-template-columns:1fr}
}
