/* ===== Waytera Base Styles ===== */
:root{
  --cream:#FFF9E5;
  --green:#2E7D32;          /* Waytera Green */
  --green-2:#43A047;        /* Pathway Green (hover) */
  --blue:#4FC3F7;           /* Ocean Blue (focus) */
  --orange:#FFB300;         /* Pin Orange (accent) */
  --earth:#1B5E20;          /* Earth Green (deep) */
  --ink:#1a1a1a;
  --muted:#6b7280;
  --surface:#ffffff;
  --radius:18px;
  --shadow:0 8px 25px rgba(0,0,0,.08);
  --ring:0 0 0 4px rgba(79,195,247,.25);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(1200px 800px at 80% -10%, #ffffff 0%, transparent 60%),
    radial-gradient(1200px 900px at -10% 110%, #FFF2C7 0%, transparent 55%),
    linear-gradient(180deg, #FFFDF3 0%, var(--cream) 100%);
  font-family:"Inter", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  line-height:1.5;
}

/* Layout */
.wrapper{
  max-width:1040px;
  margin-inline:auto;
  padding:28px 20px 64px;
}
.header{
  display:flex; align-items:center; gap:14px;
}
.header img.logo{
  width:32px; height:32px; object-fit:contain;
}
.header .brand{font-family:"Poppins", system-ui, sans-serif; font-weight:700; letter-spacing:.3px}

/* Card */
.card{
  background:var(--surface);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:28px;
}

/* Typography */
h1,h2,h3{font-family:"Poppins", system-ui, sans-serif; margin:0 0 12px}
h1{font-size:28px}
h2{font-size:20px}
.section-title{margin-bottom:8px}
.subtle{color:var(--muted); font-size:.95rem}

/* Grid helpers */
.grid{display:grid; gap:22px}
.grid-2{grid-template-columns:1fr; }
@media (min-width:900px){ .grid-2{grid-template-columns:1fr 1fr;} }

/* Form */
.form{display:grid; gap:16px}
.form-row{display:grid; gap:8px}
label{font-weight:600; font-size:.95rem}
.input{
  appearance:none; width:100%;
  padding:12px 14px; border:1px solid #E5E7EB; border-radius:14px;
  background:#fff; font:inherit;
  transition:border-color .2s, box-shadow .2s, transform .02s;
}
.input:focus{outline:none; border-color:var(--green); box-shadow:var(--ring)}
.helper{color:var(--muted); font-size:.9rem}

/* Buttons & Links */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:12px 16px; border-radius:14px; border:1px solid transparent;
  font-weight:700; cursor:pointer; text-decoration:none; transition:transform .02s, background .2s, border-color .2s, color .2s, box-shadow .2s;
}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--green); color:#fff}
.btn-primary:hover{background:var(--green-2)}
.btn-ghost{background:transparent; border-color:#E5E7EB; color:var(--earth)}
.btn-ghost:hover{border-color:#d1d5db; background:#fafafa}
.btn-accent{background:var(--orange); color:#1f1f1f}
.inline-link{color:var(--green-2); text-decoration:none; font-weight:600}
.inline-link:hover{text-decoration:underline}

/* Lists / table-ish */
.list{display:grid; gap:10px; margin:0; padding:0; list-style:none}
.list .row{
  display:flex; justify-content:space-between; align-items:center;
  padding:12px 14px; border:1px solid #eef0f2; border-radius:12px; background:#fff;
}
.badge{
  background:#F0FDF4; color:var(--earth); border:1px solid #DCFCE7;
  padding:4px 10px; border-radius:999px; font-size:.85rem; font-weight:600;
}

/* Footer tiny */
.footer-note{margin-top:20px; color:var(--muted); font-size:.85rem; text-align:center}

/* Center helper (for login page) */
.centered{
  min-height:100%;
  display:grid; place-items:center;
  padding:40px 16px;
}

