/* CERPS 會員系統自訂樣式 - 補強 Tailwind */
:root {
  --cerps-primary: #435495;
  --cerps-primary-dark: #2e3c75;
  --cerps-primary-light: #6c7eb8;
  --cerps-accent: #f59e0b;
  --cerps-ink: #1f2937;
  --cerps-bg: #f8fafc;
}

html { scroll-behavior: smooth; }
body { font-family: "Noto Sans TC", "Microsoft JhengHei", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; color: var(--cerps-ink); background: var(--cerps-bg); }

.cerps-gradient-bg {
  background-image: linear-gradient(135deg, #435495 0%, #6c7eb8 50%, #435495 100%);
}

/* 卡片陰影細節 */
.plan-card { transition: transform .25s ease, box-shadow .25s ease; }
.plan-card:hover { transform: translateY(-4px); box-shadow: 0 18px 40px -10px rgba(67, 84, 149, 0.35); }

/* Loading 動畫 */
.spin {
  width: 22px; height: 22px;
  border: 3px solid rgba(255,255,255,.35);
  border-top-color: #fff;
  border-radius: 50%;
  animation: spin .8s linear infinite;
  display: inline-block;
  vertical-align: middle;
}
@keyframes spin { to { transform: rotate(360deg); } }

/* 表單焦點 */
.cerps-input:focus { outline: none; box-shadow: 0 0 0 3px rgba(67, 84, 149, .25); border-color: var(--cerps-primary); }

/* 表格捲動 */
.table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* 客製按鈕 */
.btn-primary { background: var(--cerps-primary); color: #fff; }
.btn-primary:hover { background: var(--cerps-primary-dark); }
.btn-primary:disabled { opacity: .55; cursor: not-allowed; }

/* 步驟列 */
.step-bar { display:flex; align-items:center; gap:8px; }
.step-bar .step { padding: 6px 14px; border-radius: 999px; background:#e5e7eb; color:#6b7280; font-size: 13px; }
.step-bar .step.active { background: var(--cerps-primary); color:#fff; }
.step-bar .step.done { background: #10b981; color:#fff; }

/* Footer */
footer { background:#1f2937; color:#cbd5e1; }
footer a { color:#cbd5e1; }
footer a:hover { color:#fff; }

@media (max-width: 640px) {
  .plan-card { margin-bottom: 1rem; }
}
