/* =========================================================
   IDPQ Light Mint Green Theme
   ---------------------------------------------------------
   Background: Soft Mint #E8F5E9
   Text: Dark Charcoal #1E2930
   Accent: Teal #0F5C5A (links/headings)
   CTA Buttons: Lime #C8F560
   ========================================================= */

:root{
  --bg: #E8F5E9;       /* soft mint background */
  --surface: #FFFFFF;  /* panels/cards */
  --text: #1E2930;     /* dark charcoal */
  --muted: #6B7B88;
  --accent: #0F5C5A;   /* teal */
  --highlight: #C8F560;/* lime */
  --border: #D0E4D4;
}

/* Global */
html, body{
  background: var(--bg);
  color: var(--text);
  font-family: "Poppins","Segoe UI","Helvetica Neue",Arial,sans-serif;
  line-height: 1.65;
}
a{ color: var(--accent); text-decoration: none; }
a:hover{ color: var(--highlight); text-decoration: underline; }
::selection{ background: rgba(200,245,96,.35); color:#0B2B2A; }

/* Navbar */
.navbar{
  background: var(--surface);
  border: 0;
  border-bottom: 1px solid var(--border);
  box-shadow: 0 2px 10px rgba(30,41,48,.05);
}
.navbar .navbar-brand,
.navbar-nav>li>a{ color: var(--text) !important; }
.navbar .navbar-brand:hover,
.navbar-nav>li>a:hover{ color: var(--accent) !important; }

/* Sidebar / Panels */
.panel, .sidebar{
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  box-shadow: 0 6px 16px rgba(30,41,48,.06);
}
.panel-heading{
  background: var(--surface);
  border-bottom: 1px solid var(--border);
  color: var(--accent);
  font-weight: 600;
}

/* Tables */
.table{ background: var(--surface); }
.table>thead>tr>th{
  background: #F2F7F4;
  border-bottom: 2px solid var(--border);
  color: var(--accent);
}
.table>tbody>tr>td{ border-top: 1px solid var(--border); }
.table>tbody>tr:hover{ background:#F9FCFA; }

/* Forms */
.form-control{
  background: #FFFFFF;
  border: 1px solid var(--border);
  color: var(--text);
  border-radius: 10px;
}
.form-control:focus{
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(15,92,90,.15);
}
label{ color: var(--muted); font-weight:500; }

/* Buttons */
.btn{
  border-radius: 18px;
  padding: 8px 18px;
  border: none;
  transition: transform .06s ease, box-shadow .2s ease, background-color .2s ease;
}
.btn:active{ transform: translateY(1px); }

.btn-primary{
  background: var(--highlight);
  color: #0B2B2A;
  box-shadow: 0 8px 18px rgba(200,245,96,.35);
}
.btn-primary:hover{ background:#BDE954; }

.btn-default{
  background: var(--surface);
  color: var(--text);
  border: 1px solid var(--border);
}
.btn-default:hover{ border-color:#BCD5C6; }

/* Footer */
footer, .site-footer{
  background: var(--surface);
  color: var(--muted);
  border-top: 1px solid var(--border);
  padding: 18px 0;
}
footer a{ color: var(--accent); }

/* Poster frame */
.poster-frame{
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 16px;
  box-shadow: 0 12px 28px rgba(30,41,48,.08);
  padding: 14px;
  margin: 20px auto;
  max-width: 840px;
}
.poster-frame .caption{
  color: var(--muted);
  font-size: 13px;
  text-align: center;
  margin-top: 8px;
}
