/* cap-medication-all.css — P6合并版（p0+p1+p2+p3+p6新增） */

/* === P0: 基础 === */
.cap-med-container { max-width: 100%; margin: 0; padding: 8px; }
.cap-med-disclaimer { background: #fff3cd; color: #856404; border: 1px solid #ffeaa7; border-radius: 8px; padding: 8px 12px; margin-bottom: 12px; font-size: 13px; line-height: 1.5; }

/* P6: Tab栏 + 滚动指示器 */
.cap-med-tabs-wrap { position: relative; margin-bottom: 12px; }
.cap-med-tabs { display: flex; gap: 4px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: thin; -webkit-overflow-scrolling: touch; }
.cap-med-tabs::-webkit-scrollbar { height: 3px; }
.cap-med-tabs::-webkit-scrollbar-thumb { background: #ccc; border-radius: 2px; }
.cap-med-tabs .h-tab { white-space: nowrap; padding: 6px 14px; border: none; background: #f0f0f0; border-radius: 20px; cursor: pointer; font-size: 14px; color: #666; transition: all 0.2s; flex-shrink: 0; }
.cap-med-tabs .h-tab.active { background: #6c5ce7; color: #fff; }
.cap-med-tabs .h-tab:hover { background: #dfe6e9; }
.cap-med-tabs .h-tab.active:hover { background: #5b4cdb; }
.cap-med-tabs-scroll-left, .cap-med-tabs-scroll-right { position: absolute; top: 0; bottom: 4px; width: 24px; display: flex; align-items: center; justify-content: center; pointer-events: none; opacity: 0; transition: opacity 0.2s; }
.cap-med-tabs-scroll-left { left: 0; background: linear-gradient(to right, #fff 40%, transparent); }
.cap-med-tabs-scroll-right { right: 0; background: linear-gradient(to left, #fff 40%, transparent); }
.cap-med-tabs-wrap.scrolling .cap-med-tabs-scroll-left { opacity: 1; }
.cap-med-tabs-wrap.scrolling .cap-med-tabs-scroll-right { opacity: 1; }

/* 统计卡片 */
.cap-med-stats-row { display: flex; gap: 8px; margin-bottom: 16px; }
.cap-med-stat-box { flex: 1; text-align: center; padding: 16px 8px; border-radius: 12px; }
.cap-med-stat-num { font-size: 28px; font-weight: 700; }
.cap-med-stat-label { font-size: 12px; margin-top: 4px; opacity: 0.8; }
.cap-med-stat-pending { background: #e3f2fd; color: #1976d2; }
.cap-med-stat-taken { background: #e8f5e9; color: #2e7d32; }
.cap-med-stat-missed { background: #ffebee; color: #c62828; }
.cap-med-stat-total { background: #f3e5f5; color: #7b1fa2; }

/* 提醒框 */
.cap-med-alert { border-radius: 10px; padding: 12px; margin-bottom: 12px; }
.cap-med-alert-danger { background: #ffebee; border-left: 4px solid #c62828; }
.cap-med-alert-warning { background: #fff8e1; border-left: 4px solid #f57f17; }
.cap-med-alert-title { font-weight: 600; margin-bottom: 6px; font-size: 14px; }
.cap-med-alert-item { font-size: 13px; padding: 2px 0; color: #555; }

/* Section */
.cap-med-section { background: #fff; border-radius: 12px; padding: 16px; margin-bottom: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); }
.cap-med-section-title { font-size: 16px; font-weight: 600; margin-bottom: 12px; color: #333; }

/* 今日用药卡片 */
.cap-med-today-card { display: flex; align-items: center; justify-content: space-between; padding: 12px; border-radius: 10px; margin-bottom: 8px; border: 1px solid #eee; }
.cap-med-today-taken { background: #e8f5e9; border-color: #c8e6c9; }
.cap-med-today-missed { background: #ffebee; border-color: #ffcdd2; }
.cap-med-today-pending { background: #f5f5f5; border-color: #e0e0e0; }
.cap-med-today-name { font-weight: 600; font-size: 15px; }
.cap-med-today-dose { font-size: 13px; color: #888; font-weight: 400; }
.cap-med-today-time { font-size: 13px; color: #666; margin-top: 2px; }
.cap-med-checkin-btn { padding: 6px 18px; border: none; border-radius: 20px; background: #6c5ce7; color: #fff; cursor: pointer; font-size: 14px; transition: all 0.2s; }
.cap-med-checkin-btn:hover { background: #5b4cdb; }
.cap-med-checkin-done { background: #e0e0e0; color: #666; }

/* 依从性 */
.cap-med-adh-row { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.cap-med-adh-name { width: 80px; font-size: 13px; color: #555; flex-shrink: 0; }
.cap-med-adh-bar-wrap { flex: 1; height: 20px; background: #f0f0f0; border-radius: 10px; overflow: hidden; }
.cap-med-adh-bar { height: 100%; border-radius: 10px; transition: width 0.5s; }
.cap-med-adh-green { background: #4caf50; }
.cap-med-adh-yellow { background: #ff9800; }
.cap-med-adh-red { background: #f44336; }
.cap-med-adh-pct { width: 40px; text-align: right; font-size: 13px; font-weight: 600; }

/* 用药计划卡片 */
.cap-med-plan-card { background: #fff; border-radius: 12px; padding: 16px; margin-bottom: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); }
.cap-med-plan-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.cap-med-plan-name { font-size: 16px; font-weight: 600; }
.cap-med-plan-dose { font-size: 13px; color: #888; font-weight: 400; }
.cap-med-plan-badge { padding: 2px 10px; border-radius: 12px; font-size: 12px; }
.cap-med-badge-green { background: #e8f5e9; color: #2e7d32; }
.cap-med-badge-gray { background: #f0f0f0; color: #999; }
.cap-med-plan-info { display: flex; flex-direction: column; gap: 4px; font-size: 13px; color: #666; margin-bottom: 8px; }
.cap-med-plan-inv { font-size: 13px; color: #666; margin-bottom: 8px; }
.cap-med-inv-low { color: #e65100; font-weight: 600; }
.cap-med-plan-actions { display: flex; gap: 8px; }
.cap-med-btn-sm { padding: 4px 12px; border: 1px solid #ddd; border-radius: 16px; background: #fff; cursor: pointer; font-size: 13px; color: #555; transition: all 0.2s; }
.cap-med-btn-sm:hover { background: #f5f5f5; }
.cap-med-btn-danger { color: #c62828; border-color: #ffcdd2; }
.cap-med-btn-danger:hover { background: #ffebee; }

/* 添加按钮 */
.cap-med-add-btn { width: 100%; padding: 12px; border: 2px dashed #6c5ce7; border-radius: 12px; background: transparent; color: #6c5ce7; cursor: pointer; font-size: 15px; font-weight: 600; margin-bottom: 12px; transition: all 0.2s; }
.cap-med-add-btn:hover { background: #f3f0ff; }

/* 表单 */
.cap-med-form { background: #fff; border-radius: 12px; padding: 16px; margin-bottom: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); }
.cap-med-form-title { font-size: 16px; font-weight: 600; margin-bottom: 12px; }
.cap-med-form-row { margin-bottom: 10px; }
.cap-med-form-row label { display: block; font-size: 13px; color: #666; margin-bottom: 4px; }
.cap-med-form-row input { width: 100%; padding: 8px 12px; border: 1px solid #ddd; border-radius: 8px; font-size: 14px; box-sizing: border-box; }
.cap-med-form-row input:focus { border-color: #6c5ce7; outline: none; }
.cap-med-form-actions { display: flex; gap: 8px; margin-top: 12px; }
.cap-med-btn-primary { padding: 8px 20px; border: none; border-radius: 8px; background: #6c5ce7; color: #fff; cursor: pointer; font-size: 14px; transition: all 0.2s; }
.cap-med-btn-primary:hover { background: #5b4cdb; }
.cap-med-btn-cancel { padding: 8px 20px; border: 1px solid #ddd; border-radius: 8px; background: #fff; color: #666; cursor: pointer; font-size: 14px; }

/* 相互作用 */
.cap-med-int-card { border-radius: 10px; padding: 12px; margin-bottom: 8px; }
.cap-med-int-danger { background: #ffebee; border-left: 4px solid #c62828; }
.cap-med-int-warning { background: #fff8e1; border-left: 4px solid #f57f17; }
.cap-med-int-caution { background: #e3f2fd; border-left: 4px solid #1976d2; }
.cap-med-int-pair { font-weight: 600; font-size: 15px; margin-bottom: 4px; }
.cap-med-int-desc { font-size: 13px; color: #555; }

/* 文本框 */
.cap-med-textarea { width: 100%; min-height: 80px; padding: 10px; border: 1px solid #ddd; border-radius: 8px; font-size: 14px; box-sizing: border-box; margin-bottom: 8px; resize: vertical; }
.cap-med-textarea:focus { border-color: #6c5ce7; outline: none; }

/* 历史 */
.cap-med-history-day { background: #fff; border-radius: 10px; padding: 12px; margin-bottom: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.04); }
.cap-med-history-date { font-weight: 600; font-size: 14px; margin-bottom: 6px; color: #333; }
.cap-med-history-item { display: flex; gap: 12px; padding: 4px 0; font-size: 13px; color: #666; }
.cap-med-history-name { font-weight: 500; }
.cap-med-history-time { color: #888; }
.cap-med-history-source { font-size: 11px; background: #f0f0f0; padding: 1px 6px; border-radius: 8px; }

/* 设置 */
.cap-med-info-row { padding: 6px 0; font-size: 14px; color: #555; line-height: 1.5; }
.cap-med-info-row strong { color: #333; }

/* 场景识别 */
.cap-med-scenario-card { background: #f3f0ff; border-radius: 10px; padding: 12px; margin-top: 8px; }
.cap-med-scenario-type { font-weight: 600; font-size: 15px; margin-bottom: 4px; color: #6c5ce7; }
.cap-med-scenario-symptoms { font-size: 13px; color: #e65100; margin-bottom: 4px; }
.cap-med-scenario-advice { font-size: 14px; color: #333; line-height: 1.5; }

/* 空状态 */
.cap-med-empty { text-align: center; padding: 24px; color: #999; font-size: 14px; }
.cap-med-loading { text-align: center; padding: 24px; color: #999; }

/* === P1 === */
.cap-med-voice-bar { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.cap-med-voice-btn { padding: 6px 16px; border: 2px solid #6c5ce7; border-radius: 20px; background: #fff; color: #6c5ce7; cursor: pointer; font-size: 14px; font-weight: 600; transition: all 0.2s; white-space: nowrap; }
.cap-med-voice-btn:hover { background: #f3f0ff; }
.cap-med-voice-btn.listening { background: #ff4757; color: #fff; border-color: #ff4757; animation: pulse 1.5s infinite; }
@keyframes pulse { 0%,100% { opacity: 1; } 50% { opacity: 0.7; } }
.cap-med-voice-hint { font-size: 12px; color: #999; }
.cap-med-plans-header { display: flex; gap: 8px; margin-bottom: 12px; }
.cap-med-plans-header .cap-med-add-btn { flex: 1; }
.cap-med-ocr-btn { border-color: #00b894 !important; color: #00b894 !important; flex: 0 0 auto; }
.cap-med-inv-edit { margin-left: 8px !important; font-size: 12px !important; padding: 2px 8px !important; }
.cap-med-refill-btn { display: block; width: 100%; padding: 8px; margin-top: 8px; border: 1px dashed #e65100; border-radius: 8px; background: #fff3e0; color: #e65100; cursor: pointer; font-size: 14px; font-weight: 600; transition: all 0.2s; }
.cap-med-refill-btn:hover { background: #ffe0b2; }
.cap-med-drug-cats { display: flex; flex-direction: column; gap: 8px; }
.cap-med-drug-cat { background: #f8f9fa; border-radius: 8px; padding: 10px 12px; border-left: 3px solid #6c5ce7; }
.cap-med-drug-cat-name { font-weight: 600; font-size: 14px; color: #6c5ce7; margin-bottom: 4px; }
.cap-med-drug-cat-list { font-size: 13px; color: #555; line-height: 1.5; }
.cap-med-cal-legend { display: flex; gap: 12px; margin-bottom: 12px; flex-wrap: wrap; }
.cap-med-cal-leg { font-size: 12px; padding: 2px 8px; border-radius: 10px; }
.cap-med-cal-complete { background: #e8f5e9; color: #2e7d32; }
.cap-med-cal-partial { background: #fff8e1; color: #f57f17; }
.cap-med-cal-missed { background: #ffebee; color: #c62828; }
.cap-med-cal-none { background: #f5f5f5; color: #999; }
.cap-med-cal-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.cap-med-cal-weekday { text-align: center; font-size: 12px; color: #999; padding: 4px 0; font-weight: 600; }
.cap-med-cal-empty { background: transparent; }
.cap-med-cal-day { aspect-ratio: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 6px; cursor: pointer; transition: all 0.2s; position: relative; }
.cap-med-cal-day:hover { transform: scale(1.08); box-shadow: 0 2px 6px rgba(0,0,0,0.15); }
.cap-med-cal-daynum { font-size: 13px; font-weight: 600; }
.cap-med-cal-dot { font-size: 10px; color: #fff; background: #6c5ce7; border-radius: 8px; padding: 0 4px; margin-top: 1px; }
.cap-med-cal-today { border: 2px solid #6c5ce7; }
.cap-med-sync-card { background: #f8f9fa; border-radius: 10px; padding: 12px; }
.cap-med-sync-row { display: flex; justify-content: space-between; padding: 6px 0; border-bottom: 1px solid #eee; font-size: 14px; }
.cap-med-sync-row:last-child { border-bottom: none; }
.cap-med-sync-row span:first-child { color: #666; }
.cap-med-sync-row span:last-child { font-weight: 600; }
.cap-med-sync-ok { color: #2e7d32 !important; }
.cap-med-sync-fail { color: #c62828 !important; }
.cap-med-sync-msg { margin-top: 8px; font-size: 13px; color: #6c5ce7; font-style: italic; }

/* === P2 === */
.cap-med-report-card { background: linear-gradient(135deg, #f3f0ff 0%, #e8f5e9 100%); border-radius: 14px; padding: 16px; margin-bottom: 12px; }
.cap-med-report-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.cap-med-report-range { font-size: 14px; font-weight: 600; color: #6c5ce7; }
.cap-med-report-source { font-size: 12px; padding: 2px 8px; border-radius: 10px; background: rgba(108,92,231,0.1); color: #6c5ce7; }
.cap-med-report-adh { text-align: center; margin-bottom: 16px; }
.cap-med-report-adh-num { font-size: 36px; font-weight: 700; }
.cap-med-report-adh-label { font-size: 13px; color: #888; margin-top: 4px; }
.cap-med-report-ai { background: rgba(255,255,255,0.7); border-radius: 10px; padding: 12px; margin-bottom: 12px; font-size: 14px; line-height: 1.7; color: #333; }
.cap-med-report-meds { display: flex; flex-direction: column; gap: 6px; margin-bottom: 12px; }
.cap-med-report-med-row { display: flex; align-items: center; gap: 8px; }
.cap-med-report-med-name { width: 80px; font-size: 13px; color: #555; flex-shrink: 0; }
.cap-med-report-med-bar { flex: 1; height: 16px; background: #f0f0f0; border-radius: 8px; overflow: hidden; }
.cap-med-report-med-bar > div { height: 100%; border-radius: 8px; transition: width 0.5s; }
.cap-med-report-med-row > span:last-child { width: 40px; text-align: right; font-size: 13px; font-weight: 600; }
.cap-med-report-warn { background: #fff8e1; border-radius: 8px; padding: 8px 12px; margin-bottom: 6px; font-size: 13px; color: #e65100; }
.cap-med-report-warn-danger { background: #ffebee; color: #c62828; }
.cap-med-report-disclaimer { font-size: 11px; color: #999; margin-top: 8px; text-align: center; }
.cap-med-int-alt { margin-top: 6px; padding-top: 6px; border-top: 1px dashed rgba(0,0,0,0.08); font-size: 13px; color: #2e7d32; }
.cap-med-family-summary { display: flex; gap: 12px; margin-bottom: 12px; }
.cap-med-fam-stat { flex: 1; text-align: center; padding: 12px; border-radius: 10px; background: #f8f9fa; }
.cap-med-fam-num { display: block; font-size: 24px; font-weight: 700; color: #6c5ce7; }
.cap-med-fam-label { display: block; font-size: 12px; color: #888; margin-top: 2px; }
.cap-med-fam-card { background: #fff; border-radius: 12px; padding: 14px; margin-bottom: 10px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); }
.cap-med-fam-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.cap-med-fam-name { font-size: 15px; font-weight: 600; }
.cap-med-fam-adh { font-size: 18px; font-weight: 700; }
.cap-med-fam-stats { display: flex; gap: 12px; font-size: 13px; color: #666; margin-bottom: 6px; }
.cap-med-fam-warn { font-size: 12px; color: #e65100; margin-bottom: 6px; }
.cap-med-fam-meds { font-size: 12px; color: #999; line-height: 1.4; }

/* === P3 === */
.cap-med-trend-card { background: #f8f9fa; border-radius: 12px; padding: 14px; margin-bottom: 12px; }
.cap-med-trend-header { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.cap-med-trend-total { font-size: 24px; font-weight: 700; color: #6c5ce7; }
.cap-med-trend-label { font-size: 13px; color: #888; flex: 1; }
.cap-med-trend-dir { font-size: 13px; font-weight: 600; color: #4caf50; }
.cap-med-trend-svg { width: 100%; height: auto; display: block; }
.cap-med-trend-svg rect:hover { opacity: 1; }
.cap-med-trend-legend { display: flex; gap: 12px; justify-content: center; margin-top: 8px; font-size: 11px; color: #666; }
.cap-med-trend-dot { display: inline-block; width: 8px; height: 8px; border-radius: 2px; margin-right: 3px; vertical-align: middle; }
.cap-med-opt-summary { padding: 10px 12px; background: #f3f0ff; border-radius: 8px; margin-bottom: 10px; font-size: 14px; color: #6c5ce7; font-weight: 500; }
.cap-med-opt-card { background: #fff; border-radius: 10px; padding: 12px; margin-bottom: 8px; box-shadow: 0 1px 2px rgba(0,0,0,0.05); }
.cap-med-opt-card.cap-med-opt-change { border-left: 3px solid #ff9800; }
.cap-med-opt-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.cap-med-opt-name { font-size: 15px; font-weight: 600; }
.cap-med-opt-badge { font-size: 11px; padding: 2px 8px; border-radius: 10px; background: #fff3e0; color: #e65100; }
.cap-med-opt-badge-ok { background: #e8f5e9; color: #2e7d32; }
.cap-med-opt-times { margin-bottom: 8px; }
.cap-med-opt-time-row { display: flex; justify-content: space-between; font-size: 13px; padding: 3px 0; }
.cap-med-opt-time-row span:first-child { color: #888; }
.cap-med-opt-cur { color: #666; }
.cap-med-opt-new { color: #e65100; font-weight: 600; }
.cap-med-opt-arrow { justify-content: center; color: #ff9800; font-size: 16px; padding: 0; }
.cap-med-opt-reason { font-size: 13px; color: #555; line-height: 1.5; padding: 6px 0; border-top: 1px solid #f0f0f0; }
.cap-med-opt-analysis { display: flex; gap: 12px; font-size: 12px; color: #999; padding-top: 4px; }

/* === P6 新增 === */
/* 搜索栏 */
.cap-med-search-bar { margin-bottom: 12px; }
.cap-med-search-bar input { width: 100%; padding: 8px 14px; border: 1px solid #ddd; border-radius: 20px; font-size: 14px; box-sizing: border-box; }
.cap-med-search-bar input:focus { border-color: #6c5ce7; outline: none; box-shadow: 0 0 0 2px rgba(108,92,231,0.1); }

/* 空状态引导 */
.cap-med-empty-guide { text-align: center; padding: 40px 20px; }
.cap-med-empty-guide-icon { font-size: 48px; margin-bottom: 12px; opacity: 0.6; }
.cap-med-empty-guide-title { font-size: 16px; font-weight: 600; color: #555; margin-bottom: 6px; }
.cap-med-empty-guide-desc { font-size: 13px; color: #999; margin-bottom: 16px; line-height: 1.5; }
.cap-med-empty-guide-btn { padding: 8px 24px; border: none; border-radius: 20px; background: #6c5ce7; color: #fff; cursor: pointer; font-size: 14px; transition: all 0.2s; }
.cap-med-empty-guide-btn:hover { background: #5b4cdb; }

/* === 移动端 === */
@media (max-width: 600px) {
  .cap-med-stats-row { flex-wrap: wrap; }
  .cap-med-stat-box { min-width: 45%; }
  .cap-med-stat-num { font-size: 22px; }
  .cap-med-plan-info { flex-direction: column; }
  .cap-med-plans-header { flex-direction: column; }
  .cap-med-voice-hint { display: none; }
  .cap-med-cal-daynum { font-size: 11px; }
  .cap-med-cal-dot { font-size: 8px; }
  .cap-med-family-summary { flex-direction: column; gap: 6px; }
  .cap-med-report-adh-num { font-size: 28px; }
  .cap-med-fam-stats { flex-wrap: wrap; gap: 8px; }
  .cap-med-trend-legend { flex-wrap: wrap; gap: 6px; }
  .cap-med-opt-analysis { flex-wrap: wrap; gap: 8px; }
}
/* === 布局升级 v2 — 多列网格优化 === */

/* 1. 表单：2列网格 */
.cap-med-form { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
.cap-med-form-title { grid-column: 1 / -1; }
.cap-med-form-actions { grid-column: 1 / -1; }
.cap-med-form-row { margin-bottom: 10px; }
/* 服用时间和备注跨满行 */
.cap-med-form-row.span-full { grid-column: 1 / -1; }

/* 2. 漏服+库存预警：左右并排 */
.cap-med-alerts-row { display: flex; gap: 12px; margin-bottom: 12px; }
.cap-med-alerts-row > .cap-med-alert { flex: 1; margin-bottom: 0; max-height: 280px; overflow-y: auto; }
@media (max-width: 600px) {
  .cap-med-alerts-row { flex-direction: column; }
}

/* 3. 今日用药：2列网格 */
.cap-med-today-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.cap-med-today-grid .cap-med-today-card { margin-bottom: 0; }
@media (max-width: 600px) {
  .cap-med-today-grid { grid-template-columns: 1fr; }
}

/* 4. 药物分类数据库：2列网格 */
.cap-med-drug-cats { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
@media (max-width: 600px) {
  .cap-med-drug-cats { grid-template-columns: 1fr; }
}

/* 5. Textarea：限制宽度+结果并排 */
.cap-med-inter-check-row { display: flex; gap: 12px; align-items: flex-start; }
.cap-med-inter-check-row .cap-med-textarea { flex: 1; min-height: 100px; }
.cap-med-inter-check-btn { flex-shrink: 0; padding: 8px 16px; border: none; border-radius: 8px; background: #6c5ce7; color: #fff; cursor: pointer; font-size: 14px; align-self: stretch; display: flex; align-items: center; }
.cap-med-inter-check-btn:hover { background: #5b4cdb; }
@media (max-width: 600px) {
  .cap-med-inter-check-row { flex-direction: column; }
}

/* 6. 场景识别：Textarea+按钮并排 */
.cap-med-scenario-row { display: flex; gap: 12px; align-items: flex-start; }
.cap-med-scenario-row .cap-med-textarea { flex: 1; }
.cap-med-scenario-btn { flex-shrink: 0; padding: 8px 16px; border: none; border-radius: 8px; background: #6c5ce7; color: #fff; cursor: pointer; font-size: 14px; align-self: stretch; display: flex; align-items: center; }
.cap-med-scenario-btn:hover { background: #5b4cdb; }
@media (max-width: 600px) {
  .cap-med-scenario-row { flex-direction: column; }
}

/* 7. 用药计划卡片：2列网格 */
.cap-med-plan-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.cap-med-plan-grid .cap-med-plan-card { margin-bottom: 0; }
@media (max-width: 600px) {
  .cap-med-plan-grid { grid-template-columns: 1fr; }
}
