/* ── Content Calendar ─────────────────────────────────── */
.cal-wrap { max-width: 1100px; margin: 0 auto; padding: 24px 16px 60px; }
.cal-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 28px; flex-wrap: wrap; gap: 12px; }
.cal-title { font-size: 1.4rem; font-weight: 700; color: #e2e8f0; }
.cal-subtitle { font-size: 0.85rem; color: #8b9ab7; margin-top: 2px; }

/* Generator panel */
.cal-gen-card { background: #0f172a; border: 1px solid #1e293b; border-radius: 16px; padding: 24px; margin-bottom: 28px; }
.cal-gen-row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-bottom: 16px; }
@media (max-width: 700px) { .cal-gen-row { grid-template-columns: 1fr; } }
.cal-gen-field label { display: block; font-size: 0.78rem; color: #8b9ab7; margin-bottom: 6px; font-weight: 500; }
.cal-gen-field select, .cal-gen-field input { width: 100%; background: #0a0f1e; border: 1px solid #1e293b; border-radius: 8px; padding: 9px 12px; color: #e2e8f0; font-size: 0.88rem; box-sizing: border-box; }
.cal-platforms { display: flex; gap: 10px; flex-wrap: wrap; }
.cal-platform-btn { display: flex; align-items: center; gap: 6px; padding: 7px 14px; border: 1px solid #1e293b; border-radius: 8px; background: #0a0f1e; color: #8b9ab7; cursor: pointer; font-size: 0.83rem; transition: all .15s; }
.cal-platform-btn.active { border-color: #7c3aed; background: rgba(124,58,237,0.15); color: #c4b5fd; }
.cal-gen-btn { background: linear-gradient(135deg, #6d28d9, #4f46e5); border: none; color: #fff; padding: 11px 28px; border-radius: 10px; font-size: 0.9rem; font-weight: 600; cursor: pointer; transition: opacity .15s; }
.cal-gen-btn:disabled { opacity: .5; cursor: default; }
.cal-gen-footer { display: flex; align-items: center; gap: 16px; margin-top: 16px; flex-wrap: wrap; }
.cal-gen-status { font-size: 0.82rem; color: #8b9ab7; }

/* Calendar grid */
.cal-month-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
.cal-month-label { font-size: 1.1rem; font-weight: 700; color: #e2e8f0; }
.cal-filter-row { display: flex; gap: 8px; flex-wrap: wrap; }
.cal-filter-btn { padding: 5px 13px; border: 1px solid #1e293b; border-radius: 20px; background: #0a0f1e; color: #8b9ab7; font-size: 0.78rem; cursor: pointer; transition: all .15s; }
.cal-filter-btn.active { border-color: #7c3aed; background: rgba(124,58,237,0.15); color: #c4b5fd; }

.cal-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; margin-bottom: 24px; }
.cal-day-name { text-align: center; font-size: 0.72rem; color: #8b9ab7; padding: 6px 0; font-weight: 600; }
.cal-day { min-height: 90px; background: #0a0f1e; border: 1px solid #1e293b; border-radius: 8px; padding: 6px; position: relative; }
.cal-day.empty { background: transparent; border-color: transparent; }
.cal-day-num { font-size: 0.72rem; color: #475569; margin-bottom: 4px; }
.cal-post-chip { font-size: 0.68rem; padding: 3px 6px; border-radius: 5px; margin-bottom: 3px; cursor: pointer; line-height: 1.3; overflow: hidden; max-height: 36px; text-overflow: ellipsis; white-space: nowrap; transition: max-height .2s; }
.cal-post-chip:hover { max-height: none; white-space: normal; }
.cal-post-chip.fb   { background: rgba(59,130,246,0.2); color: #93c5fd; border: 1px solid rgba(59,130,246,0.3); }
.cal-post-chip.ig   { background: rgba(236,72,153,0.2); color: #f9a8d4; border: 1px solid rgba(236,72,153,0.3); }
.cal-post-chip.li   { background: rgba(14,165,233,0.2); color: #7dd3fc; border: 1px solid rgba(14,165,233,0.3); }
.cal-post-chip.tt   { background: rgba(20,184,166,0.2); color: #5eead4; border: 1px solid rgba(20,184,166,0.3); }

/* Post list view */
.cal-list { display: grid; gap: 12px; }
.cal-list-item { background: #0f172a; border: 1px solid #1e293b; border-radius: 12px; padding: 16px; }
.cal-list-meta { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; flex-wrap: wrap; }
.cal-list-date { font-size: 0.78rem; color: #8b9ab7; }
.cal-list-platform { font-size: 0.72rem; padding: 2px 8px; border-radius: 10px; font-weight: 600; }
.cal-list-platform.fb { background: rgba(59,130,246,0.2); color: #93c5fd; }
.cal-list-platform.ig { background: rgba(236,72,153,0.2); color: #f9a8d4; }
.cal-list-platform.li { background: rgba(14,165,233,0.2); color: #7dd3fc; }
.cal-list-type { font-size: 0.72rem; color: #64748b; padding: 2px 8px; border: 1px solid #1e293b; border-radius: 10px; }
.cal-list-content { font-size: 0.87rem; color: #cbd5e1; line-height: 1.55; white-space: pre-wrap; }
.cal-list-hashtags { margin-top: 8px; display: flex; gap: 6px; flex-wrap: wrap; }
.cal-hashtag { font-size: 0.72rem; color: #7c3aed; }
.cal-list-actions { display: flex; gap: 8px; margin-top: 10px; }
.cal-list-btn { padding: 5px 12px; border-radius: 7px; font-size: 0.78rem; cursor: pointer; border: 1px solid #1e293b; background: #0a0f1e; color: #8b9ab7; transition: all .15s; }
.cal-list-btn:hover { border-color: #7c3aed; color: #c4b5fd; }

/* View toggle */
.cal-view-toggle { display: flex; gap: 0; border: 1px solid #1e293b; border-radius: 8px; overflow: hidden; }
.cal-view-btn { padding: 6px 14px; font-size: 0.8rem; border: none; background: #0a0f1e; color: #8b9ab7; cursor: pointer; transition: all .15s; }
.cal-view-btn.active { background: #1e293b; color: #e2e8f0; }

.cal-empty-state { text-align: center; padding: 60px 20px; color: #475569; font-size: 0.9rem; }
.cal-empty-icon { font-size: 3rem; margin-bottom: 12px; }
