/* Unified site stylesheet */
:root{
  --primary:#007BFF;
  --muted:#9ca1aa;
  --bg:#ffffff;
  --card:#f0f8ff;
  --radius:12px;
  --max-width:1100px;
  --gap:1rem;
  --page-padding:16px;
  --shadow: 0 6px 18px rgba(15,23,42,0.08);
  --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, "Roboto Mono", "Segoe UI Mono", monospace;
  --sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  --white:#ffffff;
  --dark-blue: #0056b3;
  --text-dark: #2c3e50;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:var(--sans);
  color:#0f172a;
  background:var(--primary);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.45;
  padding:0;
}
.container{max-width:var(--max-width);margin:0 auto;padding:var(--page-padding);}

/* Navbar */
.site-nav{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 16px;
  background: var(--primary);
  border-bottom:1px solid rgba(15,23,42,0.2);
  position:sticky;
  top:0;
  z-index:90;
}
.site-nav .brand{display:flex;align-items:center;gap:12px;font-weight:700}
.site-nav .brand img{height:44px;width:auto;border-radius:8px;}
.site-nav .nav-links{margin-left:auto;display:flex;gap:12px;align-items:center}
.site-nav a{color:var(--white);text-decoration:none;padding:8px 12px;border-radius:8px;font-weight:600}
.site-nav a.secondary{background:transparent;color:var(--muted);font-weight:500}

/* Footer */
.site-footer{
  margin-top:40px;padding:28px 16px;background:#f8fafc;border-top:1px solid rgba(15,23,42,0.04);
  color:var(--muted);
}
.site-footer .container{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}

/* Cards, forms, buttons */
.card{background:var(--card);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
.btn{display:inline-block;padding:10px 14px;border-radius:10px;font-weight:600;text-decoration:none;border:none;cursor:pointer}
.btn-primary{background:var(--primary);color:#fff}
.btn-ghost{background:transparent;border:1px solid rgba(15,23,42,0.06);color:var(--muted)}

.logout-button {
            background-color: white;
            color: var(--primary-blue);
            border: none;
            padding: 0.5rem 1rem;
            font-weight: bold;
            border-radius: 6px;
            cursor: pointer;
            transition: all 0.3s ease;
        }
.logout-button:hover {
            background-color: #f0f0f0;
            transform: translateY(-1px);
        }

/* Utility */
.grid{display:grid;gap:var(--gap)}
.grid.cols-3{grid-template-columns:repeat(3,1fr)}
.grid.cols-2{grid-template-columns:repeat(2,1fr)}
.header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.lead{color:var(--muted);margin-top:6px}

/* Forms */
input[type="text"],input[type="email"],input[type="password"],textarea,select{
  width:100%;padding:10px;border-radius:8px;border:1px solid rgba(15,23,42,0.06);background:#fff;
  font-size:14px;
}
label{display:block;font-weight:600;margin-bottom:6px;font-size:13px;color:#0f172a}

/* Tables */
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:10px;border-bottom:1px solid rgba(15,23,42,0.04);text-align:left}

/* Responsive */
@media (max-width:900px){
  .grid.cols-3{grid-template-columns:1fr}
  .site-nav .nav-links{display:none}
  .site-nav{padding:10px}
  .brand img{height:36px}
}

.consult-btn {
    flex:1;
    min-width:150px;
    background: var(--primary-blue);
    color:white;
    border:none;
    padding:0.75rem 1rem;
    border-radius:10px;
    font-size:1rem;
    font-weight:bold;
    cursor:pointer;
    transition:all 0.3s ease;
}
.consult-btn:hover {
    background: var(--dark-blue);
    transform: translateY(-2px);
}
#consult-popup {
    display:none;
    position:fixed;
    top:50%; left:50%;
    transform:translate(-50%, -50%);
    background:white;
    padding:2rem;
    border-radius:12px;
    box-shadow:0 6px 20px rgba(0,0,0,0.25);
    text-align:center;
    z-index:2000;
}
#consult-popup h3 {
    margin:0 0 1rem;
    color:var(--primary-blue);
}
#consult-popup button {
    background:var(--primary-blue);
    color:white;
    border:none;
    padding:0.5rem 1rem;
    border-radius:8px;
    cursor:pointer;
}
