/* ============================================================
   eVehicle — Legal Pages (Privacy Policy + Terms)
   Shared stylesheet for both pages
   ============================================================ */
.lp-hero { background:linear-gradient(135deg,var(--dark) 0%,#1a1f2e 60%,#0f2218 100%); padding:44px 0 40px; position:relative; overflow:hidden; }
.lp-hero::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 55% 80% at 90% 40%,rgba(0,200,150,.09),transparent 60%); pointer-events:none; }
.lp-hero::after { content:''; position:absolute; inset:0; background-image:linear-gradient(rgba(0,200,150,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,200,150,.03) 1px,transparent 1px); background-size:44px 44px; pointer-events:none; }
.lp-hero-inner { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.lp-hero-badge { display:inline-flex; align-items:center; gap:7px; background:rgba(0,200,150,.12); border:1px solid rgba(0,200,150,.25); color:var(--primary); font-size:.7rem; font-weight:700; padding:4px 12px; border-radius:var(--radius-full); font-family:var(--font-primary); text-transform:uppercase; letter-spacing:.07em; margin-bottom:12px; }
.lp-hero h1 { color:var(--white); font-size:clamp(1.5rem,3vw,2.3rem); font-weight:900; font-family:var(--font-primary); margin:0 0 8px; }
.lp-hero-sub { color:rgba(255,255,255,.45); font-size:.88rem; line-height:1.7; max-width:480px; margin:0; }
.lp-hero-meta { display:flex; flex-direction:column; gap:8px; align-items:flex-end; flex-shrink:0; }
.lp-hero-date { font-size:.78rem; color:rgba(255,255,255,.4); font-family:var(--font-primary); display:flex; align-items:center; gap:6px; }
.lp-hero-date i { color:var(--primary); }
.lp-hero-version { display:inline-flex; align-items:center; gap:5px; background:rgba(0,200,150,.1); border:1px solid rgba(0,200,150,.2); color:var(--primary); font-size:.72rem; font-weight:700; padding:3px 10px; border-radius:var(--radius-full); font-family:var(--font-primary); }
.lp-related-docs { display:flex; gap:8px; margin-top:20px; flex-wrap:wrap; }
.lp-rel-doc { display:flex; align-items:center; gap:6px; padding:6px 13px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); border-radius:var(--radius-full); font-size:.76rem; color:rgba(255,255,255,.55); font-weight:600; font-family:var(--font-primary); text-decoration:none; transition:var(--transition); }
.lp-rel-doc:hover,.lp-rel-doc.active { background:rgba(0,200,150,.15); border-color:rgba(0,200,150,.3); color:var(--primary); }
.lp-layout { display:grid; grid-template-columns:240px 1fr; gap:28px; padding:36px 0 72px; align-items:start; }
.lp-toc { position:sticky; top:calc(var(--header-height) + 16px); background:var(--white); border:1.5px solid var(--border); border-radius:var(--radius-xl); overflow:hidden; }
.lp-toc-hd { padding:13px 18px; border-bottom:1px solid var(--border); background:var(--gray-50); display:flex; align-items:center; gap:8px; font-size:.78rem; font-weight:700; color:var(--text-muted); text-transform:uppercase; letter-spacing:.05em; font-family:var(--font-primary); }
.lp-toc-hd i { color:var(--primary); }
.lp-toc-list { padding:8px 0; }
.lp-toc-item { display:flex; align-items:center; gap:8px; padding:8px 18px; font-size:.78rem; color:var(--text-muted); cursor:pointer; transition:var(--transition); text-decoration:none; border-left:3px solid transparent; line-height:1.4; }
.lp-toc-item:hover,.lp-toc-item.active { color:var(--primary-dark); background:var(--primary-light); border-left-color:var(--primary); }
.lp-toc-item.active { font-weight:700; }
.lp-toc-num { font-size:.65rem; font-weight:800; color:var(--primary); background:var(--primary-light); width:18px; height:18px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; font-family:var(--font-primary); }
.lp-toc-item.active .lp-toc-num { background:var(--primary); color:var(--dark); }
.lp-toc-actions { padding:12px 18px; border-top:1px solid var(--border); background:var(--gray-50); display:flex; flex-direction:column; gap:7px; }
.lp-toc-action { display:flex; align-items:center; gap:7px; font-size:.75rem; color:var(--text-muted); cursor:pointer; transition:var(--transition); font-weight:600; background:none; border:none; font-family:var(--font-primary); padding:0; text-decoration:none; }
.lp-toc-action:hover { color:var(--primary); }
.lp-toc-action i { color:var(--primary); font-size:.75rem; width:14px; }
.lp-reading-bar { height:3px; background:var(--primary); width:0%; transition:width .1s linear; }
.lp-info-box { background:var(--primary-light); border:1px solid rgba(0,200,150,.25); border-radius:var(--radius-xl); padding:18px 22px; margin-bottom:24px; display:flex; gap:14px; }
.lp-info-box-ico { font-size:1.5rem; flex-shrink:0; }
.lp-info-box-text { font-size:.85rem; color:var(--primary-dark); line-height:1.75; }
.lp-info-box-text strong { font-size:.9rem; display:block; margin-bottom:4px; font-family:var(--font-primary); }
.lp-section { background:var(--white); border:1.5px solid var(--border); border-radius:var(--radius-xl); overflow:hidden; margin-bottom:16px; scroll-margin-top:calc(var(--header-height) + 20px); }
.lp-section:last-child { margin-bottom:0; }
.lp-section-hd { display:flex; align-items:center; gap:12px; padding:16px 22px; background:var(--gray-50); border-bottom:1px solid var(--border); }
.lp-section-num { width:30px; height:30px; background:var(--primary); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:.72rem; font-weight:900; color:var(--dark); flex-shrink:0; font-family:var(--font-primary); }
.lp-section-hd h2 { font-size:.95rem; font-weight:800; color:var(--text); font-family:var(--font-primary); margin:0; }
.lp-section-body { padding:22px; font-size:.87rem; color:var(--text-muted); line-height:1.85; }
.lp-section-body h3 { font-size:.9rem; font-weight:800; color:var(--text); font-family:var(--font-primary); margin:20px 0 9px; display:flex; align-items:center; gap:8px; }
.lp-section-body h3 i { color:var(--primary); font-size:.82rem; }
.lp-section-body h3:first-child { margin-top:0; }
.lp-section-body p { margin:0 0 13px; }
.lp-section-body p:last-child { margin-bottom:0; }
.lp-section-body a { color:var(--primary); }
.lp-section-body ul,.lp-section-body ol { padding-left:0; list-style:none; margin:0 0 13px; display:flex; flex-direction:column; gap:7px; }
.lp-section-body li { display:flex; align-items:flex-start; gap:9px; font-size:.85rem; }
.lp-section-body li::before { content:''; width:6px; height:6px; background:var(--primary); border-radius:50%; margin-top:8px; flex-shrink:0; }
.lp-section-body ol { counter-reset:ol-counter; }
.lp-section-body ol li { counter-increment:ol-counter; }
.lp-section-body ol li::before { content:counter(ol-counter) '.'; background:none; width:auto; font-size:.78rem; font-weight:800; color:var(--primary); font-family:var(--font-primary); margin-top:1px; }
.lp-table { width:100%; border-collapse:collapse; margin:12px 0; font-size:.82rem; }
.lp-table th { background:var(--dark); color:rgba(255,255,255,.7); padding:10px 14px; text-align:left; font-size:.74rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; font-family:var(--font-primary); }
.lp-table td { padding:10px 14px; border-bottom:1px solid var(--border); vertical-align:top; line-height:1.6; }
.lp-table tr:nth-child(even) td { background:var(--gray-50); }
.lp-highlight { background:var(--gray-50); border-left:4px solid var(--primary); border-radius:0 var(--radius) var(--radius) 0; padding:13px 16px; margin:14px 0; font-size:.84rem; }
.lp-highlight strong { color:var(--primary-dark); font-family:var(--font-primary); }
.lp-warning { background:#fff7ed; border-left:4px solid #d97706; border-radius:0 var(--radius) var(--radius) 0; padding:13px 16px; margin:14px 0; font-size:.84rem; color:#92400e; }
.lp-warning i { color:#d97706; margin-right:6px; }
.lp-contact-box { background:linear-gradient(135deg,var(--dark),#1a2f20); border-radius:var(--radius-lg); padding:18px 20px; margin-top:14px; display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.lp-contact-box-ico { font-size:2rem; flex-shrink:0; }
.lp-contact-box-text { flex:1; }
.lp-contact-box-text h4 { color:var(--white); font-size:.9rem; font-weight:800; font-family:var(--font-primary); margin-bottom:4px; }
.lp-contact-box-text p { color:rgba(255,255,255,.5); font-size:.78rem; margin:0 0 8px; }
.lp-contact-box-links { display:flex; gap:8px; flex-wrap:wrap; }
.lp-contact-box-link { display:flex; align-items:center; gap:6px; font-size:.76rem; color:var(--primary); font-weight:700; text-decoration:none; background:rgba(0,200,150,.1); padding:4px 12px; border-radius:var(--radius-full); border:1px solid rgba(0,200,150,.2); transition:var(--transition); }
.lp-contact-box-link:hover { background:var(--primary); color:var(--dark); }
@media (max-width:768px) {
  .lp-layout { grid-template-columns:1fr; gap:0; }
  .lp-toc { display:none; }
  .lp-hero-inner { flex-direction:column; align-items:flex-start; }
  .lp-hero-meta { align-items:flex-start; }
  .lp-layout { padding:24px 0 48px; }
  .lp-section-body { padding:16px; }
}
