/* Social-Media-Modul */
.pf-badge { display:inline-flex; align-items:center; justify-content:center; min-width:26px; height:22px; padding:0 7px; border-radius:6px; color:#fff; font-size:.68rem; font-weight:700; letter-spacing:.02em; white-space:nowrap; }
.pf-facebook { background:#1877F2; } .pf-instagram { background:#E1306C; } .pf-tiktok { background:#111827; }
.pf-facebook_profile { background:#5B7FC4; }
.pf-linkedin { background:#0A66C2; } .pf-x { background:#000; } .pf-youtube { background:#FF0000; }

.sp-toolbar { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:14px; }
.sp-toolbar .spacer { flex:1; }
.seg { display:inline-flex; border:1px solid var(--gray-200,#E2E8F0); border-radius:8px; overflow:hidden; }
.seg button { border:0; background:#fff; padding:6px 14px; font-size:.82rem; cursor:pointer; color:#475569; }
.seg button + button { border-left:1px solid var(--gray-200,#E2E8F0); }
.seg button.active { background:#7C3AED; color:#fff; }

.acc-card { display:flex; align-items:center; gap:12px; padding:10px 0; border-bottom:1px solid #F1F5F9; }
.acc-card:last-child { border-bottom:0; }
.acc-avatar { width:38px; height:38px; border-radius:50%; background:#E2E8F0; object-fit:cover; flex:0 0 38px; display:flex; align-items:center; justify-content:center; font-weight:700; color:#64748B; }
.acc-info { flex:1; min-width:0; }
.acc-name { font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.connect-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:12px; }
.connect-tile { border:1.5px solid #E2E8F0; border-radius:12px; padding:14px; display:flex; flex-direction:column; gap:10px; }
.connect-tile.off { opacity:.65; }

.st { display:inline-block; padding:1px 8px; border-radius:999px; font-size:.7rem; font-weight:600; }
.st-draft { background:#E2E8F0; color:#334155; } .st-scheduled, .st-pending { background:#DBEAFE; color:#1E40AF; }
.st-publishing { background:#FEF3C7; color:#92400E; } .st-published { background:#D1FAE5; color:#065F46; }
.st-manual { background:#FDE68A; color:#78350F; }
.st-partial { background:#FFEDD5; color:#9A3412; } .st-failed { background:#FEE2E2; color:#991B1B; }

.post-row { display:flex; gap:12px; padding:12px 0; border-bottom:1px solid #F1F5F9; align-items:flex-start; }
.post-row:last-child { border-bottom:0; }
.post-thumb { width:56px; height:56px; border-radius:8px; background:#F1F5F9 center/cover; flex:0 0 56px; display:flex; align-items:center; justify-content:center; font-size:1.2rem; }
.post-main { flex:1; min-width:0; }
.post-text { overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; white-space:pre-wrap; word-break:break-word; }
.post-meta { display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-top:6px; font-size:.78rem; color:#64748B; }
.post-err { color:#991B1B; font-size:.78rem; margin-top:4px; white-space:pre-wrap; }

/* Kalender */
.sc-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:1px; background:#E2E8F0; border:1px solid #E2E8F0; border-radius:10px; overflow:hidden; }
.sc-dow { background:#F8FAFC; padding:6px; text-align:center; font-size:.72rem; font-weight:700; color:#94A3B8; }
.sc-day { background:#fff; min-height:104px; padding:4px; cursor:pointer; min-width:0; }
.sc-day.other { background:#FAFAFB; } .sc-day.other .sc-num { color:#CBD5E1; }
.sc-day.today .sc-num { background:#7C3AED; color:#fff; border-radius:999px; padding:0 6px; }
.sc-num { font-size:.75rem; font-weight:600; color:#64748B; display:inline-block; margin-bottom:2px; }
.sc-item { display:flex; align-items:center; gap:4px; font-size:.7rem; padding:2px 4px; margin-bottom:2px; border-radius:4px; background:#F1F5F9; cursor:pointer; overflow:hidden; white-space:nowrap; }
.sc-item span.t { overflow:hidden; text-overflow:ellipsis; }
.sc-item.s-failed { background:#FEE2E2; } .sc-item.s-published { background:#D1FAE5; } .sc-item.s-draft { background:#E2E8F0; } .sc-item.s-scheduled { background:#DBEAFE; } .sc-item.s-manual { background:#FDE68A; }
.manual-box { border:1px solid #FCD34D; background:#FFFBEB; border-radius:10px; padding:12px; margin-top:8px; }
.manual-box textarea { width:100%; box-sizing:border-box; resize:vertical; margin:8px 0; }
.sc-dot { width:7px; height:7px; border-radius:50%; flex:0 0 7px; }

/* Composer */
.sm-backdrop { display:none; position:fixed; inset:0; background:rgba(0,0,0,.5); z-index:900; align-items:flex-start; justify-content:center; padding:20px 12px; overflow-y:auto; }
.sm-box { background:#fff; border-radius:12px; width:100%; max-width:860px; padding:20px; }
.sm-cols { display:grid; grid-template-columns:minmax(0,1fr); gap:18px; }
@media (min-width:820px) { .sm-cols { grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); } }
.pick-grid { display:flex; flex-direction:column; gap:6px; max-height:230px; overflow-y:auto; }
.pick { display:flex; align-items:center; gap:8px; padding:6px 8px; border:1.5px solid #E2E8F0; border-radius:8px; cursor:pointer; }
.pick.on { border-color:#7C3AED; background:#F5F3FF; }
.pick input { margin:0; }
.tgt-box { border:1px solid #E2E8F0; border-radius:10px; padding:10px; margin-bottom:10px; }
.tgt-head { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.counter { font-size:.75rem; color:#64748B; } .counter.over { color:#DC2626; font-weight:700; }
.media-strip { display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; }
.media-item { position:relative; width:72px; height:72px; border-radius:8px; overflow:hidden; background:#F1F5F9; }
.media-item img, .media-item video { width:100%; height:100%; object-fit:cover; display:block; }
.media-item button { position:absolute; top:2px; right:2px; border:0; background:rgba(0,0,0,.65); color:#fff; border-radius:50%; width:20px; height:20px; cursor:pointer; line-height:1; }
.preview-card { border:1px solid #E2E8F0; border-radius:10px; padding:12px; font-size:.88rem; background:#FAFAFB; }
.preview-card .pv-text { white-space:pre-wrap; word-break:break-word; margin:6px 0; }
.preview-card img, .preview-card video { max-width:100%; border-radius:8px; margin-top:6px; max-height:200px; }

/* Reports */
.kpis { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:12px; }
.kpi { border:1px solid #E2E8F0; border-radius:12px; padding:12px 14px; }
.kpi .v { font-size:1.5rem; font-weight:800; } .kpi .l { font-size:.75rem; color:#64748B; }
.bar-row { display:flex; align-items:center; gap:10px; margin:6px 0; font-size:.85rem; }
.bar-row .lbl { flex:0 0 120px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.bar-track { flex:1; height:12px; background:#F1F5F9; border-radius:6px; overflow:hidden; }
.bar-fill { height:100%; border-radius:6px; background:#7C3AED; }
.bar-row .val { flex:0 0 70px; text-align:right; font-variant-numeric:tabular-nums; }
.rep-table { width:100%; border-collapse:collapse; font-size:.85rem; }
.rep-table th, .rep-table td { padding:7px 8px; border-bottom:1px solid #F1F5F9; text-align:right; }
.rep-table th:first-child, .rep-table td:first-child { text-align:left; }
.rep-table th { font-size:.72rem; color:#64748B; font-weight:600; }
.spark { display:flex; align-items:flex-end; gap:2px; height:70px; }
.spark div { flex:1; background:#A78BFA; border-radius:2px 2px 0 0; min-height:2px; }
