/* Prime Rental Frontend Styles */
.prime-rental { max-width: 980px; margin: 0 auto; }
.prime-rental-form { background:#fff; border:1px solid #e2e2e2; padding:12px; border-radius:4px; }
.prime-rental-form .pr-section { margin-bottom:16px; }
.prime-rental-form label { display:block; font-weight:600; margin-bottom:4px; }
.prime-rental-form input, .prime-rental-form select, .prime-rental-form textarea { width:100%; padding:8px; }
.prime-rental-form .pr-actions { margin-top:12px; }
.prime-rental-form .pr-total { font-size:16px; padding:8px; background:#f7f7f7; border:1px solid #ddd; border-radius:4px; }
.prime-rental-form .pr-guarantee { margin-top:8px; font-style:italic; color:#555; }
/* Hard reset to avoid theme conflicts */
.prime-rental-form ol, .prime-rental-form ul { list-style:none !important; margin:0 !important; padding:0 !important; }
.prime-rental-form * { box-sizing: border-box; }
/* Ensure WordPress theme doesn’t override with extreme selectors */
.prime-rental-form .pr-steps { list-style:none !important; padding-left:0 !important; }

/* Wizard layout */
.pr-wizard { display:block; }
.pr-wizard .pr-steps { list-style:none; display:flex !important; flex-wrap:wrap; gap:8px; margin:0 0 12px; padding:0; }
.pr-wizard .pr-steps li { flex:1 1 auto; min-width:120px; background:#f0f6fb; color:#004a6f; border:1px solid #d4e7f6; border-radius:20px; padding:6px 10px; font-weight:600; text-align:center; }
.pr-wizard .pr-steps li.active { background:#0073aa; color:#fff; border-color:#0073aa; }
.pr-wizard .pr-steps li.done { background:#c7e8ff; color:#045; border-color:#9bd6ff; }

.pr-wizard .pr-cards { display:grid; grid-template-columns: 1fr 320px; gap:16px; align-items:start; }
.pr-wizard .pr-card { background:#fff; border:1px solid #e2e2e2; border-radius:6px; padding:12px; box-shadow: 0 1px 2px rgba(0,0,0,0.04); }
.pr-wizard .pr-card[hidden] { display:none !important; }
.pr-wizard .pr-card h3 { margin-top:0; color:#0073aa; }
.pr-wizard .pr-grid2 { display:grid; grid-template-columns:1fr 1fr; gap:12px; }

.pr-wizard .pr-summary { background:#fff; border:1px solid #e2e2e2; border-radius:6px; padding:12px; position:sticky; top:12px; }
.pr-wizard .pr-summary h3 { margin:0 0 10px; color:#0073aa; }
.pr-wizard .pr-summary-line { display:flex; justify-content:space-between; padding:6px 0; border-bottom:1px dashed #eee; }
.pr-wizard .pr-summary-line:last-child { border-bottom:0; }
.pr-wizard .pr-summary-total { display:flex; justify-content:space-between; align-items:center; font-size:18px; font-weight:700; padding-top:10px; }

.pr-wizard .pr-nav { position:sticky; bottom:0; background:#fff; border-top:1px solid #e2e2e2; padding:10px; display:flex; gap:8px; justify-content:flex-end; }
.pr-wizard .pr-radio-inline { display:inline-flex; align-items:center; gap:6px; margin-right:12px; }

.prime-rental-form .pr-invalid { border-color:#cc0000 !important; box-shadow: 0 0 0 2px rgba(204,0,0,0.08); }

/* Compact inputs to match template feel */
.prime-rental-form input[type="date"],
.prime-rental-form input[type="number"],
.prime-rental-form input[type="text"],
.prime-rental-form input[type="email"],
.prime-rental-form select { border:1px solid #ccd0d4; border-radius:4px; background:#fff; }

@media (max-width: 900px) {
  .pr-wizard .pr-cards { grid-template-columns: 1fr; }
  .pr-wizard .pr-summary { position:relative; top:auto; }
  .pr-wizard .pr-grid2 { grid-template-columns: 1fr; }
}

/* Diagram-style theme: dark cards with inline SUMMARY bar */
.pr-wizard.ui-diagram .pr-card { background:#2f2f2f; color:#fff; border-color:#1f1f1f; }
.pr-wizard.ui-diagram .pr-card h3 { color:#fff; }
.pr-wizard.ui-diagram label { color:#fff; }
.pr-wizard.ui-diagram input,
.pr-wizard.ui-diagram select,
.pr-wizard.ui-diagram textarea { background:#3b3b3b; border-color:#555; color:#fff; }
.pr-wizard.ui-diagram .pr-next { margin-top:8px; }
.pr-wizard.ui-diagram .pr-summary { display:none; }
.pr-wizard.ui-diagram .pr-card-summary { background:#444; color:#fff; border-radius:18px; text-align:center; padding:8px 14px; font-weight:700; margin-top:12px; }
.pr-wizard.ui-diagram .pr-steps li { background:#3a3a3a; color:#e0e0e0; border-color:#4a4a4a; }
.pr-wizard.ui-diagram .pr-steps li.active { background:#5a5a5a; color:#fff; border-color:#5a5a5a; }
.pr-wizard.ui-diagram .pr-steps li.done { background:#505050; color:#d8d8d8; border-color:#505050; }

/* Modern theme inspired by provided HTML */
.pr-wizard.ui-modern { --prime-blue: #0047AB; --light-blue: #EAF3FF; --gray: #666; --border: #E0E0E0; }
.pr-wizard.ui-modern .prime-rental-form { border-radius:15px; box-shadow:0 5px 25px rgba(0,0,0,0.05); overflow:hidden; }
.pr-wizard.ui-modern .pr-steps { background: var(--light-blue); justify-content: center; gap:6px; padding:10px; }
.pr-wizard.ui-modern .pr-steps li { background:#fff; border:1px solid var(--border); border-radius:50px; padding:6px 14px; font-size:13px; color: var(--gray); cursor:pointer; transition:.3s; display:none; pointer-events:none; }
.pr-wizard.ui-modern .pr-steps li.active { background: var(--prime-blue); color:#fff; border-color: var(--prime-blue); }
.pr-wizard.ui-modern .pr-steps li.active { display:inline-block; }

.pr-wizard.ui-modern .pr-summary { padding:20px; border-bottom:1px solid #eee; position:relative; top:auto; border-radius:0; }
.pr-wizard.ui-modern .pr-summary h3 { color: var(--prime-blue); font-size:18px; margin-bottom:15px; }
.pr-wizard.ui-modern .pr-summary-line { border-bottom:1px dashed #f0f0f0; }
.pr-wizard.ui-modern .pr-summary-total strong { color: var(--prime-blue); }

.pr-wizard.ui-modern .pr-cards { grid-template-columns: 1fr; }
.pr-wizard.ui-modern .pr-card { border-radius:12px; }
.pr-wizard.ui-modern .pr-card-summary { display:none; }

.pr-wizard.ui-modern .pr-nav { display:flex; justify-content:space-between; background:#f6f8fa; border-top:1px solid #eee; padding:15px 20px; position:relative; bottom:auto; }
.pr-wizard.ui-modern .pr-nav .button { border:none; padding:10px 25px; border-radius:8px; font-weight:600; cursor:pointer; transition:.3s; }
.pr-wizard.ui-modern .pr-nav .button-primary { background: var(--prime-blue); color:#fff; }
.pr-wizard.ui-modern .pr-nav .button-primary:hover { background:#0060e0; }
.pr-wizard.ui-modern .pr-nav .button:not(.button-primary) { background:#ccc; color:#333; }
.pr-wizard.ui-modern .pr-nav .button:not(.button-primary):hover { background:#bbb; }

@media (max-width:600px){
  .pr-wizard.ui-modern .pr-steps { gap:4px; padding:8px; }
  .pr-wizard.ui-modern .pr-steps li { font-size:12px; padding:5px 10px; }
  .pr-wizard.ui-modern .pr-summary { padding:15px; }
  .pr-wizard.ui-modern .pr-nav { flex-direction:column; gap:10px; }
}

/* Landing Page layout (single form, no steps) */
.pr-landing { display:block; }
.pr-landing .pr-cards { display:grid; grid-template-columns: 1fr 340px; gap:16px; align-items:start; }
.pr-landing .pr-card { background:#fff; border:1px solid #e2e2e2; border-radius:12px; padding:16px; box-shadow: 0 4px 16px rgba(0,0,0,0.05); }
.pr-landing .pr-card h3 { margin-top:0; color:#0047AB; }
.pr-landing .pr-grid2 { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.pr-landing .pr-summary { background:#fff; border:1px solid #e2e2e2; border-radius:12px; padding:16px; position:sticky; top:12px; }
.pr-landing .pr-summary h3 { margin:0 0 12px; color:#0047AB; }
.pr-landing .pr-summary-line { display:flex; justify-content:space-between; padding:6px 0; border-bottom:1px dashed #eee; }
.pr-landing .pr-summary-line:last-child { border-bottom:0; }
.pr-landing .pr-summary-total { display:flex; justify-content:space-between; align-items:center; font-weight:700; font-size:18px; padding-top:10px; }
.pr-landing .pr-actions { display:flex; justify-content:flex-end; gap:10px; }
.pr-landing .pr-send { padding:10px 22px; border-radius:8px; background:#0047AB; color:#fff; border:none; font-weight:600; }
.pr-landing .pr-send:hover { background:#0060e0; }
.pr-landing .pr-banner { margin-bottom:12px; }
.pr-landing ol.pr-steps, .pr-landing .pr-nav { display:none !important; }

/* Responsive */
@media (max-width: 900px) {
  .pr-landing .pr-cards { grid-template-columns: 1fr; }
  .pr-landing .pr-grid2 { grid-template-columns: 1fr; }
  .pr-landing .pr-summary { position:relative; top:auto; }
}