/* ─── WORKSPACE THEME VARIABLES ─── */
:root {
  --ws-bg: #f1f5f9;
  --ws-accent: #F5B50B;
  --ws-accent-rgb: 245,181,11;
  --ws-accent-hover: #d9a00a;
  --ws-accent-dark: #222020;
  --ws-nav-bg: #222020;
  --ws-nav-bg2: #1a1a1a;
  --ws-card-bg: #fff;
  --ws-card-hover: rgba(0,0,0,.08);
  --ws-text: #1e293b;
  --ws-text-muted: #64748b;
  --ws-text-heading: #222020;
  --ws-border: #e2e8f0;
  --ws-border-light: #f1f5f9;
  --ws-font: 'DM Sans','Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --ws-font-heading: 'DM Sans','Inter',sans-serif;
  --ws-table-hover: #f8fafc;
  --ws-input-border: #d1d5db;
  --ws-input-focus: #F5B50B;
  --ws-input-focus-ring: rgba(245,181,11,.15);
}

body.ws-studio {
  --ws-bg: #141414;
  --ws-accent: #F5B50B;
  --ws-accent-rgb: 245,181,11;
  --ws-accent-hover: #d9a00a;
  --ws-accent-dark: #0f0f0f;
  --ws-nav-bg: #181818;
  --ws-nav-bg2: #111;
  --ws-card-bg: #1e1e1e;
  --ws-card-hover: rgba(245,181,11,.06);
  --ws-text: #e8e8e8;
  --ws-text-muted: #999;
  --ws-text-heading: #F5B50B;
  --ws-border: #333;
  --ws-border-light: #2a2a2a;
  --ws-font: 'Montserrat','DM Sans',sans-serif;
  --ws-font-heading: 'Montserrat',sans-serif;
  --ws-table-hover: #252525;
  --ws-input-border: #444;
  --ws-input-focus: #F5B50B;
  --ws-input-focus-ring: rgba(245,181,11,.2);
}

body.ws-media {
  --ws-bg: #1a1a1a;
  --ws-accent: #DD002E;
  --ws-accent-rgb: 221,0,46;
  --ws-accent-hover: #b80026;
  --ws-accent-dark: #111;
  --ws-nav-bg: #2C2C2C;
  --ws-nav-bg2: #222;
  --ws-card-bg: #2a2a2a;
  --ws-card-hover: rgba(221,0,46,.06);
  --ws-text: #e8e8e8;
  --ws-text-muted: #aaa;
  --ws-text-heading: #DD002E;
  --ws-border: #444;
  --ws-border-light: #333;
  --ws-font: 'DM Sans','Inter',sans-serif;
  --ws-font-heading: 'DM Sans','Inter',sans-serif;
  --ws-table-hover: #303030;
  --ws-input-border: #555;
  --ws-input-focus: #DD002E;
  --ws-input-focus-ring: rgba(221,0,46,.2);
}

/* ─── LIGHT MODE VARIANTS ─── */
body.ws-studio.light {
  --ws-bg: #f5f5f0;
  --ws-nav-bg: #2a2a24;
  --ws-nav-bg2: #1e1e1a;
  --ws-card-bg: #fff;
  --ws-card-hover: rgba(245,181,11,.08);
  --ws-text: #1e1e1a;
  --ws-text-muted: #6b6b60;
  --ws-text-heading: #222020;
  --ws-border: #ddd9d0;
  --ws-border-light: #f0ece4;
  --ws-table-hover: #faf8f4;
  --ws-input-border: #c8c4bc;
}

body.ws-media.light {
  --ws-bg: #f8f6f6;
  --ws-nav-bg: #2C2C2C;
  --ws-nav-bg2: #222;
  --ws-card-bg: #fff;
  --ws-card-hover: rgba(221,0,46,.06);
  --ws-text: #1e1e1e;
  --ws-text-muted: #777;
  --ws-text-heading: #DD002E;
  --ws-border: #e0dede;
  --ws-border-light: #f2f0f0;
  --ws-table-hover: #faf8f8;
  --ws-input-border: #ccc;
}

/* Theme pill toggle in nav */
.nav-pill-toggle {
  display: inline-flex; align-items: center;
  background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px; padding: 2px; cursor: pointer;
  font-size: .7rem; color: #94a3b8; margin-left: auto; flex-shrink: 0;
  -webkit-user-select: none; user-select: none;
}
.nav-pill-toggle .pill-opt {
  padding: 4px 12px; border-radius: 999px; transition: all .2s; font-weight: 600;
}
.nav-pill-toggle .pill-opt.active { background: rgba(255,255,255,.2); color: #fff; }

/* ─── RESET & BASE ─── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--ws-font);background:var(--ws-bg);color:var(--ws-text);line-height:1.5;min-height:100vh}
body:not(.ws-studio):not(.ws-media){background:#1a1a1a}
a{color:#DD002E;text-decoration:none}
a:hover{text-decoration:underline}

/* ─── LOGIN ─── */
.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#1a1a1a}
.login-box{background:transparent;width:100%;max-width:380px;text-align:center;overflow:hidden}
.login-header{padding:2rem 2.5rem 1.5rem}
.login-logo{width:56px;height:56px;max-width:56px;max-height:56px;margin:0 auto .75rem;display:block}
.login-box h1{font-size:1.5rem;margin-bottom:.25rem;color:#fff}
.login-box p{color:#94a3b8;margin-bottom:0}
.login-body{padding:1.5rem 2.5rem 2rem}
.login-box input{width:100%;padding:.75rem 1rem;border:1px solid #334155;border-radius:8px;font-size:1rem;margin-bottom:1rem;background:#1e293b;color:#e2e8f0}
.login-box input::placeholder{color:#64748b}
.login-box button{width:100%;padding:.75rem;background:#F5B50B;color:#222020;border:none;border-radius:8px;font-size:1rem;cursor:pointer;font-weight:600}
.login-box button:hover{background:#d9a00a}

/* ─── NAV ─── */
.nav{display:flex;align-items:center;background:linear-gradient(135deg,var(--ws-nav-bg) 0%,var(--ws-nav-bg2) 100%);color:#fff;padding:0 1.5rem;height:56px;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px rgba(0,0,0,.15);border-bottom:2px solid var(--ws-accent)}
.nav-brand{font-weight:700;font-size:1.1rem;margin-right:2rem;display:flex;align-items:center;gap:.5rem}
.nav-logo{width:24px;height:24px;max-width:24px;max-height:24px;flex-shrink:0;border-radius:4px}
.nav-links{display:flex;gap:.25rem;flex:1;overflow-x:auto;scrollbar-width:none}
.nav-link{color:#94a3b8;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;transition:all .15s}
.nav-link:hover,.nav-link.active{color:var(--ws-accent);background:rgba(var(--ws-accent-rgb),0.1);text-decoration:none}
.nav-logout{margin-left:auto;color:#f87171}
.nav-toggle{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer}

/* ─── MAIN ─── */
.main{max-width:1200px;margin:0 auto;padding:1.5rem}
.page{display:none}
.page.active{display:block}
.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}
.page-header h1{font-size:1.5rem;color:var(--ws-text-heading);font-weight:700}
.header-actions{display:flex;gap:.5rem}

/* ─── DASHBOARD HEADER ─── */
.dash-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:.75rem}
.dash-header h1{font-size:1.5rem;color:var(--ws-text-heading);font-weight:700}
.dash-header-actions{display:flex;align-items:center;gap:.75rem}

/* ─── DASHBOARD MODE TOGGLE ─── */
.dash-mode-toggle{display:flex;background:#f1f5f9;border-radius:10px;padding:3px;gap:2px;box-shadow:inset 0 1px 3px rgba(0,0,0,.08)}
.dash-mode-btn{padding:8px 22px;border:none;background:transparent;color:#64748b;font-size:.85rem;font-weight:600;cursor:pointer;border-radius:8px;transition:all .25s;position:relative}
.dash-mode-btn:not(.active):hover{color:#334155;background:rgba(255,255,255,.5)}
#modeBtnDemo.active{background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;box-shadow:0 2px 8px rgba(15,23,42,.35)}
#modeBtnBuild.active{background:linear-gradient(135deg,#059669,#10b981);color:#fff;box-shadow:0 2px 8px rgba(5,150,105,.35)}

/* ─── CARDS ─── */
.card{background:var(--ws-card-bg);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px rgba(0,0,0,.06),0 0 0 1px var(--ws-border);transition:box-shadow .15s}
.card:hover{box-shadow:0 4px 12px rgba(0,0,0,.08),0 0 0 1px rgba(0,0,0,.03)}
.card h2{font-size:1.1rem;margin-bottom:1rem}

/* ─── KPIs ─── */
.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}
.kpi{background:var(--ws-card-bg);border-radius:12px;padding:1.25rem;text-align:center;box-shadow:0 1px 3px rgba(0,0,0,.08);border-left:4px solid #e2e8f0;transition:transform .15s,box-shadow .15s}
.kpi:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}
.kpi-icon{margin-bottom:.5rem;opacity:.8}
.kpi-val{font-size:2rem;font-weight:700}
.kpi-label{color:#64748b;font-size:.85rem;margin-top:.25rem}
.kpi-blue{border-left-color:#3b82f6;background:linear-gradient(135deg,#fff 60%,#eff6ff)}
.kpi-blue .kpi-val{color:#2563eb}
.kpi-blue .kpi-icon{color:#3b82f6}
.kpi-emerald{border-left-color:#10b981;background:linear-gradient(135deg,#fff 60%,#ecfdf5)}
.kpi-emerald .kpi-val{color:#059669}
.kpi-emerald .kpi-icon{color:#0f172a}
.kpi-violet{border-left-color:#8b5cf6;background:linear-gradient(135deg,#fff 60%,#f5f3ff)}
.kpi-violet .kpi-val{color:#7c3aed}
.kpi-violet .kpi-icon{color:#8b5cf6}
.kpi-gold{border-left-color:#f59e0b;background:linear-gradient(135deg,#fff 50%,#fffbeb)}
.kpi-gold .kpi-val{color:#d97706}
.kpi-gold .kpi-icon{color:#0f172a}

/* ─── TABLES ─── */
.data-table{width:100%;border-collapse:collapse;font-size:.9rem}
.data-table th{text-align:left;padding:.75rem;border-bottom:2px solid var(--ws-border);color:var(--ws-text-muted);font-weight:600;font-size:.8rem;text-transform:uppercase}
.data-table td{padding:.75rem;border-bottom:1px solid var(--ws-border-light);vertical-align:middle}
.data-table tr:hover{background:var(--ws-table-hover)}
.thumb{width:40px;height:28px;object-fit:contain;border-radius:4px;background:#f8fafc}
.thumb-lg{width:80px;height:60px;object-fit:contain;border-radius:6px;background:#f8fafc;border:1px solid #e2e8f0}
.color-dot{display:inline-block;width:16px;height:16px;border-radius:50%;vertical-align:middle}
.actions{white-space:nowrap}

/* ─── BUTTONS ─── */
.btn{padding:.6rem 1.2rem;border:none;border-radius:8px;font-size:.9rem;cursor:pointer;font-weight:500;transition:all .2s;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.btn:hover{transform:translateY(-1px);box-shadow:0 3px 8px rgba(0,0,0,.12)}
.btn:active{transform:translateY(0);box-shadow:0 1px 2px rgba(0,0,0,.05)}
.btn-primary{background:linear-gradient(135deg,#DD002E,#b80026);color:#fff}
.btn-primary:hover{background:linear-gradient(135deg,#b80026,#990020)}
.btn-secondary{background:#e2e8f0;color:#1e293b;box-shadow:none}
.btn-secondary:hover{background:#cbd5e1;box-shadow:none;transform:none}
.btn-danger{background:#fee2e2;color:#dc2626;box-shadow:none}
.btn-danger:hover{background:#fecaca}
.btn-gold{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}
.btn-gold:hover{background:linear-gradient(135deg,#d97706,#b45309)}
.btn-accent{background:linear-gradient(135deg,#059669,#047857);color:#fff}
.btn-accent:hover{background:linear-gradient(135deg,#047857,#065f46)}
.btn-sm{padding:.35rem .7rem;font-size:.8rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer}
.btn-sm:hover{background:#f1f5f9}
.btn-sm.btn-danger{border-color:#fecaca}

/* ─── FORMS ─── */
.input{width:100%;padding:.6rem .8rem;border:1px solid var(--ws-input-border);border-radius:8px;font-size:.9rem;font-family:inherit}
.input:focus{outline:none;border-color:var(--ws-input-focus);box-shadow:0 0 0 3px var(--ws-input-focus-ring)}
textarea.input{resize:vertical}
label{display:block;font-size:.85rem;font-weight:500;color:var(--ws-text);margin-bottom:.75rem}
label input,label select,label textarea{margin-top:.3rem}
.form-row{display:flex;gap:.75rem;align-items:flex-end;margin-bottom:1rem}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1rem;margin:1rem 0}
.form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.5rem}

/* ─── TABS ─── */
.tabs{display:flex;gap:.25rem;margin-bottom:1rem;border-bottom:2px solid var(--ws-border);padding-bottom:0}
.tab{padding:.6rem 1.2rem;border:none;background:none;cursor:pointer;font-size:.9rem;color:#64748b;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s}
.tab.active{color:var(--ws-accent);border-bottom-color:var(--ws-accent);font-weight:600}
.tab-content{display:none}
.tab-content.active{display:block}

/* ─── TOOLBAR ─── */
.toolbar{display:flex;gap:.5rem;margin-bottom:1rem}

/* ─── MODAL ─── */
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:200;justify-content:center;align-items:flex-start;padding:3rem 1rem;overflow-y:auto}
.modal-overlay.open{display:flex}
.modal{background:var(--ws-card-bg);border-radius:12px;padding:2rem;width:100%;max-width:520px;max-height:90vh;overflow-y:auto}
.modal-lg{max-width:720px}
.modal h2{margin-bottom:1rem}

/* ─── WIZARD ─── */
.wiz-progress{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}
.wiz-step{padding:.4rem .8rem;border-radius:6px;font-size:.8rem;background:#f1f5f9;color:#64748b}
.wiz-step.active{background:#1a56db;color:#fff}
.wiz-step.done{background:#dcfce7;color:#166534}
.wiz-mode-badge{padding:.3rem .7rem;border-radius:6px;font-size:.75rem;font-weight:700;letter-spacing:.3px;text-transform:uppercase;margin-right:.75rem}
.wiz-mode-badge.demo{background:#dbeafe;color:#1e40af}
.wiz-mode-badge.fullbuild{background:#d1fae5;color:#065f46}
.wiz-body{min-height:200px}
.partner-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;margin:1rem 0}
.partner-check{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.75rem;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:all .15s;text-align:center;font-size:.85rem}
.partner-check:has(input:checked){border-color:#1a56db;background:#eff6ff}
.partner-check input{display:none}
.success-box{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;padding:1.5rem;text-align:center}
.url-display{font-size:1.2rem;font-weight:600;margin:.75rem 0}

/* ─── SCRAPER ─── */
.scrape-results{margin-top:1rem}
.scrape-card{background:#f8fafc;border-radius:10px;padding:1.5rem;border:1px solid #e2e8f0}
.scrape-card h3{margin-bottom:.5rem}
.scrape-card h4{margin:1rem 0 .5rem;color:#64748b}
.img-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.5rem}

/* ─── FEEDBACK ─── */
.error{background:#fef2f2;color:#dc2626;padding:.75rem 1rem;border-radius:8px;margin:.75rem 0;font-size:.9rem}
.success{color:#16a34a;font-size:.9rem}
.muted{color:var(--ws-text-muted);font-size:.9rem}

/* ─── TOAST ─── */
.toast{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%) translateY(20px);background:var(--ws-accent-dark);color:#fff;padding:.75rem 1.5rem;border-radius:8px;font-size:.9rem;opacity:0;transition:all .3s;z-index:999}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ─── QUICK EDIT ─── */
.edit-list-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-alt,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:6px;font-size:.85rem}
.edit-list-item .product-card-remove{background:none;border:none;font-size:16px;cursor:pointer;color:#888;padding:2px 6px;flex-shrink:0}
.edit-list-item .product-card-remove:hover{color:#dc2626}

/* ─── PREVIEW ─── */
.preview-bar{display:flex;gap:.5rem;align-items:center;margin-bottom:.75rem;flex-wrap:wrap}
.preview-size.active{background:#1a56db;color:#fff;border-color:#1a56db}
.preview-container{background:#e2e8f0;border-radius:10px;padding:1rem;display:flex;justify-content:center;overflow:auto}
.preview-frame{border:none;border-radius:8px;background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.15);transition:width .3s,height .3s}

/* ─── SCAN PROGRESS ─── */
.scan-progress{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin:.75rem 0}
.scan-progress-dots{display:flex;gap:4px}
.scan-progress-dots span{width:8px;height:8px;border-radius:50%;background:#1a56db;animation:scanPulse 1.2s ease-in-out infinite}
.scan-progress-dots span:nth-child(2){animation-delay:.2s}
.scan-progress-dots span:nth-child(3){animation-delay:.4s}
@keyframes scanPulse{0%,100%{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}
.scan-progress-text{color:#1e40af;font-size:.9rem}

/* ─── SCAN SUMMARY ─── */
.scan-summary{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#f0fdf4;border:1px solid #86efac;border-radius:8px;margin:.75rem 0}
.scan-summary-icon{width:28px;height:28px;border-radius:50%;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;flex-shrink:0}
.scan-summary-details{color:#64748b;font-size:.85rem;margin-top:.15rem}

/* ─── PARTNER DETECTION ─── */
.partner-detected{border-color:#16a34a!important;background:#f0fdf4!important}
.partner-detected:has(input:checked){border-color:#16a34a!important;background:#dcfce7!important}
.detected-badge{display:inline-block;background:#16a34a;color:#fff;font-size:.65rem;padding:1px 6px;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}
.btn-detected{background:#f0fdf4;color:#16a34a;border-color:#86efac!important}
.btn-detected:hover{background:#dcfce7}

/* ─── UNMATCHED / DETECTED SECTIONS ─── */
.unmatched-section,.detected-products-section{margin:1rem 0;padding:1rem;border-radius:8px;background:#fffbeb;border:1px solid #fde68a}
.unmatched-section h4,.detected-products-section h4{font-size:.85rem;color:#92400e;margin-bottom:.5rem}
.detected-products-section{background:#f0fdf4;border-color:#86efac}
.detected-products-section h4{color:#166534}
.tag-chips,.tag-chips-inline{display:flex;flex-wrap:wrap;gap:.35rem}
.tag-chips-inline{display:inline-flex}
.tag-chip{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.8rem;font-weight:500}
.tag-amber{background:#fef3c7;color:#92400e;border:1px solid #fde68a}
.tag-green{background:#dcfce7;color:#166534;border:1px solid #86efac}
.tag-blue{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}

/* ─── MANUAL ADD ROW ─── */
.add-item-row{display:flex;gap:.5rem;align-items:center}
.add-item-row .input{font-size:.85rem;padding:.5rem .75rem}
.thumb-placeholder{width:40px;height:40px;background:#e2e8f0;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:12px}
.info-box{margin-bottom:1rem;padding:12px;border-radius:8px;font-size:13px}

/* ─── PRODUCT SELECTION GRID ─── */
.product-grid{margin:1rem 0}
.product-cat-group{margin-bottom:.5rem;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}
.product-cat-header{display:flex;justify-content:space-between;align-items:center;padding:.6rem .8rem;background:#f8fafc;cursor:pointer;font-weight:600;font-size:.85rem;color:#374151;user-select:none}
.product-cat-header:hover{background:#f1f5f9}
.product-cat-count{background:#e2e8f0;color:#64748b;font-size:.75rem;padding:1px 8px;border-radius:10px;font-weight:500}
.product-cat-items{padding:.5rem}
.product-cat-group.collapsed .product-cat-items{display:none}
.product-check{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .6rem;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:.82rem;margin:.2rem;transition:all .15s}
.product-check:has(input:checked){border-color:#1a56db;background:#eff6ff}
.product-check input{display:none}
.product-matched{border-color:#16a34a!important;background:#f0fdf4!important}
.product-matched:has(input:checked){border-color:#16a34a!important;background:#dcfce7!important}

/* ─── EXTRAS CARD ─── */
.extras-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;margin-bottom:1rem}
.extras-card h4{font-size:.9rem;margin-bottom:.5rem;color:#374151}
.extras-card p{font-size:.85rem;color:#475569;margin-bottom:.35rem}

/* ─── SCRAPED PRODUCT CARDS ─── */
.scraped-products-list{display:flex;flex-direction:column;gap:8px;margin-top:.75rem}
.scraped-product-card{display:flex;gap:12px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px;position:relative;transition:border-color .15s}
.scraped-product-card:hover{border-color:#94a3b8}
.product-card-img{width:80px;height:60px;object-fit:cover;border-radius:6px;flex-shrink:0;background:#f1f5f9}
.product-card-noimg{display:flex;align-items:center;justify-content:center;font-size:.7rem;color:#94a3b8}
.product-card-info{flex:1;min-width:0}
.product-card-name{font-weight:600;font-size:.9rem;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.product-card-cat{font-size:.75rem;color:#6366f1;font-weight:500;margin-bottom:3px}
.product-card-desc{font-size:.8rem;color:#64748b;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.product-card-meta{display:flex;gap:6px;margin-top:4px}
.product-card-remove{position:absolute;top:6px;right:10px;background:none;border:none;font-size:20px;color:#94a3b8;cursor:pointer;line-height:1;padding:2px 4px}
.product-card-remove:hover{color:#ef4444}

/* ─── REVIEW SUMMARY ─── */
.review-summary strong{color:#374151;font-size:.85rem}

/* ─── PROMO EDIT ─── */
.promo-card-edit .input{font-size:.85rem;padding:6px 10px}

/* ─── RESPONSIVE ─── */
@media(max-width:768px){
  .nav-links{display:none;position:absolute;top:56px;left:0;right:0;background:#0f172a;flex-direction:column;padding:1rem}
  .nav-links.open{display:flex}
  .nav-toggle{display:block}
  .nav-logout{margin-left:0}
  .form-grid{grid-template-columns:1fr}
  .page-header{flex-direction:column;align-items:flex-start;gap:.75rem}
  .dash-header{flex-direction:column;align-items:stretch;gap:.75rem}
  .dash-header h1{text-align:center}
  .dash-header-actions{justify-content:center;flex-wrap:wrap}
  .dash-mode-btn{flex:1}
}

/* ─── ANALYTICS ─── */
.analytics-card{border-top:3px solid #f59e0b}
.analytics-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}
.analytics-header h2{margin:0;font-size:1.15rem}
.analytics-controls{display:flex;gap:.5rem;align-items:center}
.analytics-select{width:auto;min-width:140px;font-size:.85rem;padding:.45rem .6rem}
.analytics-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1.25rem}
.analytics-kpi{border-radius:10px;padding:1rem 1rem .85rem;text-align:center;border:1px solid transparent;transition:transform .15s}
.analytics-kpi:hover{transform:translateY(-2px)}
.analytics-kpi-icon{margin-bottom:.4rem}
.analytics-kpi-val{font-size:1.75rem;font-weight:700}
.analytics-kpi-label{font-size:.78rem;margin-top:.2rem;opacity:.7}
/* Coloured KPI variants */
.ak-blue{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#bfdbfe}
.ak-blue .analytics-kpi-val{color:#1d4ed8}
.ak-blue .analytics-kpi-icon{color:#3b82f6}
.ak-blue .analytics-kpi-label{color:#1e40af}
.ak-emerald{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#a7f3d0}
.ak-emerald .analytics-kpi-val{color:#047857}
.ak-emerald .analytics-kpi-icon{color:#10b981}
.ak-emerald .analytics-kpi-label{color:#065f46}
.ak-amber{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#fde68a}
.ak-amber .analytics-kpi-val{color:#b45309}
.ak-amber .analytics-kpi-icon{color:#f59e0b}
.ak-amber .analytics-kpi-label{color:#92400e}
.ak-rose{background:linear-gradient(135deg,#fff1f2,#fecdd3);border-color:#fda4af}
.ak-rose .analytics-kpi-val{color:#be123c}
.ak-rose .analytics-kpi-icon{color:#f43f5e}
.ak-rose .analytics-kpi-label{color:#9f1239}
/* Chart */
.analytics-chart-section{margin-bottom:1.25rem}
.analytics-chart-section h3{font-size:.95rem;margin-bottom:.75rem;color:#374151}
.analytics-chart{display:flex;align-items:flex-end;gap:2px;height:140px;background:linear-gradient(180deg,#f8fafc,#fff);border:1px solid #e2e8f0;border-radius:10px;padding:.75rem .5rem .25rem;overflow-x:auto}
.analytics-bar-col{flex:1;min-width:6px;display:flex;flex-direction:column;align-items:center;height:100%;cursor:pointer}
.analytics-bar{background:linear-gradient(180deg,#3b82f6,#60a5fa);border-radius:4px 4px 0 0;width:100%;min-height:2px;margin-top:auto;transition:height .3s,opacity .15s}
.analytics-bar-col:hover .analytics-bar{opacity:.8}
.analytics-bar-label{font-size:.55rem;color:#94a3b8;margin-top:4px;white-space:nowrap;overflow:hidden}
/* Lists */
.analytics-lists{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.analytics-list-section h3{font-size:.95rem;margin-bottom:.5rem;color:#374151}
.analytics-list{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}
.analytics-list-item{display:flex;align-items:center;gap:.5rem;padding:.55rem .75rem;border-bottom:1px solid #f1f5f9;font-size:.85rem}
.analytics-list-item:last-child{border-bottom:none}
.analytics-list-item:hover{background:#f8fafc}
.analytics-rank{width:20px;height:20px;border-radius:50%;background:#e2e8f0;color:#475569;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.analytics-list-item:nth-child(1) .analytics-rank{background:#fef3c7;color:#92400e}
.analytics-list-item:nth-child(2) .analytics-rank{background:#e2e8f0;color:#475569}
.analytics-list-item:nth-child(3) .analytics-rank{background:#fed7aa;color:#9a3412}
.analytics-list-name{flex:1;color:#1e293b;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.analytics-list-bar-bg{width:60px;height:6px;background:#f1f5f9;border-radius:3px;flex-shrink:0;overflow:hidden}
.analytics-list-bar{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:3px;transition:width .3s}
.analytics-list-bar.ab-amber{background:linear-gradient(90deg,#f59e0b,#fbbf24)}
.analytics-list-count{font-weight:700;color:#1e293b;font-size:.8rem;min-width:24px;text-align:right}
@media(max-width:768px){
  .analytics-kpis{grid-template-columns:repeat(2,1fr)}
  .analytics-lists{grid-template-columns:1fr}
  .analytics-header{flex-direction:column;align-items:flex-start}
}

/* ─── TOKEN / SHARE ─── */
.btn-share{background:#059669;color:#fff;border-color:#059669}
.btn-share:hover{background:#047857}
.token-card{padding:12px 16px;border-radius:8px;border:1px solid var(--border,#e2e8f0);background:var(--ws-card-bg)}
.token-card.token-revoked,.token-card.token-expired{opacity:.6;background:#f8fafc}
.token-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.token-card-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.78rem;color:#64748b;margin-bottom:8px}
.token-card-actions{display:flex;gap:6px}
.token-status-badge{display:inline-block;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.03em}
.token-status-badge.token-active{background:#d1fae5;color:#065f46}
.token-status-badge.token-revoked{background:#fee2e2;color:#991b1b}
.token-status-badge.token-expired{background:#fef3c7;color:#92400e}

/* ─── CHAT MANAGEMENT ─── */
.chat-layout{display:grid;grid-template-columns:340px 1fr;gap:0;background:var(--ws-card-bg);border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.06),0 0 0 1px rgba(0,0,0,.03);overflow:hidden;height:calc(100vh - 160px);min-height:500px}
.chat-sidebar{border-right:1px solid var(--ws-border);display:flex;flex-direction:column;overflow:hidden}
.chat-filters{display:flex;gap:4px;padding:12px;border-bottom:1px solid var(--ws-border);flex-wrap:wrap;flex-shrink:0}
.chat-filter{padding:5px 12px;border:1px solid #d1d5db;border-radius:16px;background:#fff;color:#64748b;font-size:.78rem;cursor:pointer;transition:all .15s;font-weight:500}
.chat-filter:hover{border-color:#94a3b8;color:#334155}
.chat-filter.active{background:var(--ws-accent-dark);color:#fff;border-color:var(--ws-accent-dark)}
.chat-list{flex:1;overflow-y:auto}
.chat-list::-webkit-scrollbar{width:4px}
.chat-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}
.chat-list-item{padding:12px 16px;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .15s;position:relative}
.chat-list-item:hover{background:#f8fafc}
.chat-list-item.active{background:#eff6ff;border-left:3px solid #3b82f6}
.chat-list-item.unread{background:#fefce8}
.chat-list-item-top{display:flex;align-items:center;gap:6px;margin-bottom:3px}
.chat-list-name{font-weight:600;font-size:.88rem;color:#1e293b;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-list-preview{font-size:.8rem;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-list-time{font-size:.72rem;color:#94a3b8;margin-top:2px}
.chat-site-badge{display:inline-block;font-size:.65rem;font-weight:600;padding:1px 6px;border-radius:8px;text-transform:uppercase;letter-spacing:.03em}
.chat-site-badge.studio{background:#dbeafe;color:#1e40af}
.chat-site-badge.media{background:#fce7f3;color:#9d174d}
.chat-unread-dot{width:8px;height:8px;border-radius:50%;background:#ef4444;display:inline-block;flex-shrink:0}
.chat-status-badge{display:inline-block;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.03em}
.chat-status-badge.open{background:#d1fae5;color:#065f46}
.chat-status-badge.closed{background:#f3f4f6;color:#6b7280}
.chat-main{display:flex;flex-direction:column;overflow:hidden;background:var(--ws-bg)}
.chat-main-empty{display:flex;align-items:center;justify-content:center;flex:1}
.chat-conversation{display:flex;flex-direction:column;height:100%}
.chat-conv-header{padding:12px 16px;background:var(--ws-card-bg);border-bottom:1px solid var(--ws-border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.chat-conv-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.chat-conv-actions{display:flex;gap:6px}
.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}
.chat-messages::-webkit-scrollbar{width:4px}
.chat-messages::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}
.chat-bubble{max-width:75%;padding:10px 14px;border-radius:16px;font-size:.88rem;line-height:1.45;word-wrap:break-word;white-space:pre-wrap}
.chat-bubble.visitor{align-self:flex-start;background:#e2e8f0;color:#1e293b;border-bottom-left-radius:4px}
.chat-bubble.admin{align-self:flex-end;background:#1a56db;color:#fff;border-bottom-right-radius:4px}
.chat-bubble-text{margin-bottom:3px}
.chat-bubble-time{font-size:.7rem;opacity:.6}
.chat-reply-bar{padding:12px 16px;background:var(--ws-card-bg);border-top:1px solid var(--ws-border);display:flex;gap:8px;align-items:center;flex-shrink:0}
.chat-reply-bar .input{flex:1;padding:10px 14px;border:1px solid #d1d5db;border-radius:20px;font-size:.88rem;outline:none;transition:border-color .15s}
.chat-reply-bar .input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}
.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ef4444;color:#fff;font-size:.68rem;font-weight:700;margin-left:5px;line-height:1}
@media(max-width:768px){
  .chat-layout{grid-template-columns:1fr;height:auto;min-height:0}
  .chat-sidebar{max-height:300px;border-right:none;border-bottom:1px solid #e2e8f0}
  .chat-main{min-height:400px}
}

/* ─── JGT MEDIA ─── */
.media-demo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}
.media-demo-card{padding:0;overflow:hidden;display:flex;flex-direction:column}
.media-demo-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.1),0 0 0 1px rgba(0,0,0,.03)}
.media-demo-thumb{width:100%;height:160px;object-fit:cover;background:#f1f5f9;display:block}
.media-demo-nothumb{display:flex;align-items:center;justify-content:center;color:#94a3b8}
.media-demo-card-body{padding:1rem;flex:1;display:flex;flex-direction:column}
.media-demo-card-header{display:flex;gap:6px;margin-bottom:.5rem}
.media-demo-title{font-size:1rem;font-weight:600;margin-bottom:.25rem;color:#1e293b}
.media-demo-client{font-size:.85rem;color:#64748b;margin-bottom:.25rem}
.media-demo-date{font-size:.78rem;color:#94a3b8;margin-bottom:.75rem}
.media-demo-actions{display:flex;gap:6px;margin-top:auto}
.media-type-badge{display:inline-block;font-size:.65rem;font-weight:700;padding:2px 8px;border-radius:8px;text-transform:uppercase;letter-spacing:.05em}
.media-type-badge.video{background:#dbeafe;color:#1e40af}
.media-type-badge.infographic{background:#fce7f3;color:#9d174d}
.media-status-badge{display:inline-block;font-size:.65rem;font-weight:600;padding:2px 8px;border-radius:8px;text-transform:uppercase;letter-spacing:.03em}
.media-status-badge.published{background:#d1fae5;color:#065f46}
.media-status-badge.draft{background:#fef3c7;color:#92400e}
.media-type-option{display:flex;flex-direction:column;align-items:center;gap:8px;padding:1.5rem 1rem;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .15s;text-align:center}
.media-type-option:hover{border-color:#94a3b8;background:#f8fafc}
.media-type-option.selected{border-color:#1a56db;background:#eff6ff}
.media-type-option svg{color:#64748b}
.media-type-option.selected svg{color:#1a56db}
@media(max-width:768px){
  .media-demo-grid{grid-template-columns:1fr}
}

/* ─── WORKSPACE-SPECIFIC DARK OVERRIDES ─── */
body.ws-studio .btn-primary{background:linear-gradient(135deg,#F5B50B,#d97706);color:#222}
body.ws-studio .btn-primary:hover{background:linear-gradient(135deg,#d97706,#b45309)}
body.ws-studio .card, body.ws-media .card{background:var(--ws-card-bg);box-shadow:0 1px 3px rgba(0,0,0,.2),0 0 0 1px rgba(255,255,255,.03)}
body.ws-studio .kpi, body.ws-media .kpi{background:var(--ws-card-bg);box-shadow:0 1px 3px rgba(0,0,0,.2)}
body.ws-studio .data-table tr:hover, body.ws-media .data-table tr:hover{background:var(--ws-table-hover)}
body.ws-studio .btn-sm, body.ws-media .btn-sm{background:var(--ws-card-bg);border-color:var(--ws-border);color:var(--ws-text)}
body.ws-studio .btn-secondary, body.ws-media .btn-secondary{background:var(--ws-border);color:var(--ws-text)}
body.ws-studio .modal, body.ws-media .modal{background:var(--ws-card-bg);color:var(--ws-text)}
body.ws-studio .dash-mode-toggle, body.ws-media .dash-mode-toggle{background:var(--ws-border)}
body.ws-studio .thumb, body.ws-media .thumb{background:var(--ws-border)}
body.ws-studio label, body.ws-media label{color:var(--ws-text)}
body.ws-studio .input, body.ws-media .input{background:var(--ws-accent-dark);border-color:var(--ws-input-border);color:var(--ws-text)}

/* ─── COMPANY SELECTOR ─── */
#page-selector{background:#1a1a1a;min-height:100vh;align-items:center;justify-content:center;position:fixed;top:0;left:0;right:0;bottom:0;z-index:150;overflow-y:auto;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0)}
#page-selector.active{display:flex !important}
body.light #page-selector{background:#f0f0ec}
body.light .selector-card{background:#fff;border-color:#ddd}
body.light .selector-card h2{color:#1e1e1a}
body.light .selector-card p{color:#666}
body.light .selector-card-stat .stat-val{color:#1e1e1a}
body.light .selector-card-stat .stat-label{color:#888}
body.light .selector-card-logo{border-color:#ddd}
body.light .studio-card{border-color:rgba(245,181,11,.3)}
body.light .studio-card .selector-card-logo{border-color:#F5B50B}
body.light .media-card{border-color:rgba(221,0,46,.3)}
body.light .media-card .selector-card-logo{border-color:#DD002E}
body.light .selector-theme-toggle button{background:rgba(0,0,0,.06);border-color:rgba(0,0,0,.12);color:#666}
body.light .selector-theme-toggle button:hover{background:rgba(0,0,0,.1);color:#333}
.selector-theme-toggle{text-align:center;margin-top:2rem}
.selector-theme-toggle .pill-toggle{display:inline-flex;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:3px;cursor:pointer;font-size:.8rem;color:#94a3b8;-webkit-user-select:none;user-select:none}
.selector-theme-toggle .pill-option{padding:6px 16px;border-radius:999px;transition:all .2s;font-weight:600}
.selector-theme-toggle .pill-option.active{background:#DD002E;color:#fff}
body.light .selector-theme-toggle .pill-toggle{background:rgba(0,0,0,.06);border-color:rgba(0,0,0,.1);color:#999}
body.light .selector-theme-toggle .pill-option.active{background:#F5B50B;color:#1a1a1a}
.selector-container{max-width:800px;margin:0 auto;padding:3rem 1.5rem;text-align:center}
.selector-header{margin-bottom:2.5rem}
.selector-header img{width:64px;height:64px;margin:0 auto 1rem;display:block}
.selector-header h1{font-size:2rem;font-weight:700;color:#fff;margin-bottom:.5rem}
.selector-header p{color:#94a3b8;font-size:1.1rem}
.selector-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.selector-card{background:#1e1e1e;border-radius:16px;padding:2rem;cursor:pointer;transition:all .25s;border:2px solid #333;text-align:center;position:relative;overflow:hidden}
.selector-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(0,0,0,.3)}
.selector-card.studio-card{border-color:#F5B50B33}
.selector-card.studio-card:hover{border-color:#F5B50B;box-shadow:0 12px 40px rgba(245,181,11,.15)}
.selector-card.media-card{border-color:#DD002E33}
.selector-card.media-card:hover{border-color:#DD002E;box-shadow:0 12px 40px rgba(221,0,46,.15)}
.selector-card-logo{width:80px;height:80px;border-radius:50%;object-fit:cover;margin:0 auto 1.25rem;display:block;border:3px solid #333}
.studio-card .selector-card-logo{border-color:#F5B50B}
.media-card .selector-card-logo{border-color:#DD002E}
.selector-card h2{font-size:1.4rem;font-weight:700;color:#fff;margin-bottom:.5rem}
.selector-card p{color:#94a3b8;font-size:.9rem;margin-bottom:1rem}
.selector-card-stats{display:flex;justify-content:center;gap:1.5rem;margin-top:1rem}
.selector-card-stat{text-align:center}
.selector-card-stat .stat-val{font-size:1.5rem;font-weight:700;display:block}
.studio-card .stat-val{color:#F5B50B}
.media-card .stat-val{color:#DD002E}
.selector-card-stat .stat-label{font-size:.75rem;color:#666;text-transform:uppercase;letter-spacing:.05em}
.selector-card-enter{display:inline-block;margin-top:1.25rem;padding:.6rem 1.5rem;border-radius:8px;font-size:.9rem;font-weight:600;color:#fff;transition:all .2s}
.studio-card .selector-card-enter{background:linear-gradient(135deg,#F5B50B,#d97706)}
.media-card .selector-card-enter{background:linear-gradient(135deg,#DD002E,#b80026)}

/* Selector page uses dark bg */
#page-selector{background:#0f0f0f;min-height:calc(100vh - 2rem);border-radius:12px}

/* ─── WORKSPACE NAV ENHANCEMENTS ─── */
.ws-back-btn{background:none;border:1px solid #444;color:#94a3b8;width:32px;height:32px;border-radius:8px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}
.ws-back-btn:hover{color:#fff;border-color:#666;background:rgba(255,255,255,.05)}
.nav-brand-label{font-weight:700;font-size:1rem}

/* ─── CAMPAIGN WORKSPACE ─── */
.campaign-ws-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}
.campaign-ws-header h1{font-size:1.3rem;flex:1}
.campaign-ws-meta{display:flex;gap:.75rem;align-items:center}

/* ─── SOCIAL FEED PREVIEW ─── */
.social-feed{display:flex;flex-direction:column;gap:1rem;max-width:480px;margin:1.5rem auto}
.social-post-card{background:var(--ws-card-bg);border-radius:12px;overflow:hidden;border:1px solid var(--ws-border);transition:all .2s;cursor:pointer}
.social-post-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.15)}
.social-post-header{display:flex;align-items:center;gap:10px;padding:12px 16px}
.social-post-logo{width:36px;height:36px;border-radius:50%;object-fit:cover}
.social-post-author{font-weight:600;font-size:.9rem;color:var(--ws-text)}
.social-post-platform{font-size:.7rem;color:var(--ws-text-muted);margin-left:auto;padding:2px 8px;background:var(--ws-border-light);border-radius:6px}
.social-post-image{width:100%;max-height:300px;object-fit:cover}
.social-post-body{padding:12px 16px}
.social-post-title{font-weight:600;font-size:.95rem;color:var(--ws-text);margin-bottom:.35rem}
.social-post-desc{font-size:.85rem;color:var(--ws-text-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.social-post-desc.expanded{-webkit-line-clamp:unset}
.social-post-footer{padding:8px 16px;border-top:1px solid var(--ws-border-light);display:flex;align-items:center;gap:.5rem}
.social-post-cta{font-size:.8rem;color:var(--ws-accent);font-weight:600;text-decoration:none}

/* ─── LANDING PAGE BUILDER ─── */
.landing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}
.landing-card{background:var(--ws-card-bg);border-radius:12px;overflow:hidden;border:1px solid var(--ws-border);transition:all .2s}
.landing-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.15)}
.landing-card-preview{height:140px;background:#1a1a1a;position:relative;overflow:hidden}
.landing-card-body{padding:1rem}
.landing-card-title{font-weight:600;font-size:1rem;color:var(--ws-text);margin-bottom:.25rem}
.landing-card-client{font-size:.85rem;color:var(--ws-text-muted);margin-bottom:.75rem}
.landing-card-actions{display:flex;gap:6px}
.landing-block{padding:1rem;border:1px dashed var(--ws-border);border-radius:8px;margin-bottom:.75rem;position:relative}
.landing-block-remove{position:absolute;top:6px;right:6px;background:none;border:none;color:#94a3b8;cursor:pointer;font-size:1.1rem}
.landing-block-remove:hover{color:#ef4444}

/* ─── MEDIA DASHBOARD ─── */
.media-dash-activity{margin-top:1.5rem}
.media-dash-activity h3{font-size:1rem;margin-bottom:.75rem;color:var(--ws-text)}
.activity-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--ws-border-light)}
.activity-item:last-child{border-bottom:none}
.activity-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.activity-dot.published{background:#10b981}
.activity-dot.draft{background:#f59e0b}
.activity-dot.campaign{background:#DD002E}
.activity-text{flex:1;font-size:.85rem;color:var(--ws-text)}
.activity-time{font-size:.75rem;color:var(--ws-text-muted)}

/* ─── QUICK ACTIONS ─── */
.quick-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}
.quick-action-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--ws-card-bg);border:1px solid var(--ws-border);border-radius:10px;cursor:pointer;transition:all .15s;font-size:.9rem;color:var(--ws-text)}
.quick-action-btn:hover{border-color:var(--ws-accent);background:rgba(var(--ws-accent-rgb),.05)}

/* ─── SOCIAL POSTING TOOL ─── */
.social-composer{background:var(--ws-card-bg);border-radius:12px;border:1px solid var(--ws-border);padding:1.5rem;margin-bottom:1.5rem}
.social-composer h3{font-size:1rem;margin-bottom:1rem;color:var(--ws-text)}
.social-composer-platforms{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}
.platform-toggle{padding:.5rem 1rem;border:2px solid var(--ws-border);border-radius:8px;background:var(--ws-card-bg);color:var(--ws-text-muted);cursor:pointer;font-size:.85rem;font-weight:500;transition:all .15s}
.platform-toggle:hover{border-color:var(--ws-text-muted)}
.platform-toggle.active{border-color:var(--ws-accent);color:var(--ws-accent);background:rgba(var(--ws-accent-rgb),.08)}
.platform-toggle .platform-icon{margin-right:.35rem}
.social-composer-body textarea{min-height:100px;resize:vertical}
.social-composer-media{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}
.social-composer-footer{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;gap:.75rem;flex-wrap:wrap}
.social-composer-schedule{display:flex;align-items:center;gap:.5rem}
.social-composer-schedule input{width:auto}

/* ─── SCHEDULE TIMELINE ─── */
.schedule-timeline{margin-top:1.5rem}
.schedule-timeline h3{font-size:1rem;margin-bottom:1rem;color:var(--ws-text)}
.schedule-week{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;margin-bottom:1rem}
.schedule-day{background:var(--ws-card-bg);border:1px solid var(--ws-border);border-radius:8px;padding:.5rem;min-height:80px;position:relative}
.schedule-day-label{font-size:.7rem;color:var(--ws-text-muted);text-transform:uppercase;margin-bottom:.35rem;font-weight:600}
.schedule-day-date{font-size:.8rem;color:var(--ws-text);font-weight:600;margin-bottom:.35rem}
.schedule-day.today{border-color:var(--ws-accent);background:rgba(var(--ws-accent-rgb),.04)}
.schedule-day.has-posts{border-color:var(--ws-accent)}
.schedule-post-pip{display:flex;align-items:center;gap:4px;padding:3px 6px;border-radius:4px;font-size:.7rem;margin-bottom:3px;cursor:pointer;transition:background .15s}
.schedule-post-pip:hover{opacity:.8}
.schedule-post-pip.draft{background:#fef3c7;color:#92400e}
.schedule-post-pip.scheduled{background:#dbeafe;color:#1e40af}
.schedule-post-pip.published{background:#d1fae5;color:#065f46}

/* ─── PUBLISHED POST CARD ─── */
.published-post-card{background:var(--ws-card-bg);border:1px solid var(--ws-border);border-radius:10px;padding:1rem;margin-bottom:.75rem;display:flex;gap:1rem;align-items:flex-start}
.published-post-card:hover{border-color:var(--ws-accent)}
.published-post-thumb{width:60px;height:60px;border-radius:8px;object-fit:cover;flex-shrink:0;background:var(--ws-border)}
.published-post-info{flex:1;min-width:0}
.published-post-title{font-weight:600;font-size:.9rem;color:var(--ws-text);margin-bottom:.25rem}
.published-post-meta{font-size:.78rem;color:var(--ws-text-muted);display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:.35rem}
.published-post-url{font-size:.78rem;color:var(--ws-accent);word-break:break-all}
.published-post-metrics{display:flex;gap:1rem;margin-top:.5rem}
.published-post-metric{font-size:.78rem;color:var(--ws-text-muted)}
.published-post-metric strong{color:var(--ws-text);font-size:.9rem}

@media(max-width:768px){
  .selector-cards{grid-template-columns:1fr}
  .selector-container{padding:1.5rem 1rem}
  .selector-card{padding:1.5rem}
  .selector-card-logo{width:60px;height:60px}
  .selector-card h2{font-size:1.2rem}
  .selector-card-stats{gap:1rem}
  .selector-card-stat .stat-val{font-size:1.2rem}
  .schedule-week{grid-template-columns:repeat(3,1fr)}
}
