/* Social Monitor Pro — Dashboard CSS */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
.smp-wrap{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1a1a2e;min-height:100vh;background:#f4f6fb}

/* ── Top Nav ── */
.smp-topnav{display:flex;align-items:center;gap:24px;background:#1a1a2e;color:#fff;padding:0 28px;height:56px;position:sticky;top:0;z-index:100}
.smp-topnav-logo{font-size:16px;font-weight:700;color:#fff;margin-right:8px;white-space:nowrap}
.smp-topnav-links{display:flex;gap:4px;flex:1}
.smp-topnav-links a{color:rgba(255,255,255,.6);text-decoration:none;font-size:13px;padding:6px 14px;border-radius:6px;transition:.15s}
.smp-topnav-links a:hover,.smp-topnav-links a.active{color:#fff;background:rgba(255,255,255,.12)}
.smp-topnav-user{display:flex;align-items:center;gap:12px;font-size:13px;color:rgba(255,255,255,.7);margin-left:auto}

/* ── Layout ── */
.smp-layout{display:grid;grid-template-columns:260px 1fr;min-height:calc(100vh - 56px)}

/* ── Sidebar ── */
.smp-sidebar{background:#fff;border-right:1px solid #e8eaf0;padding:20px 0;overflow-y:auto}
.smp-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px 12px;font-size:13px;font-weight:600;color:#555}
.smp-projects-list{padding:0 8px}
.smp-project-item{display:flex;align-items:center;gap:8px;padding:10px 10px;border-radius:8px;cursor:pointer;margin-bottom:2px;transition:.12s}
.smp-project-item:hover{background:#f4f6fb}
.smp-project-item.active{background:#eef2ff}
.smp-project-dot{width:8px;height:8px;border-radius:50%;background:#6366f1;flex-shrink:0}
.smp-project-info{flex:1;min-width:0}
.smp-project-name{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-project-meta{font-size:11px;color:#888;margin-top:1px}
.smp-project-del{font-size:11px;color:#ccc;cursor:pointer;padding:2px 4px}
.smp-project-del:hover{color:#ef4444}
.smp-sidebar-section{padding:16px 16px 0;margin-top:8px;border-top:1px solid #f0f0f0}
.smp-sidebar-label{font-size:11px;font-weight:600;color:#aaa;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}
.smp-trend-item{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:5px 0;color:#555}
.smp-trend-count{font-size:11px;color:#aaa}
.smp-loading-sm{font-size:12px;color:#aaa;padding:12px 16px}

/* ── Main ── */
.smp-main{padding:24px;overflow-y:auto}

/* ── Metrics ── */
.smp-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
.smp-metric-card{background:#fff;border:1px solid #e8eaf0;border-radius:12px;padding:18px}
.smp-metric-label{font-size:12px;color:#888;margin-bottom:6px}
.smp-metric-value{font-size:26px;font-weight:700;color:#1a1a2e}
.smp-metric-value.pos{color:#10b981}
.smp-metric-value.neg{color:#ef4444}

/* ── Charts ── */
.smp-charts-row{display:grid;grid-template-columns:1fr 180px 180px;gap:14px;margin-bottom:20px}
.smp-chart-card{background:#fff;border:1px solid #e8eaf0;border-radius:12px;padding:18px}
.smp-chart-wide{grid-column:1}
.smp-chart-title{font-size:12px;font-weight:600;color:#888;margin-bottom:14px;text-transform:uppercase;letter-spacing:.04em}

/* ── Results ── */
.smp-results-panel{background:#fff;border:1px solid #e8eaf0;border-radius:12px;overflow:hidden}
.smp-results-toolbar{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid #f0f0f0;flex-wrap:wrap}
.smp-results-project-name{font-size:14px;font-weight:600;flex:1}
.smp-results-filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.smp-results-filters select{padding:5px 10px;font-size:12px;border:1px solid #e0e0e0;border-radius:6px;background:#fff;color:#333}
.smp-result-row{display:flex;gap:12px;padding:14px 18px;border-bottom:1px solid #f7f7f7;align-items:flex-start}
.smp-result-row:last-child{border-bottom:none}
.smp-plat-badge{min-width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0}
.pb-gn{background:#dbeafe;color:#1d4ed8}.pb-n{background:#d1fae5;color:#065f46}
.pb-ig{background:#fce7f3;color:#9d174d}.pb-fb{background:#ede9fe;color:#5b21b6}
.pb-x{background:#f3f4f6;color:#374151}.pb-gw{background:#fef3c7;color:#92400e}
.smp-result-body{flex:1;min-width:0}
.smp-result-title{font-size:13px;font-weight:600;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-result-snippet{font-size:12px;color:#666;line-height:1.5;margin-bottom:5px}
.smp-result-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.smp-result-date{font-size:11px;color:#aaa}
.smp-sent-pill{font-size:10px;padding:2px 8px;border-radius:99px;font-weight:600}
.sp-pos{background:#d1fae5;color:#065f46}.sp-neg{background:#fee2e2;color:#991b1b}.sp-neu{background:#f3f4f6;color:#6b7280}
.smp-result-link{font-size:11px;color:#6366f1;text-decoration:none;margin-left:auto}
.smp-result-link:hover{text-decoration:underline}

/* ── Empty state ── */
.smp-empty-state{text-align:center;padding:60px 20px;color:#888}
.smp-empty-icon{font-size:48px;margin-bottom:16px}
.smp-empty-state h3{font-size:18px;font-weight:600;color:#333;margin-bottom:8px}
.smp-empty-state p{font-size:14px;margin-bottom:20px}

/* ── Modal ── */
.smp-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000}
.smp-modal{background:#fff;border-radius:14px;padding:28px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto}
.smp-modal-sm{max-width:340px;text-align:center}
.smp-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:16px;font-weight:600}
.smp-modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.smp-center{text-align:center}

/* ── Auth ── */
.smp-auth-wrap{display:flex;align-items:center;justify-content:center;min-height:80vh;padding:20px;background:#f4f6fb}
.smp-auth-card{background:#fff;border:1px solid #e8eaf0;border-radius:14px;padding:36px;width:100%;max-width:400px}
.smp-auth-logo{font-size:20px;font-weight:700;margin-bottom:20px;color:#1a1a2e}
.smp-auth-card h2{font-size:20px;font-weight:600;margin-bottom:22px;color:#1a1a2e}
.smp-auth-switch{font-size:13px;color:#888;margin-top:16px;text-align:center}
.smp-auth-switch a{color:#6366f1}

/* ── Reports ── */
.smp-reports-wrap{max-width:1000px;margin:0 auto;padding:28px}
.smp-reports-wrap h2{font-size:22px;font-weight:700;margin-bottom:20px}
.smp-report-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.smp-report-card{background:#fff;border:1px solid #e8eaf0;border-radius:12px;padding:20px}
.smp-report-name{font-size:15px;font-weight:600;margin-bottom:4px}
.smp-report-keyword{font-size:12px;color:#888;margin-bottom:4px}
.smp-report-dates{font-size:11px;color:#aaa;margin-bottom:12px}
.smp-report-stats{display:flex;gap:10px;font-size:13px;margin-bottom:10px}
.smp-stat-total{font-weight:600}.smp-stat-pos{color:#10b981}.smp-stat-neg{color:#ef4444}
.smp-report-bar{height:6px;border-radius:99px;overflow:hidden;display:flex;background:#f0f0f0;margin-bottom:14px}
.smp-rbar-pos{background:#10b981}.smp-rbar-neu{background:#d1d5db}.smp-rbar-neg{background:#ef4444}
.smp-report-actions{display:flex;gap:8px}

/* ── Shared components ── */
.smp-field{margin-bottom:14px}
.smp-field label{display:block;font-size:12px;font-weight:500;color:#555;margin-bottom:5px}
.smp-field input[type=text],.smp-field input[type=email],.smp-field input[type=password],.smp-field input[type=date]{width:100%;padding:9px 12px;font-size:13px;border:1px solid #dde1e7;border-radius:8px;background:#fafafa;color:#1a1a2e;transition:.15s}
.smp-field input:focus{outline:none;border-color:#6366f1;background:#fff}
.smp-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.smp-checkboxes{display:flex;flex-wrap:wrap;gap:10px}
.smp-checkboxes label{font-size:12px;display:flex;align-items:center;gap:5px;cursor:pointer;font-weight:400}
.smp-btn{display:inline-flex;align-items:center;justify-content:center;padding:9px 18px;font-size:13px;font-weight:500;border-radius:8px;border:1px solid transparent;cursor:pointer;transition:.12s;text-decoration:none}
.smp-btn:active{transform:scale(.98)}
.smp-btn-primary{background:#6366f1;color:#fff;border-color:#6366f1}
.smp-btn-primary:hover{background:#4f46e5}
.smp-btn-secondary{background:#f4f6fb;color:#374151;border-color:#e0e3ea}
.smp-btn-secondary:hover{background:#e8eaf0}
.smp-btn-full{width:100%;margin-top:4px}
.smp-btn-sm{padding:5px 12px;font-size:12px}
.smp-btn-link{background:none;border:none;cursor:pointer;color:rgba(255,255,255,.6);font-size:13px;padding:0}
.smp-btn-link:hover{color:#fff}
.smp-alert{padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:14px}
.smp-alert-error{background:#fee2e2;color:#991b1b}
.smp-alert-success{background:#d1fae5;color:#065f46}
.smp-spinner{width:36px;height:36px;border:3px solid #e8eaf0;border-top-color:#6366f1;border-radius:50%;animation:smp-spin .7s linear infinite;margin:0 auto 16px}
@keyframes smp-spin{to{transform:rotate(360deg)}}

@media(max-width:900px){
  .smp-layout{grid-template-columns:1fr}
  .smp-sidebar{display:none}
  .smp-metrics-grid{grid-template-columns:1fr 1fr}
  .smp-charts-row{grid-template-columns:1fr}
}

/* Language switcher */
.smp-lang-switch { display:flex; gap:4px; margin-left:8px; }
.smp-lang-btn { padding:3px 10px; font-size:11px; border-radius:99px; border:1px solid rgba(255,255,255,.25); background:transparent; color:rgba(255,255,255,.6); cursor:pointer; transition:.12s; }
.smp-lang-btn.active, .smp-lang-btn:hover { background:rgba(255,255,255,.15); color:#fff; border-color:rgba(255,255,255,.4); }

/* Beez bee accent */
.smp-auth-logo { font-size:22px; font-weight:800; color:#f59e0b; margin-bottom:20px; letter-spacing:-.5px; }
.smp-topnav-logo { color:#f59e0b !important; font-weight:800; }
.smp-btn-primary { background:#f59e0b; border-color:#f59e0b; color:#1a1a2e; }
.smp-btn-primary:hover { background:#d97706; border-color:#d97706; }
.smp-project-dot { background:#f59e0b; }
.smp-project-item.active { background:#fef3c7; }
