/* ── Dividend module styles ────────────────────────────────────────────── */

/* pi-btn (self-contained; mirrors live.css) */
.pi-btn { display:inline-flex; align-items:center; gap:.375rem; padding:.5rem 1rem; border-radius:.5rem; font-size:.8125rem; font-weight:700; cursor:pointer; border:none; transition:opacity .15s; }
.pi-btn:hover { opacity:.85; }
.pi-btn-ghost { background:#f1f5f9; color:#374151; }
.dark .pi-btn-ghost { background:#1e293b; color:#cbd5e1; }

/* View tab toggle */
.div-view-tab { display:flex; align-items:center; gap:.5rem; padding:.5rem 1.125rem; border-radius:.625rem; font-size:.875rem; font-weight:700; border:1.5px solid transparent; cursor:pointer; transition:all .15s; }
.div-view-tab.active { background:#2563eb; color:white; border-color:#2563eb; }
.div-view-tab:not(.active) { background:white; color:#64748b; border-color:#e2e8f0; }
.div-view-tab:not(.active):hover { border-color:#94a3b8; color:#334155; }
.dark .div-view-tab:not(.active) { background:#1e293b; border-color:#334155; color:#94a3b8; }

/* Search input — padding applied via tailwind on the element */
.div-search-input { background:white; border:1.5px solid #e2e8f0; border-radius:.75rem; font-size:.875rem; font-weight:600; color:#374151; transition:border-color .18s; outline:none; width:100%; }
.div-search-input:focus { border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.08); }
.dark .div-search-input { background:#1e293b; border-color:#334155; color:#e2e8f0; }

/* Dividend row */
.div-row { background:white; border:1.5px solid #f1f5f9; border-radius:1rem; padding:.875rem 1.125rem; transition:border-color .15s, box-shadow .15s; display:grid; gap:.75rem; align-items:center; }
.div-row:hover { border-color:#bfdbfe; box-shadow:0 2px 12px rgba(37,99,235,.07); }
.dark .div-row { background:#1e293b; border-color:#334155; }
.dark .div-row:hover { border-color:#3b82f6; }

/* Normal row: 3 equal cols on mobile → 7-col on md+ */
.div-row-normal { grid-template-columns: 1fr 1fr 1fr; }
@media (min-width: 768px) {
  .div-row-normal { grid-template-columns: 1fr 80px 80px 80px 100px 100px 90px; }
}

/* Type badges */
.div-badge { display:inline-flex; align-items:center; gap:.25rem; font-size:.65rem; font-weight:800; padding:.2rem .55rem; border-radius:.375rem; text-transform:uppercase; white-space:nowrap; }
.div-badge-cash  { background:#dcfce7; color:#15803d; border:1px solid #bbf7d0; }
.div-badge-stock { background:#f3e8ff; color:#7c3aed; border:1px solid #e9d5ff; }
.div-badge-nopay { background:#f1f5f9; color:#94a3b8; border:1px solid #e2e8f0; }
.dark .div-badge-cash  { background:#14532d; color:#86efac; border-color:#166534; }
.dark .div-badge-stock { background:#2e1065; color:#c4b5fd; border-color:#4c1d95; }
.dark .div-badge-nopay { background:#1e293b; color:#475569; border-color:#334155; }

/* Stock pill */
.div-stock-pill { display:inline-flex; align-items:center; font-size:.875rem; font-weight:900; color:#1d4ed8; background:#eff6ff; border:1.5px solid #bfdbfe; border-radius:.5rem; padding:.2rem .65rem; text-decoration:none; transition:background .15s; flex-shrink:0; }
.div-stock-pill:hover { background:#dbeafe; }
.dark .div-stock-pill { color:#93c5fd; background:#1e3a5f; border-color:#3b82f6; }

/* Yield bar */
.div-yield-bar { height:4px; border-radius:9px; background:#e2e8f0; overflow:hidden; }
.dark .div-yield-bar { background:#334155; }
.div-yield-fill { height:100%; border-radius:9px; transition:width .3s; }

/* Calendar */
.div-cal-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:3px; }
.div-cal-hd  { font-size:.7rem; font-weight:800; text-align:center; color:#94a3b8; padding:.5rem 0; text-transform:uppercase; }
.div-cal-day { aspect-ratio:1; border-radius:.5rem; display:flex; flex-direction:column; align-items:center; justify-content:center; font-size:.8rem; font-weight:700; position:relative; cursor:default; transition:background .12s; border:1.5px solid transparent; }
.div-cal-day.has-xd { cursor:pointer; background:#fdf4ff; border-color:#e9d5ff; color:#7c3aed; }
.div-cal-day.has-xd:hover { background:#f5d0fe; }
.dark .div-cal-day.has-xd { background:#2e1065; border-color:#7c3aed; color:#c4b5fd; }
.div-cal-day.today { background:#eff6ff; border-color:#bfdbfe; color:#2563eb; }
.dark .div-cal-day.today { background:#1e3a5f; border-color:#3b82f6; color:#93c5fd; }
.div-cal-day.selected { background:#7c3aed !important; color:white !important; border-color:#7c3aed !important; }
.div-cal-day.other-month { opacity:.3; }
.div-xd-dot { width:5px; height:5px; background:#7c3aed; border-radius:50%; position:absolute; bottom:4px; }
.div-cal-day.selected .div-xd-dot { background:rgba(255,255,255,.8); }
