@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600&display=swap');

* { margin:0; padding:0; box-sizing:border-box; font-family:"Poppins",sans-serif; }
body { background: #fdf7ff; color:#444; overflow-x:hidden; }

.bg-shape { position: fixed; z-index:-1; opacity:0.85; pointer-events:none; }
.shape1 { top:-80px; width:100%; }
.shape2 { bottom:-100px; width:100%; }
.shape3 { bottom:-100px; width:100%; }

.navbar { width:100%; padding:15px 30px; display:flex; justify-content:space-between; align-items:center; background:#ffffffcc; backdrop-filter: blur(8px); border-bottom:1px solid #eee; position:sticky; top:0; z-index:10; }
.navbar h2 { color:#5b2188; font-weight:600; }
.nav-links a { margin-left:16px; text-decoration:none; color:#555; font-weight:500; transition:0.25s; }
.nav-links a:hover { color:#7b4ca0; text-shadow:0 0 6px #e8ddff; }

.hero { text-align:center; padding:100px 20px; }
.hero h1 { color:#5b2188; font-size:44px; margin-bottom:12px; }
.hero p { font-size:18px; color:#333; width:70%; margin:0 auto 16px; }

.input { padding:10px 12px; border-radius:8px; border:1px solid #e6e0ef; width:260px; }
.input-inline { padding:8px;border-radius:8px;border:1px solid #ddd;width:60%; }

.btn { background:#9f73d2; color:#fff; padding:10px 18px; border-radius:10px; text-decoration:none; display:inline-block; cursor:pointer; border:none; transition: all 0.25s ease; }
.btn:hover { transform:translateY(-4px); box-shadow:0 8px 18px rgba(159,115,210,0.18); background:#b79be8; }

.dashboard-title { text-align:center; margin-top:40px; color:#222; font-size:36px; font-style:italic; }
.dashboard-grid { width:90%; margin:30px auto 60px; display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:20px; }

.card { background:#fff; border-radius:14px; padding:18px; text-align:center; box-shadow:0 6px 18px rgba(170,140,220,0.12); transition:0.25s; }
.card img { width:72px; margin-bottom:10px; }
.card:hover { transform:translateY(-8px); box-shadow:0 14px 28px rgba(150,120,210,0.14); }

.trip-card { background:#fff; padding:16px; border-radius:12px; box-shadow:0 8px 20px rgba(0,0,0,0.05); margin-bottom:12px; }
.trip-actions .btn { margin-right:8px; }
.small { color:#666; font-size:14px; }

.activity { padding:12px; background:#fff; border-radius:10px; box-shadow:0 6px 14px rgba(0,0,0,0.06); }

footer { background:#fff; padding:20px; text-align:center; border-top:1px solid #eee; }
footer p { color:#777; font-size:14px; }
