/* WaterToursGuide theme.css */
:root{
  --bg:#0f172a;          /* slate-900 */
  --card:#111827;        /* gray-900 */
  --muted:#334155;       /* slate-600 */
  --text:#e5e7eb;        /* gray-200 */
  --accent:#22d3ee;      /* cyan-400 */
  --accent-2:#a78bfa;    /* violet-400 */
  --danger:#ef4444;      /* red-500 */
  --ok:#22c55e;          /* green-500 */
  --radius:14px;
  --shadow:0 10px 25px rgba(0,0,0,.35);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
  background:linear-gradient(180deg, #0b1220, #0f172a);
  color:var(--text);
  line-height:1.5;
}
a{color:var(--accent); text-decoration:none}
a:hover{color:#67e8f9}

header{
  position:sticky; top:0;
  background:rgba(17,24,39,.8); /* gray-900 with blur */
  backdrop-filter: blur(8px);
  border-bottom:1px solid #1f2937;
  z-index:10;
}
nav{
  max-width:1100px; margin:0 auto; padding:14px 20px;
  display:flex; gap:14px; align-items:center;
}
main{max-width:1100px; margin:30px auto; padding:0 20px}
footer{max-width:1100px; margin:40px auto; padding:20px; color:#94a3b8}

h1,h2,h3{line-height:1.2; margin:0 0 12px}
h1{font-size:clamp(28px,4vw,40px); background:linear-gradient(90deg,var(--accent),var(--accent-2));
   -webkit-background-clip:text; background-clip:text; color:transparent;}
h2{font-size:clamp(22px,3vw,28px)}
h3{font-size:clamp(18px,2.2vw,22px)}

.card{
  background:linear-gradient(180deg, #0b1220, #0d1324);
  border:1px solid #1f2937;
  border-radius:var(--radius);
  padding:18px;
  box-shadow:var(--shadow);
  margin:14px 0;
}

.grid{display:grid; gap:14px}
.grid-3{grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));}

.table{width:100%; border-collapse:collapse; background:#0c1323; border-radius:var(--radius); overflow:hidden}
.table th,.table td{padding:12px 14px; border-bottom:1px solid #1f2937; text-align:left}
.table thead{background:#0f1b33; color:#cbd5e1}

.input{display:flex; gap:10px; margin:10px 0}
input,select,button,textarea{
  background:#0b1324; color:var(--text);
  border:1px solid #1f2937; border-radius:10px; padding:10px 12px;
}
input::placeholder{color:#64748b}
button{cursor:pointer}
button:hover{border-color:#334155}

.badge{display:inline-block; padding:4px 10px; border-radius:999px; background:#1f2937; color:#e2e8f0; font-size:12px}
.badge.pending_owner{background:#1f2937}
.badge.approved{background:var(--ok); color:#04210f}
.badge.cancelled{background:var(--danger); color:#2b0a0a}

.hidden{display:none !important}
.small{font-size:12px; color:#94a3b8}
