/* DB Pension Calculator — Form Styles */
.dbpc-wrapper{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;max-width:700px;margin:0 auto;color:#1a1a2e;font-size:15px;line-height:1.5;background:transparent!important;background-color:transparent!important}
.dbpc-header{text-align:center;padding:24px 24px 20px;background:transparent!important;background-color:transparent!important}
.dbpc-title{font-size:24px;font-weight:700;margin:0 0 8px;color:#1e3a6f}
.dbpc-subtitle{font-size:14px;color:#64748b;margin:0}
.dbpc-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:28px;box-shadow:0 2px 16px rgba(0,0,0,.06)}
.dbpc-section-label{font-weight:700;font-size:13px;color:#1e3a6f;text-transform:uppercase;letter-spacing:.6px;margin-bottom:14px}
.dbpc-divider{border:none;border-top:1px solid #f1f5f9;margin:22px 0}
.dbpc-req{color:#ef4444;font-weight:700}
.dbpc-label{display:block;font-weight:600;font-size:13.5px;color:#374151;margin-bottom:7px}
.dbpc-hint{font-weight:400;color:#9ca3af;font-size:12px}
.dbpc-field-note{font-size:11.5px;color:#94a3b8;margin:4px 0 0}
.dbpc-row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
@media(max-width:540px){.dbpc-row-2{grid-template-columns:1fr}}
.dbpc-input{width:100%;padding:11px 14px;border:1.5px solid #d1d5db;border-radius:10px;font-size:14.5px;color:#111827;background:#fafafa;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;-moz-appearance:textfield}
.dbpc-input::-webkit-inner-spin-button,.dbpc-input::-webkit-outer-spin-button{-webkit-appearance:none}
.dbpc-input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px rgba(79,70,229,.1);background:#fff}
.dbpc-input-prefix{display:flex;align-items:stretch;border:1.5px solid #d1d5db;border-radius:10px;background:#fafafa;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.dbpc-input-prefix:focus-within{border-color:#4f46e5;box-shadow:0 0 0 3px rgba(79,70,229,.1);background:#fff}
.dbpc-input-prefix>span{padding:0 12px;color:#6b7280;font-weight:600;font-size:14px;border-right:1px solid #e5e7eb;background:#f3f4f6;display:flex;align-items:center;white-space:nowrap}
.dbpc-input-prefix .dbpc-input{border:none;border-radius:0;background:transparent}
.dbpc-input-prefix .dbpc-input:focus{box-shadow:none}
.dbpc-field-group{margin-bottom:0}
.dbpc-toggle-row{display:flex;gap:10px}
.dbpc-btn-primary{display:flex!important;align-items:center;justify-content:center;gap:8px;width:100%;padding:15px;margin-top:24px;background:linear-gradient(135deg,#4f46e5,#1e3a6f)!important;color:#fff!important;border:none!important;border-color:transparent!important;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;transition:opacity .2s,transform .15s;letter-spacing:.3px;text-align:center!important}
.dbpc-btn-primary:hover{opacity:.9;transform:translateY(-1px);color:#fff!important}
.dbpc-btn-primary:active{transform:translateY(0);color:#fff!important}
.dbpc-btn-primary:disabled{opacity:.65;cursor:not-allowed;transform:none;color:#fff!important}
.dbpc-toggle{flex:1;padding:10px;border:2px solid #e5e7eb!important;border-radius:10px;background:#f9fafb!important;color:#6b7280!important;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}
.dbpc-toggle:hover{border-color:#4f46e5!important;color:#4f46e5!important}
.dbpc-toggle.active{border:2px solid #4f46e5!important;background:#eef2ff!important;color:#4338ca!important}
.dbpc-privacy-note{text-align:center;font-size:12px;color:#94a3b8;margin:10px 0 0}
