/* === 預售試算外掛樣式 === */
.psc-wrap { max-width: 900px; margin: 0 auto; font-family: "Noto Sans TC", sans-serif; }
.psc-card { background: #f9f9f9; border: 1px solid #ddd; border-radius: 8px; padding: 20px; margin: 20px 0; }
.psc-field { margin: 12px 0; display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.psc-field label { min-width: 160px; font-weight: 600; color: #333; }
.psc-field input[type="number"],
.psc-field input[type="text"],
.psc-field input[type="tel"],
.psc-field input[type="email"],
.psc-field select { padding: 8px 10px; border: 1px solid #bbb; border-radius: 5px; font-size: 15px; min-width: 160px; }
.psc-field input[type="radio"] { width: auto; min-width: unset; }
.psc-btn { padding: 10px 24px; border: none; border-radius: 6px; font-size: 15px; cursor: pointer; margin: 6px 4px; }
.psc-btn-primary { background: #2563eb; color: #fff; }
.psc-btn-primary:hover { background: #1d4ed8; }
.psc-btn-secondary { background: #6b7280; color: #fff; }
.psc-btn-secondary:hover { background: #4b5563; }
.psc-btn-danger { background: #ef4444; color: #fff; font-size:13px; padding: 5px 12px; }
.psc-disclaimer { color: #888; font-size: 13px; margin: 4px 0 16px; }
.psc-msg { padding: 10px; border-radius: 5px; font-size:14px; }
.psc-msg.success { background:#dcfce7; color:#166534; }
.psc-msg.error   { background:#fee2e2; color:#991b1b; }
.psc-config-display { background:#e0f2fe; border:1px solid #7dd3fc; border-radius:5px; padding:8px 14px; font-size:13px; color:#0369a1; }
.psc-other-block { border: 1px solid #ccc; border-radius: 8px; padding: 16px; margin-bottom: 16px; background:#fff; position:relative; }
.psc-other-block h4 { margin: 0 0 12px; color:#374151; }
.psc-remove-btn { position:absolute; top:12px; right:12px; }
.psc-unit-toggle { display:flex; gap:0; }
.psc-unit-toggle button { padding:6px 14px; border:1px solid #bbb; background:#fff; cursor:pointer; font-size:13px; }
.psc-unit-toggle button.active { background:#2563eb; color:#fff; border-color:#2563eb; }
.psc-unit-toggle button:first-child { border-radius:5px 0 0 5px; }
.psc-unit-toggle button:last-child  { border-radius:0 5px 5px 0; border-left:none; }

/* 結果表格 */
.psc-result-table { width:100%; border-collapse:collapse; margin:16px 0; font-size:14px; }
.psc-result-table th { background:#1e3a5f; color:#fff; padding:10px; text-align:center; }
.psc-result-table td { padding:9px 12px; border-bottom:1px solid #e5e7eb; text-align:center; }
.psc-result-table tr:nth-child(even) td { background:#f3f4f6; }
.psc-result-table .highlight-row td { background:#fef9c3 !important; font-weight:700; }
.psc-result-table .dark-row td { background:#1e3a5f !important; color:#fff; font-weight:700; }
.psc-winner { background:#16a34a; color:#fff; border-radius:4px; padding:2px 8px; font-size:12px; margin-left:6px; }
.psc-result-section-title { font-weight:700; color:#1e3a5f; margin:20px 0 6px; font-size:15px; }
.psc-result-actions { margin: 10px 0; }
.psc-lead-form h3 { margin-top:0; }

/* 房貸結果 */
.psc-summary-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.psc-summary-item { text-align:center; }
.psc-summary-item .label { font-size:13px; color:#6b7280; }
.psc-summary-item .value { font-size:22px; font-weight:700; color:#1e3a5f; }
.psc-detail-table { width:100%; border-collapse:collapse; font-size:13px; margin-top:12px; }
.psc-detail-table th { background:#374151; color:#fff; padding:7px; }
.psc-detail-table td { padding:6px; border-bottom:1px solid #e5e7eb; text-align:right; }
.psc-detail-table td:first-child { text-align:center; }
.psc-grace-row td { background:#fef3c7; }
