*{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#0f172a;--panel:#1e293b;--line:#334155;--accent:#38bdf8;--txt:#e2e8f0;--muted:#94a3b8;--dim:#64748b}
html{scroll-behavior:smooth}
body{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--txt);line-height:1.7}
header{display:flex;justify-content:space-between;align-items:center;padding:.9rem 1.5rem;background:var(--panel);position:sticky;top:0;z-index:50;gap:1rem;flex-wrap:wrap}
.logo{font-size:1.3rem;font-weight:800;color:#fff;letter-spacing:.5px}
.logo span{color:var(--accent)}
nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
nav a{color:var(--muted);text-decoration:none;font-weight:500;padding:.2rem .1rem}
nav a:hover{color:var(--accent)}
/* language toggle */
.lang-toggle{display:flex;border:1px solid var(--line);border-radius:20px;overflow:hidden}
.lang-toggle button{background:transparent;border:0;color:var(--muted);font-weight:700;font-size:.85rem;padding:.35rem .7rem;cursor:pointer}
.lang-toggle button.active{background:var(--accent);color:var(--bg)}
main{max-width:860px;margin:2rem auto;padding:0 1.5rem}
.hero{text-align:center;padding:2.5rem 0 2rem}
.hero h1{font-size:2.2rem;margin-bottom:1rem;color:#fff;line-height:1.3}
.hero .sub{color:var(--muted);font-size:1.05rem;margin-bottom:1.8rem}
.hero .tag{display:inline-block;background:var(--panel);border:1px solid var(--line);color:var(--accent);font-size:.85rem;font-weight:600;padding:.3rem .8rem;border-radius:20px;margin-bottom:1.5rem}
.btn{display:inline-block;background:var(--accent);color:var(--bg);padding:.7rem 1.4rem;border-radius:8px;font-weight:700;text-decoration:none;border:0;cursor:pointer;font-size:1rem}
.btn:hover{background:#7dd3fc}
.btn.ghost{background:transparent;border:1px solid var(--accent);color:var(--accent)}
.btn.ghost:hover{background:var(--accent);color:var(--bg)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}
.card{background:var(--panel);padding:1.4rem;border-radius:10px;border:1px solid transparent;transition:border .2s}
.card:hover{border-color:var(--line)}
.card h3{color:var(--accent);margin-bottom:.5rem;font-size:1.05rem}
.card p{color:#cbd5e1;font-size:.95rem}
section{margin:2.2rem 0}
h2.sec{color:#fff;margin-bottom:1rem;font-size:1.5rem}
h2.sec .en{display:block;color:var(--dim);font-size:.9rem;font-weight:500}
/* vehicle fleet */
.vehicles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin:1.5rem 0}
.veh{background:var(--panel);border-radius:10px;padding:1.2rem;text-align:center;border:1px solid var(--line)}
.veh .seat{font-size:1.8rem;font-weight:800;color:var(--accent)}
.veh .seat small{font-size:.8rem;color:var(--muted);font-weight:600}
.veh p{color:var(--muted);font-size:.85rem;margin-top:.4rem}
/* routes / coverage */
.routes ul{list-style:none}
.routes li{padding:.55rem 0;border-bottom:1px solid var(--line);color:#cbd5e1;display:flex;gap:.6rem}
.routes li::before{content:"→";color:var(--accent)}
.pill{display:inline-block;background:var(--panel);border:1px solid var(--line);color:#cbd5e1;font-size:.8rem;padding:.25rem .7rem;border-radius:14px;margin:.25rem .25rem 0 0}
/* cta */
.cta{text-align:center;padding:2.5rem 0;background:var(--panel);border-radius:12px}
.cta h2{color:#fff;font-size:1.6rem;margin-bottom:.5rem}
.cta p{color:var(--muted);margin-bottom:1.4rem}
/* calculator */
.calc{background:var(--panel);padding:1.8rem;border-radius:10px}
.calc .row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.calc label{display:block;margin:1rem 0 .3rem;font-weight:600;color:var(--muted);font-size:.9rem}
.calc select,.calc input{width:100%;padding:.6rem;background:var(--bg);color:#fff;border:1px solid var(--line);border-radius:6px;margin-bottom:.4rem;font-size:1rem}
.calc select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath fill='%2394a3b8' d='M0 0l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center}
.result{margin-top:1.2rem;padding:1rem;background:var(--bg);border-radius:8px;color:var(--accent);font-size:1.05rem;border:1px solid var(--line)}
.result strong{color:#fff}
.note{color:var(--dim);font-size:.85rem;margin-top:1rem}
/* ad slots */
.ad-slot{margin:1.5rem 0;min-height:90px}
.ad-placeholder{border:1px dashed var(--line);border-radius:10px;background:rgba(30,41,59,.5);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.2rem;text-align:center;cursor:pointer;min-height:90px}
.ad-placeholder:hover{border-color:var(--accent)}
.ad-ph-top{font-size:.7rem;letter-spacing:2px;text-transform:uppercase;color:var(--dim)}
.ad-ph-main{font-weight:700;color:#cbd5e1;margin-top:.3rem}
.ad-ph-sub{font-size:.8rem;color:var(--muted);margin-top:.3rem}
.ad-live{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--panel);display:block;text-decoration:none;position:relative}
.ad-live img{width:100%;display:block}
.ad-live .ad-live-body{padding:1rem}
.ad-live .ad-live-title{color:#fff;font-weight:700}
.ad-live .ad-live-desc{color:var(--muted);font-size:.9rem;margin-top:.3rem}
.ad-badge{position:absolute;top:.5rem;left:.5rem;background:var(--accent);color:var(--bg);font-size:.6rem;font-weight:800;padding:.15rem .5rem;border-radius:4px;letter-spacing:1px}
/* ad network script */
.adsense-slot{min-height:90px}
footer{text-align:center;padding:2rem;background:var(--panel);color:var(--dim);margin-top:3rem;font-size:.85rem}
footer a{color:var(--muted);text-decoration:none}
footer a:hover{color:var(--accent)}
/* xiaohongshu section + floating button */
.xhs-card{display:flex;align-items:center;gap:1.2rem;background:var(--panel);border:1px solid var(--line);border-left:4px solid #ff2442;border-radius:12px;padding:1.4rem 1.6rem;flex-wrap:wrap}
.xhs-icon{min-width:64px;height:64px;flex:none;background:linear-gradient(135deg,#ff2442,#ff6a3d);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:1rem}
.xhs-body{flex:1;min-width:200px}
.xhs-body h2{color:#fff;font-size:1.2rem;margin-bottom:.3rem}
.xhs-body p{color:var(--muted);font-size:.95rem}
.xhs-btns{display:flex;gap:.6rem;flex-wrap:wrap}
.xhs-fab{position:fixed;right:1.1rem;bottom:1.1rem;z-index:60;background:linear-gradient(135deg,#ff2442,#ff5c77);color:#fff;font-weight:800;font-size:.9rem;padding:.7rem 1.1rem;border-radius:30px;text-decoration:none;box-shadow:0 6px 20px rgba(255,36,66,.4)}
.xhs-fab:hover{filter:brightness(1.08)}
.adsterra-slot{min-height:90px}
/* responsive */
@media(max-width:600px){
  .grid{grid-template-columns:1fr}
  .hero h1{font-size:1.7rem}
  .calc .row{grid-template-columns:1fr}
  header{padding:.7rem 1rem}
  nav{gap:.6rem}
}
