:root {
  --brand: #276973;
  --bg: #0f1115;
  --card: #161a22;
  --text: #e7eaf0;
  --muted: #9aa4b2;
  --border: #232837;
}
.sentio-parking * { box-sizing: border-box; }
.sentio-parking { --brand: var(--brand); color: var(--text); }
.sentio-parking .sp-container { max-width: 980px; margin: 1rem auto; padding: 0 1rem; }
.sentio-parking .sp-header h2 { margin: 0 0 .25rem; font-size: 1.6rem; }
.sentio-parking .sp-header .sp-muted { color: var(--muted); margin: 0 0 1rem; }
.sentio-parking .sp-card {
  background: var(--card); border: 1px solid var(--border); border-radius: 16px;
  padding: 1rem; box-shadow: 0 10px 30px rgba(0,0,0,.25);
}
.sentio-parking label { display:block; margin:.5rem 0 .25rem; color: var(--muted); }
.sentio-parking input, .sentio-parking select {
  width:100%; padding:.8rem .9rem; border-radius:10px; border:1px solid var(--border);
  background:#0c0f15; color:var(--text); outline:none;
}
.sentio-parking input:focus, .sentio-parking select:focus { border-color: var(--brand); }
.sentio-parking button {
  display:inline-block; margin-top:1rem; background: var(--brand); color:#fff;
  border:none; padding:.8rem 1.1rem; border-radius:10px; font-weight:600; cursor:pointer;
}
.sentio-parking .sp-linkline { margin-top: 1rem; color: var(--muted); }
.sentio-parking .sp-grid { display:grid; gap:1rem; grid-template-columns:repeat(auto-fit, minmax(220px,1fr)); margin-top: 1rem; }
.sentio-parking h3 { margin:0 0 .75rem; font-size:1.1rem; }
.sentio-parking .sp-list { list-style:none; padding:0; margin:0; display:grid; gap:.5rem; }
.sentio-parking .sp-list li {
  display:flex; justify-content:space-between; align-items:center; padding:.6rem .75rem;
  border-radius:10px; background:#0c0f15; border:1px solid var(--border);
}
.sentio-parking .sp-reg { font-weight:700; letter-spacing:.5px; }
.sentio-parking .sp-age { font-size:.85rem; color: var(--muted); }

/* --- UK number plate styled input --- */
.sentio-parking .sp-plate {
  position: relative;
  display: block;
}
.sentio-parking .sp-plate-input {
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: #ffd300; /* UK rear plate yellow */
  color: #111;
  border: 2px solid #111;
  border-radius: 8px;
  padding-left: 60px;
  padding-right: 14px;
  height: 52px;
  line-height: 52px;
  font-size: 22px;
}
.sentio-parking .sp-plate-input::placeholder {
  color: rgba(0,0,0,0.5);
}
.sentio-parking .sp-plate::before {
  content: "UK";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 48px;
  background: #003399; /* blue band */
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
  border: 2px solid #111;
  border-right: none;
  box-sizing: border-box;
}
/* Focus state */
.sentio-parking .sp-plate-input:focus {
  outline: none;
  box-shadow: 0 0 0 2px var(--brand);
}

/* Make other inputs consistent height */
.sentio-parking input, .sentio-parking select {
  min-height: 44px;
}


/* Elementor-friendly theme: inherit site styles and Elementor variables */
.theme-elementor {
  --text: var(--e-global-color-text, #2c2c2c);
  --muted: rgba(0,0,0,.55);
  --card: var(--e-global-color-background, #ffffff);
  --bg: transparent;
  --border: rgba(0,0,0,.08);
}
.theme-elementor .sp-container { margin: 0; padding: 0; }
.theme-elementor .sp-header h2 { color: var(--text); }
.theme-elementor .sp-card { background: var(--card); border-radius: var(--e-global-border-radius, 12px); box-shadow: var(--e-global-shadow, 0 1px 8px rgba(0,0,0,.06)); }
.theme-elementor input, .theme-elementor select {
  background: #fff; color: #111; border: 1px solid rgba(0,0,0,.15);
}
.theme-elementor .sp-plate-input { border-color: rgba(0,0,0,.6); }
.theme-elementor button.elementor-button {
  background: var(--e-global-color-primary, var(--brand));
  border-radius: var(--e-global-border-radius, 8px);
}
.theme-elementor .sp-grid { margin-top: 1rem; }
.theme-elementor .sp-list li { background: #fff; border-color: rgba(0,0,0,.08); }
