/* Launchmind Dashboard Styles */
:root {
    --lm-primary: #10b981;
    --lm-primary-dark: #059669;
    --lm-primary-light: #d1fae5;
    --lm-gray-50: #f9fafb;
    --lm-gray-100: #f3f4f6;
    --lm-gray-200: #e5e7eb;
    --lm-gray-300: #d1d5db;
    --lm-gray-500: #6b7280;
    --lm-gray-700: #374151;
    --lm-gray-900: #111827;
    --lm-radius: 12px;
    --lm-radius-sm: 8px;
    --lm-shadow: 0 1px 3px rgba(0,0,0,0.08), 0 4px 12px rgba(0,0,0,0.05);
    --lm-shadow-lg: 0 4px 12px rgba(0,0,0,0.1), 0 16px 32px rgba(0,0,0,0.08);
}

.launchmind-dashboard { max-width: 1400px; margin: 20px auto; padding: 0 20px; }
.lm-header { display:flex; justify-content:space-between; align-items:center; padding:24px; background:#fff; border-radius:var(--lm-radius); box-shadow:var(--lm-shadow); margin-bottom:24px; }
.lm-header__info { display:flex; align-items:center; gap:16px; }
.lm-logo { width:48px; height:48px; background:linear-gradient(135deg, var(--lm-primary) 0%, var(--lm-primary-dark) 100%); border-radius:var(--lm-radius-sm); display:flex; align-items:center; justify-content:center; }
.lm-header__text h1 { margin:0; font-size:1.5rem; font-weight:600; color:var(--lm-gray-900); }
.lm-header__text p { margin:4px 0 0; color:var(--lm-gray-500); font-size:14px; }
.lm-header__actions { display:flex; gap:12px; }
.lm-header__actions .button { display:inline-flex; align-items:center; gap:6px; }

.lm-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:24px; }
@media (max-width:1024px){ .lm-stats { grid-template-columns:repeat(2,1fr);} }
.lm-stat-card { background:#fff; padding:24px; border-radius:var(--lm-radius); box-shadow:var(--lm-shadow); }
.lm-stat-value { font-size:2.5rem; font-weight:700; color:var(--lm-gray-900); line-height:1; }
.lm-stat-label { color:var(--lm-gray-500); font-size:14px; margin-top:8px; }
.lm-stat-status { display:flex; align-items:center; gap:8px; font-size:1.25rem; font-weight:700; color:var(--lm-gray-900); }
.lm-status-dot { width:12px; height:12px; border-radius:50%; background:var(--lm-gray-300); }
.lm-status-dot--active { background:var(--lm-primary); box-shadow:0 0 0 4px var(--lm-primary-light); }

.lm-notice { display:flex; align-items:flex-start; gap:12px; padding:16px 20px; border-radius:var(--lm-radius-sm); margin-bottom:24px; }
.lm-notice--info { background:#eff6ff; border:1px solid #bfdbfe; }
.lm-notice .dashicons { color:#3b82f6; font-size:20px; margin-top:2px; }
.lm-notice p { margin:0; font-size:14px; color:#1e40af; }
.lm-notice a { color:#1d4ed8; font-weight:500; }

.lm-tabs { background:#fff; border-radius:var(--lm-radius); box-shadow:var(--lm-shadow); overflow:hidden; }
.lm-tabs__nav { display:flex; border-bottom:1px solid var(--lm-gray-200); padding:0 24px; }
.lm-tab { display:inline-flex; align-items:center; gap:8px; padding:16px 20px; color:var(--lm-gray-500); text-decoration:none; font-weight:500; border-bottom:2px solid transparent; margin-bottom:-1px; transition:all .2s; }
.lm-tab:hover { color:var(--lm-gray-700); }
.lm-tab--active { color:var(--lm-primary); border-bottom-color:var(--lm-primary); }
.lm-tab__badge { background:var(--lm-gray-100); color:var(--lm-gray-700); padding:2px 8px; border-radius:10px; font-size:12px; font-weight:600; }
.lm-tab--active .lm-tab__badge { background:var(--lm-primary-light); color:var(--lm-primary-dark); }
.lm-tabs__content { padding:24px; }

.lm-search { display:flex; align-items:center; gap:12px; background:var(--lm-gray-50); border:1px solid var(--lm-gray-200); border-radius:var(--lm-radius-sm); padding:12px 16px; margin-bottom:24px; }
.lm-search input { flex:1; border:none; background:transparent; font-size:14px; outline:none; }

.lm-articles-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:20px; }
.lm-article-card { background:#fff; border-radius:var(--lm-radius); border:1px solid var(--lm-gray-200); overflow:hidden; cursor:pointer; transition:all .3s ease; }
.lm-article-card:hover { box-shadow:var(--lm-shadow-lg); transform:translateY(-4px); }
.lm-article-card__image { position:relative; aspect-ratio:16/9; background:var(--lm-gray-100); overflow:hidden; }
.lm-article-card__image img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.lm-article-card:hover .lm-article-card__image img { transform:scale(1.08); }
.lm-article-card__placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; color:var(--lm-gray-300); }
.lm-article-card__badge { position:absolute; top:8px; left:8px; background:var(--lm-primary); color:#fff; font-size:10px; font-weight:600; padding:4px 8px; border-radius:4px; text-transform:uppercase; }
.lm-article-card__date { position:absolute; bottom:8px; right:8px; background:rgba(0,0,0,.6); color:#fff; font-size:11px; padding:4px 8px; border-radius:4px; }
.lm-article-card__content { padding:16px; }
.lm-article-card__title { margin:0 0 8px; font-size:14px; font-weight:600; line-height:1.4; color:var(--lm-gray-900); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.lm-article-card__excerpt { margin:0 0 12px; font-size:12px; color:var(--lm-gray-500); line-height:1.5; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.lm-article-card__tags { display:flex; gap:4px; flex-wrap:wrap; margin-bottom:12px; }
.lm-tag { font-size:10px; padding:2px 8px; background:var(--lm-gray-100); border-radius:4px; color:var(--lm-gray-500); }
.lm-article-card__view { display:inline-flex; align-items:center; gap:4px; color:var(--lm-primary); font-size:12px; font-weight:500; background:none; border:none; padding:0; cursor:pointer; }

.lm-modal { position:fixed; inset:0; z-index:100000; display:none; align-items:center; justify-content:center; }
.lm-modal__overlay { position:absolute; inset:0; background:rgba(0,0,0,0.5); }
.lm-modal__content { position:relative; background:#fff; border-radius:var(--lm-radius); max-width:800px; width:90%; max-height:90vh; display:flex; flex-direction:column; box-shadow:var(--lm-shadow-lg); }
.lm-modal__header { display:flex; justify-content:space-between; align-items:center; padding:20px 24px; border-bottom:1px solid var(--lm-gray-200); }
.lm-modal__title { margin:0; font-size:1.25rem; font-weight:600; }
.lm-modal__close { background:none; border:none; font-size:24px; cursor:pointer; color:var(--lm-gray-500); line-height:1; }
.lm-modal__body { padding:24px; overflow-y:auto; flex:1; }
.lm-modal__body img { max-width:100%; border-radius:8px; margin:10px 0; }
.lm-modal__footer { display:flex; justify-content:flex-end; gap:12px; padding:16px 24px; border-top:1px solid var(--lm-gray-200); }

.lm-empty-state { text-align:center; padding:60px 20px; }
.lm-empty-state h2, .lm-empty-state h3 { margin:0 0 12px; color:var(--lm-gray-900); }
.lm-empty-state p { margin:0 0 24px; color:var(--lm-gray-500); }
.lm-empty-state__actions { display:flex; gap:12px; justify-content:center; }

/* Analytics */
.lm-analytics__cards { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px,1fr)); gap:16px; margin-bottom:24px; }
.lm-analytics-card { background:#fff; border-radius:var(--lm-radius); padding:20px; border:1px solid var(--lm-gray-200); }
.lm-analytics-card__header { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; }
.lm-analytics-card__label { color:var(--lm-gray-500); font-size:13px; }
.lm-analytics-card__icon { width:32px; height:32px; border-radius:8px; display:inline-flex; align-items:center; justify-content:center; }
.lm-analytics-card__icon--blue { background:#e0f2fe; color:#1d4ed8; }
.lm-analytics-card__icon--green { background:#dcfce7; color:#15803d; }
.lm-analytics-card__icon--yellow { background:#fef3c7; color:#b45309; }
.lm-analytics-card__value { font-size:2rem; font-weight:700; color:var(--lm-gray-900); }
.lm-analytics-card__subtext { color:var(--lm-gray-500); font-size:13px; }
.lm-analytics__section { background:#fff; border-radius:var(--lm-radius); border:1px solid var(--lm-gray-200); padding:20px; margin-top:16px; }
.lm-analytics__section-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; }
.lm-link { display:inline-flex; align-items:center; gap:6px; text-decoration:none; color:var(--lm-primary); }
.lm-analytics__table table { width:100%; border-collapse:collapse; }
.lm-analytics__table th, .lm-analytics__table td { padding:12px 8px; border-bottom:1px solid var(--lm-gray-200); text-align:left; }
.lm-article-row { display:flex; align-items:center; gap:10px; }
.lm-article-row img { width:40px; height:40px; object-fit:cover; border-radius:6px; }
.lm-badge { display:inline-flex; align-items:center; padding:4px 8px; font-size:11px; border-radius:999px; background:var(--lm-gray-100); color:var(--lm-gray-700); }
.lm-badge--success { background:var(--lm-primary-light); color:var(--lm-primary-dark); }
.lm-analytics__cta { background:#fff; border:1px solid var(--lm-gray-200); border-radius:var(--lm-radius); padding:20px; margin-top:16px; }

/* Settings */
.lm-settings__section { background:#fff; border:1px solid var(--lm-gray-200); border-radius:var(--lm-radius); padding:20px; margin-bottom:16px; }
.lm-settings__section--highlight { background:#f0fdf4; border-color:#bbf7d0; }
.lm-steps { list-style:none; padding:0; margin:12px 0; }
.lm-steps li { display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.lm-step-number { width:24px; height:24px; border-radius:50%; background:var(--lm-primary); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-weight:700; }
.lm-usage-options { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:16px; }
.lm-usage-option h4 { margin-top:0; display:flex; align-items:center; gap:8px; }
.lm-shortcode code { display:inline-block; background:var(--lm-gray-50); padding:6px 10px; border-radius:6px; }
.lm-badge--recommended { background:var(--lm-primary-light); color:var(--lm-primary-dark); padding:2px 8px; border-radius:10px; font-size:11px; }
.lm-actions--inline { display:flex; gap:8px; align-items:center; margin-top:10px; }
.lm-button--danger { color:#b91c1c !important; border-color:#fecaca; }
.lm-result { font-size:13px; }
