:root,
[data-theme="cream"]{--bg:#fdfbf7;--bg2:#f8f5f0;--bg3:#ffffff;--text:#1a1a1a;--text2:#4a4a4a;--text3:#7a7a7a;--accent:#d97706;--accent-dim:rgba(217,119,6,0.1);--accent-hover:#b45309;--success:#16a34a;--success-dim:rgba(22,163,74,0.12);--error:#dc2626;--error-dim:rgba(220,38,38,0.12);--info:#2563eb;--info-dim:rgba(37,99,235,0.12);--border:#d4cfc4;--radius:16px;--shadow:0 4px 24px rgba(0,0,0,0.06);--panel:var(--bg3);--surface:var(--bg3);--surface-hover:rgba(0,0,0,0.04);--ink:var(--text);--muted:var(--text3);--line:var(--border);--cyan:#0891b2;--teal:#0d9488}
[data-theme="ocean"]{--bg:#f0f9ff;--bg2:#e0f2fe;--bg3:#ffffff;--text:#0c4a6e;--text2:#075985;--text3:#0369a1;--accent:#0284c7;--accent-dim:rgba(2,132,199,0.1);--accent-hover:#0369a1;--success:#059669;--success-dim:rgba(5,150,105,0.12);--error:#dc2626;--error-dim:rgba(220,38,38,0.12);--info:#0284c7;--info-dim:rgba(2,132,199,0.12);--border:#bae6fd;--radius:16px;--shadow:0 4px 24px rgba(0,0,0,0.06);--panel:var(--bg3);--surface:var(--bg3);--surface-hover:rgba(0,0,0,0.04);--ink:var(--text);--muted:var(--text3);--line:var(--border);--cyan:#0284c7;--teal:#0d9488}
[data-theme="tanzanite"]{--bg:#0f0d1a;--bg2:#1a1625;--bg3:#252136;--text:#e8e4f0;--text2:#c4bdd4;--text3:#8b82a8;--accent:#a78bfa;--accent-dim:rgba(167,139,250,0.15);--accent-hover:#8b5cf6;--success:#4ade80;--success-dim:rgba(74,222,128,0.15);--error:#f87171;--error-dim:rgba(248,113,113,0.15);--info:#60a5fa;--info-dim:rgba(96,165,250,0.15);--border:#3d3654;--radius:16px;--shadow:0 18px 44px rgba(0,0,0,0.4);--panel:var(--bg2);--surface:var(--bg3);--surface-hover:rgba(255,255,255,0.05);--ink:var(--text);--muted:var(--text3);--line:var(--border);--cyan:#a78bfa;--teal:#8b5cf6}
[data-theme="midnight"]{--bg:#0b1221;--bg2:#101827;--bg3:#1a2436;--text:#f8fafc;--text2:#94a3b8;--text3:#64748b;--accent:#10b981;--accent-dim:rgba(16,185,129,0.15);--accent-hover:#059669;--success:#4caf50;--success-dim:rgba(76,175,80,0.15);--error:#ef4444;--error-dim:rgba(239,68,68,0.15);--info:#3b82f6;--info-dim:rgba(59,130,246,0.15);--border:rgba(255,255,255,0.06);--radius:16px;--shadow:0 18px 44px rgba(0,0,0,0.4);--panel:var(--bg2);--surface:var(--bg3);--surface-hover:rgba(255,255,255,0.05);--ink:var(--text);--muted:var(--text3);--line:#334155;--cyan:#06b6d4;--teal:#10b981}
[data-theme="obsidian"]{--bg:#09090b;--bg2:#18181b;--bg3:#27272a;--text:#fafafa;--text2:#d4d4d8;--text3:#71717a;--accent:#f59e0b;--accent-dim:rgba(245,158,11,0.15);--accent-hover:#d97706;--success:#4ade80;--success-dim:rgba(74,222,128,0.15);--error:#f87171;--error-dim:rgba(248,113,113,0.15);--info:#60a5fa;--info-dim:rgba(96,165,250,0.15);--border:#3f3f46;--radius:16px;--shadow:0 18px 44px rgba(0,0,0,0.4);--panel:var(--bg2);--surface:var(--bg3);--surface-hover:rgba(255,255,255,0.05);--ink:var(--text);--muted:var(--text3);--line:var(--border);--cyan:#f59e0b;--teal:#d97706}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'DM Sans',system-ui,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;line-height:1.5}
body.toolbar-active{padding-top:56px}
h1,h2,h3{font-family:'Fraunces',Georgia,serif;font-weight:600}

/* Unified Toolbar */
.app-toolbar{position:fixed;top:0;left:0;right:0;height:56px;background:var(--bg2);border-bottom:1px solid var(--border);display:none;align-items:center;justify-content:space-between;padding:0 16px;z-index:1000;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.app-toolbar.active{display:flex}
.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:12px}
.toolbar-center{flex:1;display:flex;align-items:center;justify-content:center;gap:12px}
.toolbar-btn{width:44px;height:44px;border:1px solid var(--border);background:var(--bg2);color:var(--text);border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s ease}
.toolbar-btn svg{width:20px;height:20px;display:block}
.toolbar-btn:hover{border-color:var(--accent)}
.toolbar-btn:active{transform:scale(0.95)}
.toolbar-logo{display:flex;align-items:center;gap:10px}
.toolbar-logo .logo-icon-img{width:32px;height:32px;object-fit:contain}
.toolbar-logo .logo-text{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:1.25rem;color:var(--text)}
@media (max-width:600px){.toolbar-logo .logo-text{display:none}}

/* Dashboard Button */
.toolbar-dashboard-btn{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 1rem;background:linear-gradient(135deg,var(--accent),var(--accent-hover));border:none;border-radius:8px;font-size:0.8125rem;font-weight:700;color:white;cursor:pointer;transition:all 0.15s}
.toolbar-dashboard-btn:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 12px rgba(196,160,82,0.3)}
.toolbar-dashboard-btn svg{opacity:0.9}

/* Theme Selector */
.theme-selector{display:flex;align-items:center;gap:8px}
.theme-label{display:flex;align-items:center;color:var(--text3)}
.theme-label svg{width:18px;height:18px}
.theme-selector select{appearance:none;background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:8px 32px 8px 12px;font-size:0.875rem;font-family:inherit;color:var(--text);cursor:pointer;transition:all 0.2s ease;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}
.theme-selector select:hover{border-color:var(--accent)}
.theme-selector select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}
@media (max-width:768px){.theme-selector select{padding:6px 28px 6px 10px;font-size:0.8rem}}
@media (max-width:480px){.theme-selector{display:none}}

/* Profile Button & Dropdown */
.toolbar-profile{position:relative}
.profile-btn{display:flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;background:transparent;border:1px solid var(--border);border-radius:24px;cursor:pointer;transition:all 0.2s ease}
.profile-btn:hover{background:var(--bg3);border-color:var(--text3)}
.profile-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-hover));color:white;font-weight:700;font-size:0.8rem;display:flex;align-items:center;justify-content:center}
.profile-name{font-size:0.875rem;font-weight:500;color:var(--text);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-chevron{color:var(--text3);transition:transform 0.2s ease}
.toolbar-profile.open .profile-chevron{transform:rotate(180deg)}
@media (max-width:600px){.profile-name{display:none}.profile-btn{padding:6px;border-radius:50%}.profile-chevron{display:none}}
.profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:280px;background:var(--bg2);border:1px solid var(--border);border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,0.15);opacity:0;visibility:hidden;transform:translateY(-10px) scale(0.95);transform-origin:top right;transition:all 0.2s ease;z-index:1001}
.toolbar-profile.open .profile-dropdown{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.dropdown-user-info{display:flex;align-items:center;gap:12px;padding:16px}
.dropdown-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-hover));color:white;font-weight:700;font-size:1.1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dropdown-user-details{flex:1;min-width:0}
.dropdown-user-name{font-weight:600;font-size:0.95rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dropdown-user-email{font-size:0.8rem;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dropdown-user-plan{font-size:0.7rem;color:var(--accent);text-transform:uppercase;letter-spacing:0.5px;margin-top:2px}
.dropdown-divider{height:1px;background:var(--border);margin:0}
.dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:transparent;border:none;color:var(--text);font-size:0.9rem;cursor:pointer;transition:background 0.15s ease;text-align:left}
.dropdown-item:hover{background:var(--bg3)}
.dropdown-item:last-child{border-radius:0 0 12px 12px}
.dropdown-item svg{color:var(--text3);flex-shrink:0}

/* App Launcher */
.app-launcher-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.3);opacity:0;visibility:hidden;transition:opacity 0.2s ease;z-index:998}
.app-launcher-overlay.active{opacity:1;visibility:visible}
.app-launcher{position:fixed;top:64px;left:16px;width:320px;background:var(--bg2);border:1px solid var(--border);border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,0.15);opacity:0;visibility:hidden;transform:scale(0.9) translateY(-10px);transform-origin:top left;transition:all 0.2s cubic-bezier(0.4,0,0.2,1);z-index:999;overflow:hidden}
.app-launcher.active{opacity:1;visibility:visible;transform:scale(1) translateY(0)}
.app-launcher-header{padding:16px 20px;border-bottom:1px solid var(--border);font-weight:600;font-size:0.9rem;color:var(--text)}
.app-launcher-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:12px}
.app-launcher-item{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 16px;background:transparent;border:1px solid transparent;border-radius:12px;cursor:pointer;transition:all 0.2s ease;text-decoration:none;color:var(--text)}
.app-launcher-item:hover{background:var(--bg3);border-color:var(--border)}
.app-launcher-item.current{background:var(--bg3);border-color:var(--accent)}
.app-launcher-icon{width:52px;height:52px;border-radius:12px;background:var(--bg3);display:flex;align-items:center;justify-content:center;color:var(--accent);transition:all 0.2s ease}
.app-emoji{font-size:1.5rem;line-height:1}
.app-launcher-item:hover .app-launcher-icon{transform:scale(1.05);box-shadow:0 4px 12px rgba(0,0,0,0.1)}
.app-launcher-label{font-size:0.8rem;font-weight:500;text-align:center;color:var(--text);line-height:1.3}
@media (max-width:400px){.app-launcher{left:8px;right:8px;width:auto}}

/* Footer */
.footer{padding:24px 16px 40px;background:var(--bg2);border-top:1px solid var(--border);margin-top:auto}
.ai-disclaimer{background:linear-gradient(145deg,rgba(255,184,0,0.08) 0%,rgba(255,184,0,0.03) 100%);border:1px solid rgba(255,184,0,0.15);border-radius:16px;padding:18px;margin:0 auto 24px;max-width:800px}
.ai-disclaimer-title{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:#FFB800;margin-bottom:10px;text-transform:uppercase;letter-spacing:1px}
.ai-disclaimer-text{font-size:11px;line-height:1.7;color:var(--text3)}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;margin-bottom:20px}
.footer-link{font-size:12px;font-weight:500;color:var(--text3);text-decoration:none;transition:all 0.2s ease}
.footer-link:hover{color:var(--accent)}
.footer-copyright{text-align:center;font-size:11px;color:var(--text3);letter-spacing:0.5px}

/* Legacy Header (kept for compatibility) */
.header{display:none}
.logo{display:flex;align-items:center;gap:0.75rem}
.logo-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--accent),var(--accent-hover));border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:700;color:white;font-size:1.25rem}
.logo-text{font-family:'Fraunces',serif;font-size:1.125rem;font-weight:600}
.logo-version{font-size:0.625rem;font-weight:700;color:var(--accent);background:var(--accent-dim);padding:0.25rem 0.5rem;border-radius:6px;margin-left:0.5rem}
.header-right{display:flex;align-items:center;gap:1rem}
.status{display:flex;align-items:center;gap:0.5rem;font-size:0.75rem;font-weight:600;padding:0.375rem 0.75rem;border-radius:20px;cursor:pointer}
.status.connected{background:var(--success-dim);color:var(--success)}
.status.sending{background:var(--info-dim);color:var(--info)}
.status.disconnected{background:var(--error-dim);color:var(--error)}
.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor}
.status.sending .status-dot{animation:pulse 1s infinite}
@keyframes pulse{50%{opacity:0.4}}
.theme-btns{display:flex;gap:0.25rem}
.theme-btn{width:24px;height:24px;border-radius:6px;border:2px solid transparent;cursor:pointer;padding:0;background:transparent}
.theme-btn.active{border-color:var(--accent)}
.theme-dot{width:16px;height:16px;border-radius:4px;margin:auto;display:block}
.theme-dot.warm{background:linear-gradient(135deg,#FAFAFA 50%,#C4A052 50%)}
.theme-dot.midnight{background:linear-gradient(135deg,#09090B 50%,#D4956A 50%)}
.theme-dot.pearl{background:linear-gradient(135deg,#FAF9F6 50%,#B8964B 50%)}
.theme-dot.royal{background:linear-gradient(135deg,#0F172A 50%,#FBBF24 50%)}
.settings-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:var(--bg2);color:var(--text3);cursor:pointer;display:flex;align-items:center;justify-content:center}
.settings-btn:hover{color:var(--accent);border-color:var(--accent)}

/* Main Container */
.main{max-width:800px;margin:0 auto;padding:2rem}

/* Drop Zone - THE HERO */
.drop-zone{background:var(--bg2);border:2px dashed var(--border);border-radius:var(--radius);padding:3rem 2rem;text-align:center;cursor:pointer;transition:all 0.2s;margin-bottom:1rem}
.drop-zone:hover,.drop-zone.drag-over{border-color:var(--accent);background:var(--accent-dim)}
.drop-zone.processing{border-color:var(--info);background:var(--info-dim);pointer-events:none}
.drop-icon{width:56px;height:56px;margin:0 auto 1rem;color:var(--text3);opacity:0.5}
.drop-zone:hover .drop-icon{color:var(--accent);opacity:1}
.drop-title{font-size:1.25rem;font-weight:600;margin-bottom:0.5rem}
.drop-subtitle{color:var(--text2);margin-bottom:1rem}
.drop-hint{display:flex;justify-content:center;gap:2rem;font-size:0.8125rem;color:var(--text3)}
.drop-hint span{display:flex;align-items:center;gap:0.375rem}

/* Text Input Section */
.text-input-section{margin-bottom:1.5rem}
.text-input-divider{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}
.text-input-divider::before,.text-input-divider::after{content:'';flex:1;height:1px;background:var(--border)}
.text-input-divider span{font-size:0.75rem;color:var(--text3);text-transform:uppercase;letter-spacing:0.5px;white-space:nowrap}
.text-input-wrap{position:relative}
.text-input-area{width:100%;min-height:120px;padding:1rem;padding-right:5rem;border:1px solid var(--border);border-radius:12px;font-size:0.9375rem;background:var(--bg2);color:var(--text);font-family:inherit;resize:vertical;box-sizing:border-box;line-height:1.6}
.text-input-area:focus{outline:none;border-color:var(--accent);background:var(--bg)}
.text-input-area::placeholder{color:var(--text3)}
.text-input-btn{position:absolute;bottom:0.75rem;right:0.75rem;padding:0.625rem 1rem;background:var(--accent);color:white;border:none;border-radius:8px;font-size:0.8125rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:0.375rem;transition:all 0.2s}
.text-input-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.text-input-btn:disabled{opacity:0.5;cursor:not-allowed;transform:none}
.text-input-hint{font-size:0.6875rem;color:var(--text3);text-align:right;margin-top:0.375rem}

/* URL Bar */
.url-bar{display:flex;gap:0.5rem;margin-bottom:1.5rem}
.url-bar-glow{animation:urlBarGlow 3s ease-in-out infinite}
@keyframes urlBarGlow{0%,100%{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 12px rgba(217,119,6,0.4))}}
.url-input{flex:1;padding:0.75rem 1rem;border:1px solid var(--border);border-radius:10px;font-size:0.9375rem;background:var(--bg2);color:var(--text)}
.url-input:focus{outline:none;border-color:var(--accent)}
.url-input-glow{transition:all 0.3s;animation:inputGlow 3s ease-in-out infinite}
@keyframes inputGlow{0%,100%{box-shadow:0 0 0 transparent}50%{box-shadow:0 0 8px rgba(217,119,6,0.3),inset 0 0 4px rgba(217,119,6,0.1)}}
.url-btn{padding:0.75rem 1.25rem;border:none;border-radius:10px;font-size:0.875rem;font-weight:600;cursor:pointer;background:var(--bg3);color:var(--text);display:flex;align-items:center;gap:0.375rem}
.url-btn:hover{background:var(--accent-dim);color:var(--accent)}
.url-btn-glow{background:linear-gradient(135deg,var(--accent),var(--accent-hover));color:white;animation:btnGlow 3s ease-in-out infinite}
.url-btn-glow:hover{filter:brightness(1.1);transform:translateY(-1px)}
@keyframes btnGlow{0%,100%{box-shadow:0 2px 8px rgba(217,119,6,0.3)}50%{box-shadow:0 4px 20px rgba(217,119,6,0.5)}}

/* AI Analysis Card */
.analysis-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.5rem;overflow:hidden;display:none}
.analysis-card.show{display:block}
.analysis-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:var(--bg3);border-bottom:1px solid var(--border)}
.analysis-title{display:flex;align-items:center;gap:0.5rem;font-size:0.875rem;font-weight:600}
.analysis-title svg{color:var(--success)}
.analysis-confidence{font-size:0.75rem;color:var(--text2);background:var(--bg2);padding:0.25rem 0.625rem;border-radius:6px}
.analysis-body{padding:1.25rem}
.analysis-detected{font-size:1.125rem;font-weight:600;margin-bottom:1rem;color:var(--accent)}
.analysis-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.analysis-field label{display:block;font-size:0.6875rem;font-weight:600;text-transform:uppercase;color:var(--text3);margin-bottom:0.375rem}
.analysis-field input,.analysis-field textarea{width:100%;padding:0.625rem;border:1px solid var(--border);border-radius:8px;font-size:0.875rem;background:var(--bg);color:var(--text);font-family:inherit}
.analysis-field textarea{resize:none;height:60px}
.analysis-field.full{grid-column:1/-1}
.analysis-actions{display:flex;justify-content:flex-end;gap:0.5rem;padding:1rem 1.25rem;border-top:1px solid var(--border);background:var(--bg3)}

/* Generate Button */
.generate-section{text-align:center;margin-bottom:2rem}
.generate-btn{padding:1rem 3rem;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;background:linear-gradient(135deg,var(--accent),var(--accent-hover));color:white;display:inline-flex;align-items:center;gap:0.625rem;box-shadow:0 4px 16px rgba(196,160,82,0.3);transition:all 0.2s}
.generate-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(196,160,82,0.4)}
.generate-btn:disabled{opacity:0.5;cursor:not-allowed;transform:none}
.generate-btn svg{width:20px;height:20px}

/* Output Section - Full Screen Creative Studio Style */
.output-section{display:none;position:fixed;top:56px;left:0;right:0;bottom:0;background:var(--bg);z-index:200;flex-direction:column}
.output-section.show{display:flex}
.output-topbar{display:flex;align-items:center;justify-content:space-between;padding:0.5rem 1rem;background:var(--bg2);border-bottom:1px solid var(--border)}
.output-topbar-left{display:flex;align-items:center;gap:0.75rem}
.output-topbar-right{display:flex;align-items:center;gap:0.375rem}
.back-btn{display:flex;align-items:center;gap:0.375rem;padding:0.375rem 0.75rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;font-size:0.6875rem;font-weight:600;color:var(--text2);cursor:pointer}
.back-btn:hover{border-color:var(--accent);color:var(--accent)}
.dashboard-btn{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 1rem;background:linear-gradient(135deg,var(--accent),var(--accent-hover));border:none;border-radius:8px;font-size:0.75rem;font-weight:700;color:var(--accent-text);cursor:pointer;transition:all 0.15s}
.dashboard-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.dashboard-btn svg{opacity:0.9}
.output-title-divider{color:var(--border);margin:0 0.5rem;font-weight:300}
.header-dashboard-btn{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 1rem;background:linear-gradient(135deg,var(--accent),var(--accent-hover));border:none;border-radius:8px;font-size:0.8125rem;font-weight:700;color:var(--accent-text);cursor:pointer;transition:all 0.15s;margin-left:1.5rem}
.header-dashboard-btn:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 12px rgba(212,168,83,0.3)}
.header-dashboard-btn svg{opacity:0.9}
.output-columns{flex:1;display:grid;grid-template-columns:280px 1fr;overflow:hidden;min-height:0}
@media(max-width:900px){.output-columns{grid-template-columns:1fr}.output-left{display:none}}

/* Left Column - Score & Brief */
.output-left{display:flex;flex-direction:column;background:var(--bg);border-right:1px solid var(--border);overflow-y:auto;width:280px}
.output-left-header{padding:0.5rem 0.75rem;background:var(--bg2);border-bottom:1px solid var(--border)}
.output-left-title{font-size:0.625rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--text3)}

/* Score Card */
.score-card{background:var(--bg2);margin:0.5rem;border-radius:10px;border:1px solid var(--border);overflow:hidden}
.score-card-header{background:linear-gradient(135deg,var(--success-dim) 0%,transparent 100%);padding:0.75rem;display:flex;align-items:center;justify-content:center;gap:1rem;border-bottom:1px solid var(--border)}
.score-circle{width:60px;height:60px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:3px solid var(--success);background:var(--success-dim)}
.score-circle-value{font-size:1.375rem;font-weight:700;font-family:'Fraunces',serif;line-height:1;color:var(--success)}
.score-circle-label{font-size:0.4375rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--text3);margin-top:2px}
.score-breakdown{padding:0.5rem}
.score-breakdown-title{font-size:0.5625rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--text3);margin-bottom:0.375rem}
.score-list{display:flex;flex-direction:column;gap:0.25rem}
.score-item{display:flex;justify-content:space-between;align-items:center;padding:0.25rem 0.5rem;background:var(--bg);border-radius:4px;font-size:0.6875rem}
.score-item-label{color:var(--text2)}
.score-item-value{font-weight:600;color:var(--success)}

/* Proof Badge */
.proof-badge{margin:0 0.5rem 0.5rem;padding:0.5rem;background:var(--accent-dim);border:1px solid var(--accent);border-radius:8px;text-align:center}
.proof-badge-value{font-size:1.125rem;font-weight:700;color:var(--accent);font-family:'Fraunces',serif}
.proof-badge-label{font-size:0.5625rem;font-weight:600;text-transform:uppercase;color:var(--accent);margin-top:0.125rem}

/* Brief Summary */
.brief-summary{padding:0.5rem;border-top:1px solid var(--border)}
.brief-summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.375rem}
.brief-summary-title{font-size:0.5625rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--accent)}
.brief-item{margin-bottom:0.375rem}
.brief-item.editable{margin-bottom:0.5rem}
.brief-item-label{font-size:0.5625rem;font-weight:600;color:var(--text3);margin-bottom:0.125rem}
.brief-item-value{font-size:0.6875rem;color:var(--text);line-height:1.4}
.brief-item-input{width:100%;padding:0.375rem 0.5rem;background:var(--bg);border:1px solid var(--border);border-radius:4px;font-size:0.6875rem;color:var(--text);font-family:inherit;box-sizing:border-box}
.brief-item-input:focus{outline:none;border-color:var(--accent)}
.brief-item-select{width:100%;padding:0.375rem 0.5rem;background:var(--bg);border:1px solid var(--border);border-radius:4px;font-size:0.6875rem;color:var(--text);font-family:inherit;cursor:pointer;box-sizing:border-box}
.brief-item-select:focus{outline:none;border-color:var(--accent)}
.brief-apply-btn{width:100%;padding:0.375rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;font-size:0.6875rem;font-weight:600;color:var(--text2);cursor:pointer;margin-top:0.5rem;transition:all 0.15s}
.brief-apply-btn:hover{background:var(--accent);border-color:var(--accent);color:white}

/* Right Column - Content */
.output-right{display:flex;flex-direction:column;background:var(--bg2);overflow:hidden;min-height:0}
.output-right-header{display:flex;align-items:center;justify-content:space-between;padding:0.375rem 0.75rem;background:var(--bg2);border-bottom:2px solid var(--accent);flex-shrink:0}
.output-right-title{display:flex;align-items:center;gap:0.375rem;font-size:0.625rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--accent)}
.variation-badge{display:inline-flex;align-items:center;gap:0.25rem;padding:0.1875rem 0.5rem;background:linear-gradient(135deg,rgba(139,92,246,0.15),rgba(59,130,246,0.15));border:1px solid rgba(139,92,246,0.3);border-radius:12px;font-size:0.625rem;font-weight:600;color:#7c3aed;cursor:help}
.variation-badge-value{font-weight:800;color:#5b21b6}
.output-right-actions{display:flex;gap:0.375rem}
.output-right-scroll{flex:1;overflow-y:auto;min-height:0}
.output-content-scroll{position:relative;background:#fff;min-height:300px}
.output-iframe{width:100%;height:450px;border:none}
.output-content-inner{font-size:0.875rem;line-height:1.7;white-space:pre-wrap;color:var(--text);padding:1rem 1.25rem}

/* View Toggle */
.view-toggle{display:flex;gap:0.125rem;background:var(--bg);border-radius:6px;padding:0.125rem}
.view-toggle-btn{padding:0.25rem 0.5rem;border:none;background:transparent;border-radius:4px;font-size:0.625rem;font-weight:600;color:var(--text3);cursor:pointer}
.view-toggle-btn.active{background:var(--accent);color:white}
.view-toggle-btn:hover:not(.active){color:var(--text)}

/* Output Header Actions */
.output-header-actions{display:flex;align-items:center;gap:0.5rem}

/* Export Dropdown */
.export-dropdown{position:relative}
.export-dropdown-btn{display:flex;align-items:center;gap:0.25rem;padding:0.25rem 0.5rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;font-size:0.6875rem;font-weight:600;color:var(--text);cursor:pointer;transition:all 0.15s}
.export-dropdown-btn:hover{border-color:var(--accent);color:var(--accent)}
.export-menu{position:absolute;top:calc(100% + 0.375rem);right:0;background:var(--bg);border:1px solid var(--border);border-radius:10px;box-shadow:0 6px 24px rgba(0,0,0,0.12);min-width:180px;z-index:100;display:none;overflow:hidden}
.export-menu.show{display:block;animation:fadeIn 0.15s ease}
@keyframes fadeIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.export-menu-item{display:flex;align-items:center;gap:0.5rem;width:100%;padding:0.5rem 0.75rem;border:none;background:none;font-size:0.75rem;color:var(--text);cursor:pointer;text-align:left;transition:background 0.1s}
.export-menu-item:hover{background:var(--accent-dim)}
.export-icon{font-size:0.875rem;width:1rem;text-align:center}
.export-badge{margin-left:auto;font-size:0.5rem;font-weight:700;text-transform:uppercase;padding:0.125rem 0.25rem;background:linear-gradient(135deg,#10b981,#059669);color:white;border-radius:3px}
.export-badge.notion{background:linear-gradient(135deg,#000,#333)}
.export-badge.social{background:linear-gradient(135deg,#3b82f6,#2563eb)}
.export-menu-divider{height:1px;background:var(--border);margin:0.25rem 0}

/* Chat Section - Fixed at bottom */
.chat-section{background:var(--bg);border-top:1px solid var(--border);padding:0;flex-shrink:0}
.chat-container{display:flex;flex-direction:column;max-height:140px}
.chat-messages{flex:1;overflow-y:auto;padding:0.5rem 0.75rem;display:flex;flex-direction:column;gap:0.375rem}
.chat-messages::-webkit-scrollbar{width:4px}
.chat-messages::-webkit-scrollbar-track{background:var(--bg2)}
.chat-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}
.chat-message{max-width:85%;padding:0.375rem 0.5rem;border-radius:6px;font-size:0.6875rem;line-height:1.4}
.chat-message.user{align-self:flex-end;background:var(--accent);color:white;border-bottom-right-radius:2px}
.chat-message.assistant{align-self:flex-start;background:var(--bg2);color:var(--text);border-bottom-left-radius:2px;border:1px solid var(--border)}
.chat-input-row{display:flex;gap:0.375rem;padding:0.5rem 0.75rem;border-top:1px solid var(--border);background:var(--bg2)}
.chat-input{flex:1;padding:0.375rem 0.625rem;background:var(--bg);border:1px solid var(--accent);border-radius:6px;color:var(--text);font-size:0.75rem;font-family:inherit;resize:none}
.chat-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}
.chat-input::placeholder{color:var(--text3)}
.chat-send{padding:0.375rem 0.625rem;background:var(--accent);border:none;border-radius:6px;color:white;font-weight:600;font-size:0.6875rem;cursor:pointer;display:flex;align-items:center;gap:0.25rem}
.chat-send:hover{background:var(--accent-hover)}
.chat-send:disabled{opacity:0.5;cursor:not-allowed}

/* Style Presets in Picker */
.style-presets{display:flex;gap:0.5rem;flex-wrap:wrap;justify-content:center;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}
.style-preset{padding:0.375rem 0.75rem;background:var(--bg);border:1px solid var(--border);border-radius:20px;font-size:0.6875rem;font-weight:600;color:var(--text2);cursor:pointer}
.style-preset:hover{border-color:var(--accent);color:var(--accent)}
.style-preset.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}

/* App Footer */
.app-footer{background:var(--bg2);border-top:1px solid var(--border);padding:0.75rem 1.5rem;text-align:center;font-size:0.75rem;color:var(--text3)}
.app-footer a{color:var(--accent);text-decoration:none;font-weight:600}
.app-footer a:hover{color:var(--text)}

/* Intent Modal */
.intent-modal{position:fixed;inset:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;z-index:400;padding:1.5rem}
.intent-modal.show{display:flex}
.intent-box{background:var(--bg2);border:1px solid var(--border);border-radius:16px;width:100%;max-width:600px;animation:modalIn 0.3s ease}
@keyframes modalIn{from{opacity:0;transform:scale(0.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
.intent-header{padding:1.5rem 1.5rem 0;text-align:center}
.intent-title{font-family:'Fraunces',serif;font-size:1.5rem;font-weight:500;color:var(--text);margin-bottom:0.25rem}
.intent-subtitle{font-size:0.875rem;color:var(--text2)}
.intent-body{padding:1.5rem}
.intent-textarea{width:100%;min-height:120px;padding:1rem;background:var(--bg);border:2px solid var(--border);border-radius:12px;font-family:inherit;font-size:0.9375rem;color:var(--text);resize:vertical;line-height:1.6}
.intent-textarea:focus{outline:none;border-color:var(--accent)}
.intent-textarea::placeholder{color:var(--text3)}
.intent-examples{margin-top:1rem;padding:1rem;background:var(--bg);border-radius:10px}
.intent-examples-title{font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--accent);margin-bottom:0.5rem}
.intent-example{font-size:0.8125rem;color:var(--text2);padding:0.375rem 0;cursor:pointer;border-radius:6px;padding-left:0.5rem;margin-left:-0.5rem}
.intent-example:hover{background:var(--accent-dim);color:var(--accent)}
.intent-example::before{content:'> ';color:var(--accent)}
.intent-footer{padding:0 1.5rem 1.5rem;display:flex;gap:0.75rem;justify-content:flex-end}
.intent-btn{padding:0.75rem 1.5rem;border-radius:10px;font-family:inherit;font-size:0.875rem;font-weight:600;cursor:pointer}
.intent-btn.secondary{background:var(--bg);border:1px solid var(--border);color:var(--text2)}
.intent-btn.secondary:hover{border-color:var(--accent);color:var(--text)}
.intent-btn.primary{background:var(--accent);border:none;color:white}
.intent-btn.primary:hover{filter:brightness(1.1)}
.intent-btn.primary:disabled{opacity:0.5;cursor:not-allowed}

/* Onboarding Questionnaire Modal */
.onboarding-modal{position:fixed;inset:0;background:rgba(0,0,0,0.7);backdrop-filter:blur(12px);display:none;align-items:center;justify-content:center;z-index:450;padding:1rem}
.onboarding-modal.show{display:flex}
.onboarding-box{background:var(--bg2);border:1px solid var(--border);border-radius:20px;width:100%;max-width:640px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:modalIn 0.3s ease}
.onboarding-header{padding:1.5rem 2rem;background:linear-gradient(135deg,var(--accent-dim),transparent);border-bottom:1px solid var(--border)}
.onboarding-badge{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--accent);margin-bottom:0.5rem}
.onboarding-badge svg{width:14px;height:14px}
.onboarding-title{font-family:'Fraunces',serif;font-size:1.5rem;font-weight:600;color:var(--text);margin-bottom:0.25rem}
.onboarding-subtitle{font-size:0.875rem;color:var(--text2)}
.onboarding-progress{display:flex;align-items:center;gap:0.75rem;margin-top:1rem}
.progress-bar{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden}
.progress-fill{height:100%;background:var(--accent);border-radius:2px;transition:width 0.3s ease}
.progress-text{font-size:0.75rem;font-weight:600;color:var(--text3)}
.onboarding-body{flex:1;overflow-y:auto;padding:1.5rem 2rem}
.onboarding-question{margin-bottom:1.5rem}
.question-label{font-size:0.9375rem;font-weight:600;color:var(--text);margin-bottom:0.75rem;display:flex;align-items:flex-start;gap:0.5rem}
.question-number{width:24px;height:24px;background:var(--accent);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:700;flex-shrink:0}
.question-input{width:100%;padding:0.875rem 1rem;background:var(--bg);border:2px solid var(--border);border-radius:10px;font-family:inherit;font-size:0.9375rem;color:var(--text);resize:none;min-height:80px;line-height:1.5}
.question-input:focus{outline:none;border-color:var(--accent)}
.question-input::placeholder{color:var(--text3)}
.question-hint{font-size:0.75rem;color:var(--text3);margin-top:0.5rem;font-style:italic}
.question-pills{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:0.75rem}
.question-pill{padding:0.375rem 0.75rem;background:var(--bg);border:1px solid var(--border);border-radius:20px;font-size:0.75rem;color:var(--text2);cursor:pointer}
.question-pill:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}
.onboarding-footer{padding:1rem 2rem;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;background:var(--bg)}
.onboarding-skip{background:none;border:none;color:var(--text3);font-size:0.8125rem;cursor:pointer;padding:0.5rem}
.onboarding-skip:hover{color:var(--text)}
.onboarding-actions{display:flex;gap:0.75rem}
.onboarding-btn{padding:0.75rem 1.5rem;border-radius:10px;font-family:inherit;font-size:0.875rem;font-weight:600;cursor:pointer}
.onboarding-btn.back{background:var(--bg2);border:1px solid var(--border);color:var(--text2)}
.onboarding-btn.back:hover{border-color:var(--accent);color:var(--text)}
.onboarding-btn.next{background:var(--accent);border:none;color:white;display:flex;align-items:center;gap:0.5rem}
.onboarding-btn.next:hover{filter:brightness(1.1)}
.onboarding-btn.next:disabled{opacity:0.5;cursor:not-allowed}
.onboarding-btn.generate{background:linear-gradient(135deg,var(--accent),var(--accent-hover));box-shadow:0 4px 16px rgba(196,160,82,0.3)}

/* Genius Notes Panel */
.genius-panel{background:var(--bg);border:1px solid var(--border);border-radius:12px;margin-top:1rem;overflow:hidden}
.genius-header{display:flex;align-items:center;justify-content:space-between;padding:0.75rem 1rem;background:var(--bg2);border-bottom:1px solid var(--border);cursor:pointer}
.genius-header:hover{background:var(--accent-dim)}
.genius-title{display:flex;align-items:center;gap:0.5rem;font-size:0.8125rem;font-weight:600;color:var(--text)}
.genius-toggle{color:var(--text3);font-size:1rem}
.genius-content{display:none;padding:1rem}
.genius-panel.expanded .genius-content{display:block}
.genius-panel.expanded .genius-toggle{transform:rotate(180deg)}
.genius-note{padding:0.75rem;background:var(--bg2);border-radius:8px;margin-bottom:0.5rem;border-left:3px solid var(--accent)}
.genius-note:last-child{margin-bottom:0}
.genius-name{font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--accent);margin-bottom:0.25rem}
.genius-insight{font-size:0.8125rem;color:var(--text2);line-height:1.5}

/* Actionable Score */
.score-action{font-size:0.6875rem;color:var(--accent);margin-top:0.25rem;cursor:pointer}
.score-action:hover{text-decoration:underline}

/* Genius Suggestions Panel */
.genius-suggestions{background:linear-gradient(135deg,var(--accent-dim),transparent);border-top:1px solid var(--border);animation:geniusGlow 3s ease-in-out infinite}
@keyframes geniusGlow{0%,100%{box-shadow:0 0 0 0 rgba(249,115,22,0)}50%{box-shadow:0 0 20px 3px rgba(249,115,22,0.4),inset 0 0 15px rgba(249,115,22,0.1)}}
.genius-suggestions-header{display:flex;align-items:center;justify-content:space-between;padding:0.5rem 0.75rem;cursor:pointer}
.genius-suggestions-header:hover{background:var(--accent-dim)}
.genius-suggestions-title{display:flex;align-items:center;gap:0.375rem;font-size:0.6875rem;font-weight:600;color:var(--accent)}
.genius-suggestions-title::before{content:'✨';animation:sparkle 2s ease-in-out infinite}
@keyframes sparkle{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.6;transform:scale(1.2)}}
.genius-suggestions.collapsed .genius-suggestions-body{display:none}
.genius-refresh{width:24px;height:24px;border-radius:4px;border:1px solid var(--border);background:var(--bg);color:var(--text3);cursor:pointer;display:flex;align-items:center;justify-content:center}
.genius-refresh:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}
.genius-refresh.spinning svg{animation:spin 1s linear infinite}
.genius-suggestions-body{padding:0.5rem 0.75rem}
.genius-loading{display:flex;align-items:center;gap:0.5rem;color:var(--text2);font-size:0.75rem}
.genius-loading-spinner{width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin 0.8s linear infinite}
.genius-content{display:flex;flex-direction:column;gap:0.5rem}
.genius-section-label{font-size:0.5625rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--text3);margin-bottom:0.25rem}
.genius-actions{display:flex;flex-direction:column;gap:0.375rem}
.genius-action{display:flex;align-items:flex-start;gap:0.5rem;padding:0.5rem;background:var(--bg2);border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:all 0.2s;position:relative;overflow:hidden}
.genius-action::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(249,115,22,0.1),transparent);transition:left 0.5s}
.genius-action:hover::before{left:100%}
.genius-action:hover{border-color:#f97316;background:rgba(249,115,22,0.05);transform:translateX(4px)}
.genius-action.applying{opacity:0.6;pointer-events:none}
.genius-action-icon{width:24px;height:24px;border-radius:4px;background:rgba(249,115,22,0.15);color:#f97316;display:flex;align-items:center;justify-content:center;font-size:0.75rem;flex-shrink:0}
.genius-action-content{flex:1;min-width:0}
.genius-action-title{font-size:0.75rem;font-weight:600;color:var(--text);margin-bottom:0.125rem}
.genius-action-desc{font-size:0.625rem;color:var(--text2);line-height:1.3}
.genius-action-meta{display:flex;align-items:center;gap:0.375rem;margin-top:0.125rem}
.genius-action-category{font-size:0.5rem;font-weight:700;color:#f97316;text-transform:uppercase;letter-spacing:0.05em;background:rgba(249,115,22,0.1);padding:0.0625rem 0.25rem;border-radius:3px}
.genius-action-points{font-size:0.625rem;font-weight:700;color:#f97316;background:rgba(249,115,22,0.15);padding:0.125rem 0.375rem;border-radius:3px;animation:pointsPulse 2s ease-in-out infinite}
@keyframes pointsPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
.genius-question-header{display:flex;align-items:center;justify-content:space-between;gap:0.375rem}
.genius-question-points{font-size:0.5625rem;font-weight:700;color:var(--success);white-space:nowrap}
.genius-question-input-row{display:flex;gap:0.375rem;margin-top:0.375rem}
.genius-question-input-inline{flex:1;padding:0.375rem 0.5rem;border:1px solid var(--border);border-radius:4px;font-size:0.6875rem;background:var(--bg)}
.genius-question-submit-inline{padding:0.375rem 0.625rem;background:var(--accent);color:white;border:none;border-radius:4px;font-size:0.625rem;font-weight:600;cursor:pointer}
.genius-action-apply{padding:0.25rem 0.5rem;background:linear-gradient(135deg,#f97316,#ea580c);color:white;border:none;border-radius:4px;font-size:0.625rem;font-weight:700;cursor:pointer;opacity:0;transition:all 0.2s;box-shadow:0 2px 4px rgba(249,115,22,0.3)}
.genius-action:hover .genius-action-apply{opacity:1}
.genius-action-apply:hover{transform:scale(1.05);box-shadow:0 4px 8px rgba(249,115,22,0.4)}
.genius-questions-list{display:flex;flex-direction:column;gap:0.5rem}
.genius-question{padding:0.5rem;background:var(--bg2);border:1px solid var(--border);border-radius:6px}
.genius-question-text{font-size:0.6875rem;font-weight:500;color:var(--text);margin-bottom:0.375rem}
.genius-question-why{font-size:0.5625rem;color:var(--text3);margin-bottom:0.375rem;font-style:italic}
.genius-question-input{width:100%;padding:0.375rem 0.5rem;background:var(--bg);border:1px solid var(--border);border-radius:4px;font-size:0.6875rem;color:var(--text);font-family:inherit;resize:none}
.genius-question-input:focus{outline:none;border-color:var(--accent)}
.genius-question-submit{margin-top:0.375rem;padding:0.25rem 0.5rem;background:var(--accent);color:white;border:none;border-radius:4px;font-size:0.625rem;font-weight:600;cursor:pointer;float:right}
.genius-question-submit:hover{filter:brightness(1.1)}
.genius-question-submit:disabled{opacity:0.5;cursor:not-allowed}

/* Unified Action Bar (merged refine + iteration) */
.refine-bar{display:none}

/* Prominent Do Better Bar */
.do-better-bar{display:flex;align-items:center;gap:1rem;padding:0.75rem 1rem;background:linear-gradient(135deg,rgba(16,185,129,0.08),rgba(5,150,105,0.05));border-bottom:1px solid rgba(16,185,129,0.2);margin:-0.5rem -0.5rem 0.5rem -0.5rem}
.do-better-btn{display:flex;align-items:center;gap:0.625rem;padding:0.75rem 1.25rem;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;color:white;cursor:pointer;transition:all 0.2s;box-shadow:0 2px 8px rgba(16,185,129,0.3)}
.do-better-btn:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(16,185,129,0.4)}
.do-better-btn:disabled{opacity:0.6;cursor:not-allowed;transform:none}
.do-better-icon{font-size:1.25rem}
.do-better-text{font-size:1rem;font-weight:700}
.do-better-sub{font-size:0.625rem;opacity:0.85;margin-left:0.25rem}
.do-better-quick{display:flex;gap:0.375rem;flex-wrap:wrap}
.do-better-quick-btn{padding:0.5rem 0.75rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:0.75rem;font-weight:600;cursor:pointer;color:var(--text2);transition:all 0.15s;white-space:nowrap}
.do-better-quick-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}
.do-better-quick-btn:disabled{opacity:0.5;cursor:not-allowed}
.do-better-history{display:flex;align-items:center;gap:0.25rem;margin-left:auto;flex-shrink:0}
.do-better-history .iteration-badge{padding:0.25rem 0.5rem;background:var(--bg);border:1px solid var(--border);border-radius:4px;font-size:0.6875rem;font-weight:600;color:var(--text2);cursor:pointer}
.do-better-history .iteration-badge:hover{border-color:var(--accent)}
.do-better-history .iteration-badge.current{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}
.do-better-history .iteration-badge.improved{background:rgba(16,185,129,0.1);border-color:#10b981;color:#10b981}
@media(max-width:640px){.do-better-bar{flex-direction:column;align-items:stretch}.do-better-btn{justify-content:center}.do-better-quick{justify-content:center}.do-better-history{justify-content:center;margin-left:0;margin-top:0.5rem}}
.iteration-panel{background:var(--bg);border-top:1px solid var(--border);padding:0.5rem 0.75rem}
.iteration-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.5rem}
.iteration-score-track{display:flex;align-items:center;gap:0.5rem}
.iteration-label{font-size:0.6875rem;font-weight:700;color:var(--text3)}
.iteration-history{display:flex;gap:0.25rem}
.iteration-badge{padding:0.125rem 0.375rem;border-radius:4px;font-size:0.625rem;font-weight:700;background:var(--bg2);border:1px solid var(--border);color:var(--text3);cursor:pointer;transition:all 0.15s}
.iteration-badge:hover{border-color:var(--accent);background:var(--accent-dim)}
.iteration-badge.current{background:var(--accent);border-color:var(--accent);color:white;cursor:default}
.iteration-badge.current:hover{transform:none}
.iteration-badge.improved{background:var(--success-dim);border-color:var(--success);color:var(--success)}

/* Expert Changes Notification */
.expert-changes-notification{position:fixed;top:80px;right:20px;max-width:400px;background:var(--bg);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,0.15);z-index:1000;opacity:0;transform:translateX(420px);transition:all 0.3s ease-out}
.expert-changes-notification.show{opacity:1;transform:translateX(0)}
.expert-changes-header{display:flex;align-items:center;justify-content:space-between;padding:0.875rem 1rem;background:linear-gradient(135deg,rgba(16,185,129,0.1),rgba(5,150,105,0.05));border-bottom:1px solid var(--border);border-radius:12px 12px 0 0}
.expert-changes-title{font-size:0.875rem;font-weight:700;color:var(--text)}
.expert-changes-close{background:none;border:none;font-size:1.125rem;color:var(--text3);cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;transition:color 0.15s}
.expert-changes-close:hover{color:var(--text)}
.expert-changes-body{padding:1rem;max-height:300px;overflow-y:auto}
.expert-change-item{font-size:0.8125rem;color:var(--text2);line-height:1.5;margin-bottom:0.5rem;padding-left:0.5rem}
.expert-change-item:last-child{margin-bottom:0}
.iteration-target{font-size:0.625rem;color:var(--text3)}
.iteration-target-score{font-weight:700;color:var(--success)}
.iteration-actions{display:flex;align-items:center;gap:0.5rem}
.auto-iterate-btn{padding:0.375rem 0.75rem;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;color:white;font-size:0.6875rem;font-weight:700;cursor:pointer;transition:all 0.15s}
.auto-iterate-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(16,185,129,0.3)}
.iteration-angles{display:flex;align-items:center;gap:0.375rem;flex-wrap:wrap}
.iteration-angles-label{font-size:0.625rem;font-weight:600;color:var(--text3)}
.iteration-btn{padding:0.25rem 0.5rem;border:1px solid var(--border);border-radius:4px;font-size:0.625rem;font-weight:600;cursor:pointer;background:var(--bg2);color:var(--text2);transition:all 0.15s;position:relative}
.iteration-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}
.iteration-btn.loading{pointer-events:none;color:transparent !important;background:var(--accent-dim);border-color:var(--accent)}
.iteration-btn.loading::after{content:'';position:absolute;top:50%;left:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border:2px solid var(--accent);border-top-color:transparent;border-radius:50%;animation:btn-spin 0.6s linear infinite}
.iteration-btn[data-action="specific"]{border-color:#3b82f6;color:#2563eb}.iteration-btn[data-action="specific"]:hover{background:rgba(59,130,246,0.1)}
.iteration-btn[data-action="bold"]{border-color:#f59e0b;color:#d97706}.iteration-btn[data-action="bold"]:hover{background:rgba(245,158,11,0.1)}
.iteration-btn[data-action="proof"]{border-color:#10b981;color:#059669}.iteration-btn[data-action="proof"]:hover{background:rgba(16,185,129,0.1)}
.iteration-btn[data-action="remarkable"]{border-color:#ef4444;color:#dc2626}.iteration-btn[data-action="remarkable"]:hover{background:rgba(239,68,68,0.1)}
.iteration-btn[data-action="simplify"]{border-color:#8b5cf6;color:#7c3aed}.iteration-btn[data-action="simplify"]:hover{background:rgba(139,92,246,0.1)}
@keyframes btn-spin{to{transform:rotate(360deg)}}
.auto-iterate-btn.loading{pointer-events:none;opacity:0.7}
.iteration-variants{margin-top:0.5rem;padding-top:0.5rem;border-top:1px solid var(--border)}
.iteration-variants-label{font-size:0.625rem;font-weight:600;color:var(--accent);display:block;margin-bottom:0.375rem}
.iteration-variants-list{display:flex;flex-direction:column;gap:0.25rem}
.iteration-variant{display:flex;align-items:center;gap:0.375rem;padding:0.375rem 0.5rem;background:var(--bg2);border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:all 0.15s}
.iteration-variant:hover{border-color:var(--accent);background:var(--accent-dim)}
.iteration-variant-letter{width:18px;height:18px;border-radius:4px;background:var(--accent);color:white;font-size:0.5625rem;font-weight:700;display:flex;align-items:center;justify-content:center}
.iteration-variant-text{flex:1;font-size:0.75rem;color:var(--text)}
.iteration-variant-use{padding:0.125rem 0.375rem;background:var(--accent);color:white;border:none;border-radius:3px;font-size:0.5625rem;font-weight:600;cursor:pointer;opacity:0;transition:opacity 0.15s}
.iteration-variant:hover .iteration-variant-use{opacity:1}

/* Advanced Features Panel */
.advanced-features-panel{background:linear-gradient(135deg,var(--bg2),var(--bg));border-top:1px solid var(--border)}
.advanced-features-header{display:flex;justify-content:space-between;align-items:center;padding:0.75rem 1rem;cursor:pointer;user-select:none}
.advanced-features-header:hover{background:var(--accent-dim)}
.advanced-features-title{display:flex;align-items:center;gap:0.5rem;font-size:0.8125rem;font-weight:600;color:var(--text2)}
.advanced-features-toggle{font-size:0.75rem;color:var(--text3);transition:transform 0.2s}
.advanced-features-toggle.open{transform:rotate(180deg)}
.advanced-features-body{padding:1rem;border-top:1px solid var(--border)}
.advanced-features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0.5rem}
.advanced-btn{display:flex;flex-direction:column;align-items:center;padding:0.75rem 0.5rem;border:1px solid var(--border);border-radius:8px;background:var(--bg);cursor:pointer;transition:all 0.15s;text-align:center}
.advanced-btn:hover{border-color:var(--accent);background:var(--accent-dim);transform:translateY(-2px)}
.advanced-btn.loading{pointer-events:none;opacity:0.7}
.advanced-btn-icon{font-size:1.25rem;margin-bottom:0.25rem}
.advanced-btn-label{font-size:0.6875rem;font-weight:700;color:var(--text)}
.advanced-btn-desc{font-size:0.5625rem;color:var(--text3);margin-top:0.125rem}
.advanced-btn[data-feature="variants"]{border-color:#8b5cf6}.advanced-btn[data-feature="variants"]:hover{background:rgba(139,92,246,0.1)}
.advanced-btn[data-feature="objections"]{border-color:#0ea5e9}.advanced-btn[data-feature="objections"]:hover{background:rgba(14,165,233,0.1)}
.advanced-btn[data-feature="proof"]{border-color:#10b981}.advanced-btn[data-feature="proof"]:hover{background:rgba(16,185,129,0.1)}
.advanced-btn[data-feature="funnel"]{border-color:#f59e0b}.advanced-btn[data-feature="funnel"]:hover{background:rgba(245,158,11,0.1)}
.advanced-btn[data-feature="benchmark"]{border-color:#3b82f6}.advanced-btn[data-feature="benchmark"]:hover{background:rgba(59,130,246,0.1)}
.advanced-btn[data-feature="abtest"]{border-color:#ec4899}.advanced-btn[data-feature="abtest"]:hover{background:rgba(236,72,153,0.1)}
.advanced-btn[data-feature="competitive"]{border-color:#ef4444}.advanced-btn[data-feature="competitive"]:hover{background:rgba(239,68,68,0.1)}
.advanced-btn[data-feature="voice"]{border-color:#a855f7}.advanced-btn[data-feature="voice"]:hover{background:rgba(168,85,247,0.1)}

/* Action Buttons */
.action-btns{display:flex;gap:0.375rem}
.action-btn{padding:0.375rem 0.75rem;border:none;border-radius:6px;font-size:0.6875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:0.25rem}
.action-btn.secondary{background:var(--bg2);color:var(--text);border:1px solid var(--border)}
.action-btn.secondary:hover{border-color:var(--accent)}
.action-btn.primary{background:var(--accent);color:white}
.action-btn.primary:hover{background:var(--accent-hover)}

/* Queue Section */
.queue-section{margin-top:2rem}
body.output-open{overflow:hidden}
body.output-open .queue-section{display:none !important}
body.output-open .toolbar-dashboard-btn{display:none}
.queue-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}
.queue-title{font-size:1rem;font-weight:600;color:var(--text2)}
.queue-count{font-size:0.75rem;color:var(--text3)}
.queue-list{display:flex;flex-direction:column;gap:0.5rem}
.queue-folder{margin-bottom:0.5rem}
.queue-folder-header{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0.75rem;background:var(--bg);border-radius:6px;cursor:pointer;font-size:0.8125rem;font-weight:600}
.queue-folder-header:hover{background:var(--accent-dim)}
.queue-folder-icon{font-size:1rem}
.queue-folder-name{flex:1;color:var(--text)}
.queue-folder-count{font-size:0.6875rem;color:var(--text3);background:var(--bg2);padding:0.125rem 0.5rem;border-radius:10px}
.queue-folder-items{padding-left:1rem;margin-top:0.25rem}
.queue-item{display:flex;align-items:center;gap:0.5rem;padding:0.75rem;background:var(--bg2);border:1px solid var(--border);border-radius:10px}
.queue-item:hover{border-color:var(--accent)}
.queue-item-main{display:flex;align-items:center;gap:0.75rem;flex:1;cursor:pointer;min-width:0}
.queue-item-type{font-size:0.5625rem;font-weight:700;text-transform:uppercase;padding:0.125rem 0.375rem;border-radius:4px;background:var(--accent-dim);color:var(--accent);white-space:nowrap}
.queue-item-title{flex:1;font-size:0.8125rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.queue-item-score{font-size:0.6875rem;font-weight:600;color:var(--accent)}
.queue-item-actions{display:flex;gap:0.25rem;opacity:0;transition:opacity 0.15s}
.queue-item:hover .queue-item-actions{opacity:1}
.queue-item-edit,.queue-item-delete{width:24px;height:24px;border:none;background:transparent;cursor:pointer;font-size:0.75rem;border-radius:4px;display:flex;align-items:center;justify-content:center}
.queue-item-edit:hover{background:var(--accent-dim)}
.queue-item-delete:hover{background:rgba(239,68,68,0.1)}
.queue-empty{text-align:center;padding:2rem;color:var(--text3);font-size:0.875rem}

/* Settings Modal */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;z-index:100}
.modal-overlay.show{display:flex}
.modal{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:480px;max-height:90vh;overflow:hidden}
.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid var(--border)}
.modal-header h2{font-size:1.125rem}
.modal-close{width:32px;height:32px;border:none;background:transparent;color:var(--text3);cursor:pointer;font-size:1.25rem;display:flex;align-items:center;justify-content:center;border-radius:6px}
.modal-close:hover{background:var(--bg3);color:var(--text)}
.modal-body{padding:1.25rem;overflow-y:auto}
.settings-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}
.settings-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}
.settings-section-title{font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--accent);margin-bottom:1rem}
.form-group{margin-bottom:1rem}
.form-group label{display:block;font-size:0.75rem;font-weight:600;color:var(--text2);margin-bottom:0.5rem}
.form-group input,.form-group select{width:100%;padding:0.75rem;border:1px solid var(--border);border-radius:8px;font-size:0.875rem;background:var(--bg);color:var(--text)}
.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent)}
.form-row{display:flex;align-items:center;gap:0.75rem}
.form-row input{width:auto}
.form-hint{font-size:0.6875rem;color:var(--text3)}
.modal-footer{display:flex;justify-content:flex-end;gap:0.5rem;padding:1rem 1.25rem;border-top:1px solid var(--border);background:var(--bg3)}

/* Settings Panel (Slide-in) */
.settings-panel-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);display:none;z-index:400;opacity:0;transition:opacity 0.3s}
.settings-panel-overlay.show{display:block;opacity:1}
.settings-panel{position:fixed;top:0;right:-480px;width:480px;max-width:100%;height:100vh;background:var(--bg);border-left:1px solid var(--border);display:flex;flex-direction:column;z-index:401;transition:right 0.3s ease;box-shadow:-8px 0 32px rgba(0,0,0,0.2)}
.settings-panel.show{right:0}
.settings-panel-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:var(--bg2);border-bottom:1px solid var(--border)}
.settings-panel-title{font-size:1.125rem;font-weight:700;color:var(--text);display:flex;align-items:center;gap:0.625rem}
.settings-panel-close{width:36px;height:36px;border:none;background:var(--bg);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text3);transition:all 0.15s}
.settings-panel-close:hover{background:var(--accent-dim);color:var(--accent)}
.settings-panel-body{flex:1;overflow-y:auto;padding:1.5rem}
.settings-panel-footer{padding:1rem 1.5rem;background:var(--bg2);border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:0.75rem}

/* Settings Tabs */
.settings-tabs{display:flex;gap:0.25rem;margin-bottom:1.5rem;background:var(--bg2);padding:0.25rem;border-radius:10px}
.settings-tab{flex:1;padding:0.625rem 0.5rem;border:none;background:transparent;border-radius:8px;font-size:0.75rem;font-weight:600;color:var(--text3);cursor:pointer;transition:all 0.15s;display:flex;flex-direction:column;align-items:center;gap:0.25rem}
.settings-tab:hover{color:var(--text2);background:var(--bg)}
.settings-tab.active{background:var(--bg);color:var(--accent);box-shadow:0 2px 8px rgba(0,0,0,0.1)}
.settings-tab-icon{font-size:1.125rem}
.settings-tab-content{display:none}
.settings-tab-content.active{display:block}

/* Settings Sections */
.settings-group{margin-bottom:1.5rem}
.settings-group-title{font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--accent);margin-bottom:1rem;display:flex;align-items:center;gap:0.5rem}
.settings-item{padding:1rem;background:var(--bg2);border-radius:12px;margin-bottom:0.75rem;border:1px solid var(--border)}
.settings-item:last-child{margin-bottom:0}
.settings-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:0.75rem}
.settings-item-info{display:flex;align-items:center;gap:0.75rem}
.settings-item-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}
.settings-item-icon.unsplash{background:#000;color:white}
.settings-item-icon.dalle{background:linear-gradient(135deg,#10a37f,#1a7f5a);color:white}
.settings-item-icon.notion{background:#000;color:white}
.settings-item-icon.email{background:linear-gradient(135deg,#ea4335,#c5221f);color:white}
.settings-item-icon.linkedin{background:#0a66c2;color:white}
.settings-item-icon.twitter{background:#000;color:white}
.settings-item-icon.brand{background:linear-gradient(135deg,var(--accent),#c4956a);color:white}
.settings-item-icon.openai{background:#000;color:white}
.settings-item-name{font-weight:600;color:var(--text);font-size:0.875rem}
.settings-item-desc{font-size:0.6875rem;color:var(--text3)}
.settings-item-status{padding:0.25rem 0.625rem;border-radius:20px;font-size:0.625rem;font-weight:600}
.settings-item-status.connected{background:rgba(16,185,129,0.15);color:#059669}
.settings-item-status.not-set{background:rgba(107,114,128,0.15);color:#6b7280}
.settings-item-body{display:flex;flex-direction:column;gap:0.625rem}
.settings-input{width:100%;padding:0.625rem 0.875rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:0.8125rem;color:var(--text)}
.settings-input:focus{outline:none;border-color:var(--accent)}
.settings-input::placeholder{color:var(--text3)}
.settings-input-row{display:flex;gap:0.5rem}
.settings-input-row .settings-input{flex:1}
.settings-help{font-size:0.6875rem;color:var(--text3);display:flex;align-items:center;gap:0.375rem}
.settings-help a{color:var(--accent)}
.settings-btn-small{padding:0.5rem 0.875rem;background:var(--accent);color:white;border:none;border-radius:6px;font-size:0.75rem;font-weight:600;cursor:pointer;white-space:nowrap}
.settings-btn-small:hover{filter:brightness(1.1)}
.settings-btn-small.secondary{background:var(--bg);border:1px solid var(--border);color:var(--text2)}
.settings-btn-small.secondary:hover{border-color:var(--accent);color:var(--accent)}
.settings-textarea{width:100%;min-height:80px;padding:0.75rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:0.8125rem;color:var(--text);resize:vertical;font-family:inherit}
.settings-textarea:focus{outline:none;border-color:var(--accent)}
.settings-toggle{display:flex;align-items:center;justify-content:space-between;padding:0.75rem;background:var(--bg);border-radius:8px;cursor:pointer}
.settings-toggle-label{font-size:0.8125rem;color:var(--text)}
.settings-toggle-switch{width:44px;height:24px;background:var(--border);border-radius:12px;position:relative;transition:background 0.2s}
.settings-toggle-switch::after{content:'';position:absolute;width:20px;height:20px;background:white;border-radius:50%;top:2px;left:2px;transition:left 0.2s}
.settings-toggle.active .settings-toggle-switch{background:var(--accent)}
.settings-toggle.active .settings-toggle-switch::after{left:22px}
.settings-social-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0.75rem}
.settings-social-btn{display:flex;align-items:center;gap:0.75rem;padding:0.875rem;background:var(--bg);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:all 0.15s}
.settings-social-btn:hover{border-color:var(--accent);background:var(--accent-dim)}
.settings-social-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem}
.settings-social-name{font-size:0.8125rem;font-weight:600;color:var(--text)}

/* Toast */
.toast-container{position:fixed;bottom:1.5rem;right:1.5rem;display:flex;flex-direction:column;gap:0.5rem;z-index:200}
.toast{display:flex;align-items:center;gap:0.75rem;padding:0.875rem 1rem;background:var(--bg2);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);animation:slideIn 0.2s ease}
@keyframes slideIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}
.toast.success{border-left:3px solid var(--success)}
.toast.error{border-left:3px solid var(--error)}
.toast.info{border-left:3px solid var(--info)}
.toast-msg{font-size:0.8125rem;font-weight:500}

/* Loading State */
.loading{pointer-events:none}

/* Flying Pills Container - Main loading overlay backdrop */
.marketing-pills-container {
  position: fixed;
  inset: 0;
  z-index: 10004;
  pointer-events: none;
  display: none;
}

.marketing-pills-container.active {
  display: block;
}

.marketing-pill {
  position: absolute;
  padding: 0.5rem 1rem;
  border-radius: 20px;
  font-size: 0.8125rem;
  font-weight: 600;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.marketing-pill.visible {
  opacity: 1;
}

.marketing-pill.marketing { background: linear-gradient(135deg, #f3e7c9, #e8d5a3); color: #6b5b3d; }
.marketing-pill.audience { background: linear-gradient(135deg, #d4e5f7, #a8c8e8); color: #2c4f6e; }
.marketing-pill.content { background: linear-gradient(135deg, #d5f5e3, #a8e6cf); color: #2d5a3d; }
.marketing-pill.strategy { background: linear-gradient(135deg, #e8daef, #d2b4de); color: #5a3d6b; }
.marketing-pill.insight { background: linear-gradient(135deg, #ffe4c4, #ffd4a3); color: #6b4f2d; }
.marketing-pill.creative { background: linear-gradient(135deg, #fde2e4, #f5c6c8); color: #6b2d3d; }
.marketing-pill.processing { background: linear-gradient(135deg, #e0e0e0, #c0c0c0); color: #4a4a4a; }

/* Loading Overlay - Centered white box */
.loading-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.7);
  backdrop-filter: blur(8px);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 10003;
}

.loading-overlay.show {
  display: flex;
}

.loading-content {
  background: white;
  border-radius: 20px;
  padding: 2.5rem 3rem;
  box-shadow: 0 8px 32px rgba(0,0,0,0.2);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  position: relative;
  min-width: 360px;
  max-width: 90vw;
}

.loading-cancel {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 32px;
  height: 32px;
  background: transparent;
  border: none;
  color: #999;
  font-size: 1.5rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
  border-radius: 50%;
  line-height: 1;
}

.loading-cancel:hover {
  background: #f5f5f5;
  color: #333;
}

.loading-spinner {
  width: 52px;
  height: 52px;
  border: 3px solid #e5e5e5;
  border-top-color: #06b6d4;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

.loading-text-container {
  text-align: center;
}

.loading-title {
  font-family: 'Fraunces', serif;
  font-size: 1.25rem;
  font-weight: 600;
  color: #1a1a1a;
  margin-bottom: 0.5rem;
}

.loading-text {
  font-size: 0.875rem;
  color: #666;
}

.loading-cancel-btn {
  margin-top: 0.5rem;
  padding: 0.625rem 1.5rem;
  background: transparent;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  color: #999;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}

.loading-cancel-btn:hover {
  background: #f5f5f5;
  border-color: #d0d0d0;
  color: #666;
}

/* Content Type Picker */
.picker-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;z-index:250}
.picker-overlay.show{display:flex}
.picker-modal{background:var(--bg2);border:1px solid var(--border);border-radius:20px;width:100%;max-width:700px;padding:2rem;animation:modalIn 0.25s ease;max-height:90vh;overflow-y:auto;position:relative}
.picker-close-btn{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border:none;background:var(--bg);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--text2);transition:all 0.15s;line-height:1}
.picker-close-btn:hover{background:var(--accent-dim);color:var(--accent)}
@keyframes modalIn{from{opacity:0;transform:scale(0.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
.picker-header{text-align:center;margin-bottom:1.5rem}
.picker-detected{font-size:1.125rem;font-weight:600;margin-bottom:0.75rem}
.picker-stats{display:flex;justify-content:center;gap:0.5rem;flex-wrap:wrap}
.picker-stat{font-size:0.6875rem;font-weight:600;padding:0.375rem 0.625rem;border-radius:20px;background:var(--accent-dim);color:var(--accent)}
.picker-question{font-family:'Fraunces',Georgia,serif;font-size:1.5rem;font-weight:500;text-align:center;margin-bottom:1.5rem}

/* Assumed Fields */
.picker-assumed{display:flex;flex-direction:column;gap:0.75rem;margin-bottom:1.25rem;padding:1rem;background:var(--bg);border-radius:10px;border:1px solid var(--border)}
.assumed-field{display:flex;flex-direction:column;gap:0.25rem}
.assumed-label{font-size:0.75rem;font-weight:600;color:var(--text2);display:flex;align-items:center;gap:0.5rem}
.assumed-tag{font-size:0.5625rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;padding:0.125rem 0.375rem;background:var(--accent-dim);color:var(--accent);border-radius:4px}
.assumed-input{width:100%;padding:0.625rem 0.75rem;background:var(--bg2);border:1px solid var(--border);border-radius:8px;font-size:0.875rem;color:var(--text);font-family:inherit;box-sizing:border-box}
.assumed-input:focus{outline:none;border-color:var(--accent)}
.assumed-input::placeholder{color:var(--text3);font-style:italic;opacity:0.8}
.assumed-input.assumed{color:var(--text2);font-style:italic;background:var(--bg2);border-style:dashed}
.assumed-input.edited{border-color:var(--success);background:rgba(52,199,89,0.1);font-style:normal;color:var(--text);border-style:solid}
.picker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0.625rem}
.picker-categories{display:grid;grid-template-columns:repeat(3,1fr);gap:0.75rem}
.picker-category{border:1.5px solid rgba(194,154,86,0.25);border-radius:12px;padding:0.625rem;background:rgba(194,154,86,0.02)}
.picker-category-label{font-size:0.625rem;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:var(--accent);margin-bottom:0.5rem;padding-left:0.125rem;opacity:0.85}
.picker-category-items{display:grid;grid-template-columns:repeat(2,1fr);gap:0.375rem}
.picker-btn{display:flex;flex-direction:column;align-items:center;gap:0.375rem;padding:0.75rem 0.5rem;background:var(--bg);border:1.5px solid var(--border);border-radius:10px;cursor:pointer;transition:all 0.15s}
.picker-btn:hover{border-color:var(--accent);background:var(--accent-dim);transform:translateY(-2px)}
.picker-btn:active{transform:translateY(0)}
.picker-icon{font-size:1.375rem}
.picker-label{font-size:0.6875rem;font-weight:600;color:var(--text);text-align:center;line-height:1.2}
.picker-footer{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}
.picker-cancel{background:none;border:none;color:var(--text3);font-size:0.875rem;cursor:pointer;padding:0.5rem 1rem}
.picker-cancel:hover{color:var(--text)}
.picker-language{display:flex;align-items:center;gap:0.375rem}
.picker-language-label{font-size:1rem}
.picker-language-select{padding:0.375rem 0.625rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;font-size:0.75rem;color:var(--text);cursor:pointer}
.picker-language-select:focus{outline:none;border-color:var(--accent)}
@media(max-width:768px){.picker-categories{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.picker-categories{grid-template-columns:1fr}}

/* Picker Other Input */
.picker-other{padding:1rem;background:var(--bg);border-radius:12px;margin-bottom:1rem;border:1px solid var(--border)}
.picker-other-label{display:block;font-size:0.875rem;font-weight:600;color:var(--text);margin-bottom:0.5rem}
.picker-other-input{width:100%;padding:0.75rem 1rem;background:var(--bg2);border:2px solid var(--border);border-radius:10px;font-size:0.9375rem;color:var(--text);font-family:inherit}
.picker-other-input:focus{outline:none;border-color:var(--accent)}
.picker-other-input::placeholder{color:var(--text3)}
.picker-other-actions{display:flex;justify-content:space-between;align-items:center;margin-top:0.75rem}
.picker-other-cancel{background:none;border:none;color:var(--text3);font-size:0.8125rem;cursor:pointer;padding:0.5rem 0}
.picker-other-cancel:hover{color:var(--text)}
.picker-other-generate{padding:0.625rem 1.25rem;background:var(--accent);color:white;border:none;border-radius:8px;font-size:0.875rem;font-weight:600;cursor:pointer}
.picker-other-generate:hover{filter:brightness(1.1)}

/* SEO Options Panel (in-modal) */
.picker-seo{padding:1.25rem;background:var(--bg);border-radius:12px;margin-bottom:1rem;border:2px solid #3b82f6;display:none}
.picker-seo.show{display:block}
.picker-seo-header{display:flex;align-items:flex-start;gap:0.75rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}
.picker-seo-icon{font-size:1.75rem}
.picker-seo-title h4{margin:0 0 0.25rem;font-size:1rem;font-weight:700;color:var(--text)}
.picker-seo-title p{margin:0;font-size:0.8125rem;color:var(--text2)}
.picker-seo-section{margin-bottom:0.75rem}
.picker-seo-label{display:block;font-size:0.8125rem;font-weight:600;color:var(--text);margin-bottom:0.5rem}
.picker-seo-types{display:grid;grid-template-columns:1fr 1fr;gap:0.5rem}
@media(max-width:500px){.picker-seo-types{grid-template-columns:1fr}}
.picker-seo-type{display:flex;align-items:center;gap:0.625rem;padding:0.625rem 0.75rem;background:var(--bg2);border:2px solid var(--border);border-radius:10px;cursor:pointer;transition:all 0.15s;text-align:left}
.picker-seo-type:hover{border-color:var(--accent);background:var(--accent-dim)}
.picker-seo-type.active{border-color:#3b82f6;background:rgba(59,130,246,0.1)}
.picker-seo-type-icon{font-size:1.25rem;flex-shrink:0}
.picker-seo-type-text{display:flex;flex-direction:column;gap:0.125rem;min-width:0}
.picker-seo-type-name{font-size:0.8125rem;font-weight:600;color:var(--text)}
.picker-seo-type-desc{font-size:0.6875rem;color:var(--text3)}
.picker-seo-hint{display:flex;align-items:center;gap:0.5rem;padding:0.625rem 0.875rem;background:rgba(59,130,246,0.08);border-radius:8px;font-size:0.75rem;color:#3b82f6;margin-bottom:0.75rem}
.picker-seo-actions{display:flex;justify-content:space-between;align-items:center;margin-top:0.75rem;padding-top:0.75rem;border-top:1px solid var(--border)}
.picker-seo-back{background:none;border:none;color:var(--text3);font-size:0.8125rem;cursor:pointer;padding:0.5rem 0}
.picker-seo-back:hover{color:var(--text)}
.picker-seo-generate{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:white;border:none;border-radius:10px;font-size:0.9375rem;font-weight:700;cursor:pointer;transition:all 0.2s}
.picker-seo-generate:hover{filter:brightness(1.1);transform:translateY(-1px)}
.picker-seo-generate:disabled{opacity:0.6;cursor:not-allowed;transform:none}
.picker-btn-seo{border-color:rgba(59,130,246,0.3);background:rgba(59,130,246,0.05)}
.picker-btn-seo:hover{border-color:#3b82f6;background:rgba(59,130,246,0.1)}
.picker-btn .picker-expand{margin-left:auto;font-size:1rem;color:var(--text3);transition:transform 0.2s}
.picker-btn:hover .picker-expand{color:var(--accent);transform:translateX(2px)}

/* Analyzing Overlay */
/* Flying Pills Container - Analyzing overlay */
.analyzing-pills-container {
  position: fixed;
  inset: 0;
  z-index: 10004;
  pointer-events: none;
  display: none;
}

.analyzing-pills-container.active {
  display: block;
}

.analyzing-pill {
  position: absolute;
  padding: 0.5rem 1rem;
  border-radius: 20px;
  font-size: 0.8125rem;
  font-weight: 600;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.analyzing-pill.visible {
  opacity: 1;
}

.analyzing-pill-marketing { background: linear-gradient(135deg, #f3e7c9, #e8d5a3); color: #6b5b3d; }
.analyzing-pill-audience { background: linear-gradient(135deg, #d4e5f7, #a8c8e8); color: #2c4f6e; }
.analyzing-pill-content { background: linear-gradient(135deg, #d5f5e3, #a8e6cf); color: #2d5a3d; }
.analyzing-pill-strategy { background: linear-gradient(135deg, #e8daef, #d2b4de); color: #5a3d6b; }
.analyzing-pill-insight { background: linear-gradient(135deg, #ffe4c4, #ffd4a3); color: #6b4f2d; }
.analyzing-pill-creative { background: linear-gradient(135deg, #fde2e4, #f5c6c8); color: #6b2d3d; }
.analyzing-pill-processing { background: linear-gradient(135deg, #e0e0e0, #c0c0c0); color: #4a4a4a; }

/* Analyzing Overlay - Centered white box */
.analyzing-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.7);
  backdrop-filter: blur(8px);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 10003;
}

.analyzing-overlay.show {
  display: flex;
}

.analyzing-content {
  background: white;
  border-radius: 20px;
  padding: 2.5rem 3rem;
  box-shadow: 0 8px 32px rgba(0,0,0,0.2);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  position: relative;
  min-width: 360px;
  max-width: 90vw;
}

.analyzing-cancel {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 32px;
  height: 32px;
  background: transparent;
  border: none;
  color: #999;
  font-size: 1.5rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
  border-radius: 50%;
  line-height: 1;
}

.analyzing-cancel:hover {
  background: #f5f5f5;
  color: #333;
}

.analyzing-spinner {
  width: 52px;
  height: 52px;
  border: 3px solid #e5e5e5;
  border-top-color: #06b6d4;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

.analyzing-text-container {
  text-align: center;
}

.analyzing-title {
  font-family: 'Fraunces', serif;
  font-size: 1.25rem;
  font-weight: 600;
  color: #1a1a1a;
  margin-bottom: 0.5rem;
}

.analyzing-text {
  font-size: 0.875rem;
  color: #666;
}

.analyzing-subtext {
  font-size: 0.8125rem;
  color: #999;
  margin-top: 0.375rem;
}

.analyzing-cancel-btn {
  margin-top: 1rem;
  padding: 0.625rem 1.5rem;
  background: #f5f5f5;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  color: #1a1a1a;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}

.analyzing-cancel-btn:hover {
  background: #e8f7fb;
  border-color: #06b6d4;
  color: #06b6d4;
}

/* Document Clarification Popup */
.doc-clarify-popup{position:fixed;inset:0;background:rgba(0,0,0,0.7);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:500;opacity:0;transition:opacity 0.3s}
.doc-clarify-popup.show{opacity:1}
.doc-clarify-content{background:var(--bg);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,0.4);max-width:480px;width:90%;overflow:hidden;transform:translateY(20px);transition:transform 0.3s}
.doc-clarify-popup.show .doc-clarify-content{transform:translateY(0)}
.doc-clarify-header{padding:1.5rem;background:linear-gradient(135deg,var(--accent),#b8860b);text-align:center}
.doc-clarify-icon{font-size:2.5rem;margin-bottom:0.5rem}
.doc-clarify-header h3{margin:0;font-size:1.125rem;font-weight:700;color:white}
.doc-clarify-body{padding:1.5rem}
.doc-clarify-detected{font-size:0.9375rem;color:var(--text2);margin:0 0 0.75rem 0;line-height:1.5}
.doc-clarify-detected strong{color:var(--text);font-weight:600}
.doc-clarify-question{font-size:1rem;font-weight:600;color:var(--text);margin:0 0 1rem 0}
.doc-clarify-options{display:flex;flex-direction:column;gap:0.5rem}
.doc-clarify-option{display:flex;align-items:center;gap:0.75rem;padding:0.875rem 1rem;background:var(--bg2);border:2px solid var(--border);border-radius:10px;cursor:pointer;transition:all 0.15s;text-align:left}
.doc-clarify-option:hover{border-color:var(--accent);background:var(--accent-dim)}
.doc-clarify-option-icon{font-size:1.25rem}
.doc-clarify-option-text{font-size:0.9375rem;color:var(--text);font-weight:500}
.doc-clarify-custom{border-style:dashed;opacity:0.7}
.doc-clarify-custom:hover{opacity:1}
.doc-clarify-custom-input{margin-top:1rem}
.doc-clarify-custom-input textarea{width:100%;padding:0.875rem;border:2px solid var(--border);border-radius:10px;font-size:0.9375rem;resize:none;min-height:80px;background:var(--bg);color:var(--text)}
.doc-clarify-custom-input textarea:focus{outline:none;border-color:var(--accent)}
.doc-clarify-submit{width:100%;margin-top:0.75rem;padding:0.75rem;background:var(--accent);border:none;border-radius:8px;font-size:0.9375rem;font-weight:600;color:white;cursor:pointer}
.doc-clarify-submit:hover{filter:brightness(1.1)}
.doc-clarify-footer{padding:1rem 1.5rem;background:var(--bg2);border-top:1px solid var(--border);text-align:center}
.doc-clarify-skip{background:none;border:none;color:var(--text3);font-size:0.8125rem;cursor:pointer;padding:0.5rem}
.doc-clarify-skip:hover{color:var(--text2);text-decoration:underline}

/* Main Tabs */
.main-tabs{display:flex;gap:0.25rem;padding:0 2rem;background:var(--bg);border-bottom:1px solid var(--border)}
.main-tab{display:flex;align-items:center;gap:0.5rem;padding:0.875rem 1.25rem;background:none;border:none;font-size:0.875rem;font-weight:500;color:var(--text3);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all 0.15s}
.main-tab:hover{color:var(--text)}
.main-tab.active{color:var(--accent);border-bottom-color:var(--accent)}
.main-tab svg{opacity:0.7}
.main-tab.active svg{opacity:1}
.main-tab-count{font-size:0.6875rem;padding:0.125rem 0.5rem;background:var(--accent-dim);color:var(--accent);border-radius:10px;font-weight:600}
.main-tab-pill{font-size:0.625rem;padding:0.125rem 0.5rem;background:transparent;border:1.5px solid var(--accent);color:var(--accent);border-radius:10px;font-weight:600;margin-left:0.25rem;animation:pillGlow 2s ease-in-out infinite}
@keyframes pillGlow{0%,100%{box-shadow:0 0 0 0 rgba(194,154,86,0)}50%{box-shadow:0 0 8px 2px rgba(194,154,86,0.4)}}

/* Sources View */
.sources-view{padding:2rem;max-width:1200px;margin:0 auto}
.sources-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}
.sources-title h1{font-size:1.5rem;font-weight:700;color:var(--text);margin:0}
.sources-subtitle{font-size:0.8125rem;color:var(--text3);margin-top:0.25rem;display:block}
.sources-actions{display:flex;gap:0.75rem}
.sources-clear-btn{display:flex;align-items:center;gap:0.5rem;padding:0.625rem 1rem;background:var(--bg2);border:1px solid var(--border);border-radius:8px;font-size:0.8125rem;font-weight:600;color:var(--text2);cursor:pointer}
.sources-clear-btn:hover{border-color:var(--error);color:var(--error)}
.sources-generate-btn{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1.5rem;background:linear-gradient(135deg,var(--accent),#b8860b);border:none;border-radius:8px;font-size:0.875rem;font-weight:700;color:white;cursor:pointer;box-shadow:0 4px 12px rgba(194,154,86,0.4);animation:generateBtnPulse 2s ease-in-out infinite}
@keyframes generateBtnPulse{0%,100%{box-shadow:0 4px 12px rgba(194,154,86,0.4)}50%{box-shadow:0 4px 20px rgba(194,154,86,0.6)}}
.sources-generate-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}

/* Add Source Cards */
.sources-add-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}
@media(max-width:800px){.sources-add-row{grid-template-columns:repeat(2,1fr)}}
.source-add-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem 1rem;background:var(--bg2);border:2px dashed var(--border);border-radius:12px;cursor:pointer;transition:all 0.2s}
.source-add-card:hover{border-color:var(--accent);background:var(--accent-dim)}
.source-add-icon{font-size:2rem;margin-bottom:0.5rem}
.source-add-label{font-size:0.875rem;font-weight:600;color:var(--text)}
.source-add-hint{font-size:0.6875rem;color:var(--text3);margin-top:0.25rem}

/* Sources Grid */
.sources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}
.sources-empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background:var(--bg2);border-radius:12px;border:1px solid var(--border)}
.sources-empty-icon{font-size:3rem;margin-bottom:1rem;opacity:0.5}
.sources-empty-title{font-size:1.125rem;font-weight:600;color:var(--text);margin-bottom:0.5rem}
.sources-empty-text{font-size:0.875rem;color:var(--text3);text-align:center;max-width:400px}

/* Source Card */
.source-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:all 0.2s}
.source-card:hover{border-color:var(--accent);box-shadow:0 4px 12px rgba(0,0,0,0.1)}
.source-card-header{display:flex;align-items:center;gap:0.75rem;padding:1rem;border-bottom:1px solid var(--border);background:var(--bg)}
.source-card-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}
.source-card-icon.document{background:linear-gradient(135deg,#3b82f6,#2563eb);color:white}
.source-card-icon.url{background:linear-gradient(135deg,#10b981,#059669);color:white}
.source-card-icon.note{background:linear-gradient(135deg,#f59e0b,#d97706);color:white}
.source-card-icon.competitor{background:linear-gradient(135deg,#ef4444,#dc2626);color:white}
.source-card-info{flex:1;min-width:0}
.source-card-name{font-size:0.875rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.source-card-type{font-size:0.6875rem;color:var(--text3);text-transform:uppercase;letter-spacing:0.5px}
.source-card-delete{width:28px;height:28px;border:none;background:transparent;color:var(--text3);cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center}
.source-card-delete:hover{background:var(--error);color:white}
.source-card-body{padding:1rem}
.source-card-preview{font-size:0.8125rem;color:var(--text2);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.source-card-meta{display:flex;align-items:center;gap:0.5rem;margin-top:0.75rem;padding-top:0.75rem;border-top:1px solid var(--border)}
.source-card-size{font-size:0.6875rem;color:var(--text3)}
.source-card-status{font-size:0.6875rem;padding:0.125rem 0.5rem;border-radius:10px;font-weight:600}
.source-card-status.ready{background:rgba(16,185,129,0.15);color:#059669}
.source-card-status.processing{background:rgba(245,158,11,0.15);color:#d97706}

/* Add Source Modal */
.add-source-modal{position:fixed;inset:0;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;z-index:500}
.add-source-modal.show{display:flex}
.add-source-content{background:var(--bg);border-radius:16px;width:100%;max-width:500px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,0.3)}
.add-source-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);background:var(--bg2)}
.add-source-header h3{font-size:1rem;font-weight:600;color:var(--text);margin:0}
.add-source-close{width:32px;height:32px;border:none;background:transparent;color:var(--text3);cursor:pointer;font-size:1.5rem;display:flex;align-items:center;justify-content:center;border-radius:8px}
.add-source-close:hover{background:var(--bg);color:var(--text)}
.add-source-body{padding:1.5rem}
.add-source-input{width:100%;padding:0.875rem 1rem;background:var(--bg2);border:1px solid var(--border);border-radius:10px;font-size:0.875rem;color:var(--text);margin-bottom:1rem}
.add-source-input:focus{outline:none;border-color:var(--accent)}
.add-source-textarea{width:100%;min-height:150px;padding:0.875rem 1rem;background:var(--bg2);border:1px solid var(--border);border-radius:10px;font-size:0.875rem;color:var(--text);resize:vertical;font-family:inherit}
.add-source-textarea:focus{outline:none;border-color:var(--accent)}
.add-source-dropzone{border:2px dashed var(--border);border-radius:12px;padding:2rem;text-align:center;cursor:pointer;transition:all 0.2s}
.add-source-dropzone:hover{border-color:var(--accent);background:var(--accent-dim)}
.add-source-dropzone-icon{font-size:2.5rem;margin-bottom:0.75rem}
.add-source-dropzone-text{font-size:0.875rem;color:var(--text2)}
.add-source-dropzone-hint{font-size:0.75rem;color:var(--text3);margin-top:0.5rem}
.add-source-label{font-size:0.75rem;font-weight:600;color:var(--text2);margin-bottom:0.5rem;display:block}
.add-source-footer{display:flex;justify-content:flex-end;gap:0.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border);background:var(--bg2)}
.add-source-cancel{padding:0.625rem 1.25rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:0.8125rem;font-weight:600;color:var(--text2);cursor:pointer}
.add-source-cancel:hover{border-color:var(--accent);color:var(--accent)}
.add-source-submit{padding:0.625rem 1.25rem;background:var(--accent);border:none;border-radius:8px;font-size:0.8125rem;font-weight:600;color:white;cursor:pointer}
.add-source-submit:hover{filter:brightness(1.1)}

/* Dashboard Hub */
.dashboard-hub{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg);z-index:1000;overflow-y:auto}
.dashboard-hub-inner{max-width:1400px;margin:0 auto;padding:2rem}
.dashboard-hub-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}
.dashboard-hub-title{display:flex;align-items:center;gap:1rem}
.dashboard-hub-icon{font-size:2.5rem}
.dashboard-hub-title h1{font-family:var(--font-display);font-size:1.75rem;font-weight:700;margin:0}
.dashboard-hub-title p{font-size:0.875rem;color:var(--text3);margin:0.25rem 0 0}
.dashboard-close-btn{width:40px;height:40px;border:1px solid var(--border);background:var(--bg2);border-radius:8px;font-size:1.5rem;color:var(--text3);cursor:pointer;display:flex;align-items:center;justify-content:center}
.dashboard-close-btn:hover{border-color:var(--accent);color:var(--text)}
.dashboard-section{margin-bottom:2rem}
.dashboard-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}
.dashboard-section-header h3{font-size:1rem;font-weight:700;color:var(--text);margin:0}
.dashboard-section-hint{font-size:0.75rem;color:var(--text3)}
.dashboard-section-title-row{display:flex;align-items:center;gap:1.5rem}
.dashboard-section-actions{display:flex;align-items:center;gap:0.75rem}
.dashboard-select-all-btn{padding:0.375rem 0.75rem;background:var(--bg2);border:1px solid var(--border);border-radius:6px;font-size:0.75rem;font-weight:600;color:var(--text2);cursor:pointer}
.dashboard-select-all-btn:hover{border-color:var(--accent);color:var(--accent)}
.dashboard-add-btn{padding:0.375rem 0.75rem;background:var(--accent-dim);border:1px solid var(--accent);border-radius:6px;font-size:0.75rem;font-weight:600;color:var(--accent);cursor:pointer}
.dashboard-add-btn:hover{background:var(--accent);color:white}

/* Dashboard Toggle */
.dashboard-toggle{display:flex;align-items:center;gap:0.5rem;cursor:pointer;font-size:0.75rem;color:var(--text2)}
.dashboard-toggle input{display:none}
.dashboard-toggle-slider{width:36px;height:20px;background:var(--border);border-radius:10px;position:relative;transition:background 0.2s}
.dashboard-toggle-slider::after{content:'';position:absolute;top:2px;left:2px;width:16px;height:16px;background:white;border-radius:50%;transition:transform 0.2s}
.dashboard-toggle input:checked+.dashboard-toggle-slider{background:var(--accent)}
.dashboard-toggle input:checked+.dashboard-toggle-slider::after{transform:translateX(16px)}
.dashboard-toggle-label{font-weight:500}

/* Dashboard Type Grid */
.dashboard-type-grid{display:flex;flex-direction:column;gap:1rem}
.dashboard-category{border:1.5px solid rgba(194,154,86,0.3);border-radius:12px;padding:0.75rem;background:rgba(194,154,86,0.02)}
.dashboard-category-label{font-size:0.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;color:var(--accent);margin-bottom:0.625rem;padding-left:0.25rem;opacity:0.8}
.dashboard-category-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:0.5rem}
.dashboard-type-btn{display:flex;flex-direction:column;align-items:center;gap:0.375rem;padding:0.75rem 0.5rem;background:var(--bg2);border:1.5px solid var(--border);border-radius:10px;cursor:pointer;transition:all 0.15s}
.dashboard-type-btn:hover{border-color:var(--accent);background:var(--accent-dim);transform:translateY(-1px)}
.dashboard-type-btn.selected{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 0 2px rgba(194,154,86,0.2)}
.dashboard-type-icon{font-size:1.25rem}
.dashboard-type-label{font-size:0.625rem;font-weight:600;color:var(--text);text-align:center;line-height:1.2}

/* Dashboard About Section */
.dashboard-about-section{background:linear-gradient(135deg,var(--accent-dim),transparent);border:1px solid var(--accent);border-radius:12px;padding:1rem}
.dashboard-about-section .dashboard-section-header{margin-bottom:0.75rem}
.dashboard-about-preview{font-size:0.8125rem;color:var(--text2);line-height:1.5}
.dashboard-about-preview.disabled{opacity:0.5}
.dashboard-about-item{display:inline-flex;align-items:center;gap:0.25rem;padding:0.25rem 0.5rem;background:var(--bg);border-radius:4px;margin:0.25rem 0.25rem 0.25rem 0;font-size:0.75rem}

/* Dashboard Sources/Library Grid */
.dashboard-sources-grid,.dashboard-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:0.75rem;max-height:300px;overflow-y:auto;padding:0.25rem}
.dashboard-item-card{position:relative;padding:1rem;background:var(--bg2);border:2px solid var(--border);border-radius:10px;cursor:pointer;transition:all 0.15s}
.dashboard-item-card:hover{border-color:var(--text3)}
.dashboard-item-card.selected{border-color:var(--accent);background:var(--accent-dim)}
.dashboard-item-card.selected::after{content:'✓';position:absolute;top:0.5rem;right:0.5rem;width:20px;height:20px;background:var(--accent);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:700}
.dashboard-item-icon{font-size:1.25rem;margin-bottom:0.5rem}
.dashboard-item-name{font-size:0.8125rem;font-weight:600;color:var(--text);margin-bottom:0.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-item-meta{font-size:0.6875rem;color:var(--text3)}
.dashboard-item-score{display:inline-flex;align-items:center;gap:0.25rem;font-size:0.6875rem;font-weight:700;color:var(--accent)}

/* Dashboard Empty State */
.dashboard-empty-state{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;gap:0.75rem;padding:2rem;color:var(--text3);font-size:0.875rem}
.dashboard-empty-state button{padding:0.5rem 1rem;background:var(--accent-dim);border:1px solid var(--accent);border-radius:6px;color:var(--accent);font-size:0.8125rem;font-weight:600;cursor:pointer}
.dashboard-empty-state button:hover{background:var(--accent);color:white}

/* Dashboard Inspiration Preview */
.dashboard-inspiration-preview{padding:0.75rem;background:var(--bg2);border-radius:8px;font-size:0.8125rem}
.dashboard-inspiration-patterns{display:flex;flex-wrap:wrap;gap:0.5rem}
.dashboard-pattern-tag{padding:0.25rem 0.5rem;background:var(--accent-dim);border:1px solid var(--accent);border-radius:4px;font-size:0.6875rem;font-weight:600;color:var(--accent)}

/* Dashboard Action Bar */
.dashboard-action-bar{position:sticky;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--bg);border-top:1px solid var(--border);margin:-2rem -2rem 0;margin-top:2rem;box-shadow:0 -4px 20px rgba(0,0,0,0.1)}
.dashboard-selection-summary{font-size:0.875rem;color:var(--text2)}
.dashboard-selection-summary .selection-count{font-weight:600;color:var(--text)}
.dashboard-action-controls{display:flex;align-items:center;gap:1rem}
.dashboard-type-select{padding:0.625rem 1rem;background:var(--bg2);border:1px solid var(--border);border-radius:8px;font-size:0.875rem;color:var(--text);cursor:pointer;min-width:180px}
.dashboard-type-select:focus{border-color:var(--accent);outline:none}
.dashboard-create-btn{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1.5rem;background:linear-gradient(135deg,var(--accent),#b8860b);border:none;border-radius:8px;font-size:0.9375rem;font-weight:700;color:white;cursor:pointer;box-shadow:0 4px 12px rgba(194,154,86,0.4)}
.dashboard-create-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.dashboard-create-btn:disabled{opacity:0.5;cursor:not-allowed;transform:none}

/* Library View */
.library-view{padding:2rem;max-width:1400px;margin:0 auto}
.library-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}
.library-title h1{font-family:var(--font-display);font-size:1.75rem;font-weight:700;margin:0}
.library-subtitle{font-size:0.875rem;color:var(--text3);margin-top:0.25rem;display:block}
.library-actions{display:flex;gap:0.75rem}
.library-filter,.library-sort{padding:0.5rem 1rem;border:1px solid var(--border);border-radius:8px;background:var(--bg2);color:var(--text);font-size:0.8125rem;cursor:pointer}
.library-filter:hover,.library-sort:hover{border-color:var(--accent)}

/* Library Grid */
.library-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(320px, 1fr));gap:1.25rem}
.library-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;overflow:hidden;cursor:pointer;transition:all 0.2s}
.library-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.1)}
.library-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1rem 0.75rem}
.library-card-type{font-size:0.625rem;font-weight:700;text-transform:uppercase;padding:0.25rem 0.5rem;background:var(--accent-dim);color:var(--accent);border-radius:4px}
.library-card-score{font-size:0.875rem;font-weight:700;color:var(--accent)}
.library-card-score.high{color:#10b981}
.library-card-score.medium{color:#f59e0b}
.library-card-score.low{color:#ef4444}
.library-card-title{padding:0 1rem;font-size:1rem;font-weight:600;color:var(--text);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.library-card-preview{padding:0.75rem 1rem;font-size:0.8125rem;color:var(--text3);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:3.75rem}
.library-card-footer{display:flex;justify-content:space-between;align-items:center;padding:0.75rem 1rem;border-top:1px solid var(--border);background:var(--bg)}
.library-card-date{font-size:0.6875rem;color:var(--text3)}
.library-card-folder{font-size:0.6875rem;color:var(--accent);display:flex;align-items:center;gap:0.25rem}
.library-card-actions{display:flex;gap:0.25rem;opacity:0;transition:opacity 0.15s}
.library-card:hover .library-card-actions{opacity:1}
.library-card-action{width:28px;height:28px;border:none;background:var(--bg2);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:0.75rem}
.library-card-action:hover{background:var(--accent-dim)}
.library-empty{grid-column:1/-1;text-align:center;padding:4rem 2rem;color:var(--text3)}
.library-empty-icon{font-size:3rem;margin-bottom:1rem;opacity:0.5}
.library-empty-text{font-size:1rem;margin-bottom:0.5rem}
.library-empty-hint{font-size:0.875rem;opacity:0.7}

/* Library Preview Modal */
.library-preview-modal{position:fixed;inset:0;background:rgba(0,0,0,0.7);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;z-index:200;padding:2rem}
.library-preview-modal.show{display:flex}
.library-preview-content{background:var(--bg);border:1px solid var(--border);border-radius:16px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}
.library-preview-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);position:relative}
.library-preview-title-row{display:flex;align-items:center;gap:1rem}
.library-preview-title{flex:1;font-size:1.25rem;font-weight:700;border:none;background:transparent;color:var(--text);padding:0.25rem 0;border-bottom:2px solid transparent}
.library-preview-title:focus{outline:none;border-bottom-color:var(--accent)}
.library-preview-score{font-size:1.5rem;font-weight:700;color:var(--accent)}
.library-preview-meta{display:flex;gap:1rem;margin-top:0.5rem}
.library-preview-type,.library-preview-date,.library-preview-folder{font-size:0.75rem;color:var(--text3)}
.library-preview-type{font-weight:600;color:var(--accent)}
.library-preview-close{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border:none;background:var(--bg2);border-radius:8px;cursor:pointer;font-size:1.25rem;color:var(--text3)}
.library-preview-close:hover{background:var(--accent-dim);color:var(--text)}
.library-preview-body-wrap{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}
.library-preview-iframe{width:100%;flex:1;border:none;background:#fff;min-height:400px}
.library-preview-body{flex:1;padding:1.5rem;overflow-y:auto;font-size:0.9375rem;line-height:1.7;white-space:pre-wrap;background:var(--bg2)}
.library-preview-toggle{display:flex;gap:0.25rem;margin-left:auto}
.preview-toggle-btn{padding:0.25rem 0.625rem;background:var(--bg);border:1px solid var(--border);border-radius:4px;font-size:0.6875rem;font-weight:600;color:var(--text3);cursor:pointer}
.preview-toggle-btn:hover{border-color:var(--accent);color:var(--text)}
.preview-toggle-btn.active{background:var(--accent);border-color:var(--accent);color:white}
.library-preview-footer{display:flex;justify-content:space-between;padding:1rem 1.5rem;border-top:1px solid var(--border);background:var(--bg)}
.library-preview-actions-left,.library-preview-actions-right{display:flex;gap:0.5rem}
.library-action-btn{display:flex;align-items:center;gap:0.375rem;padding:0.625rem 1rem;border:1px solid var(--border);border-radius:8px;background:var(--bg2);color:var(--text);font-size:0.8125rem;font-weight:500;cursor:pointer;transition:all 0.15s}
.library-action-btn:hover{border-color:var(--accent);background:var(--accent-dim)}
.library-action-btn.secondary{background:var(--bg)}
.library-action-btn.primary{background:var(--accent);color:white;border-color:var(--accent)}
.library-action-btn.primary:hover{filter:brightness(1.1)}

/* Inspiration View */
.inspiration-view{padding:1.5rem;max-width:900px;margin:0 auto}
.inspiration-header{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}
.inspiration-header-content{display:flex;align-items:flex-start;gap:1rem}
.inspiration-icon{font-size:2.5rem}
.inspiration-header-text h2{font-size:1.375rem;font-weight:700;color:#92400e;margin-bottom:0.375rem}
.inspiration-header-text p{font-size:0.9375rem;color:#a16207;line-height:1.5}

.inspiration-input-section{display:flex;flex-direction:column;gap:1rem}
.inspiration-drop-zone{background:var(--bg2);border:2px dashed var(--border);border-radius:16px;padding:2.5rem 2rem;text-align:center;cursor:pointer;transition:all 0.2s}
.inspiration-drop-zone:hover,.inspiration-drop-zone.drag-over{border-color:var(--accent);background:var(--accent-dim)}
.inspiration-drop-icon{margin-bottom:1rem;color:var(--text3);opacity:0.5}
.inspiration-drop-zone:hover .inspiration-drop-icon{color:var(--accent);opacity:1}
.inspiration-drop-title{font-size:1.125rem;font-weight:600;margin-bottom:0.375rem;color:var(--text)}
.inspiration-drop-subtitle{font-size:0.875rem;color:var(--text2);margin-bottom:1rem}
.inspiration-drop-types{display:flex;justify-content:center;gap:1.5rem;font-size:0.8125rem;color:var(--text3)}

.inspiration-or{text-align:center;font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--text3);position:relative;margin:0.5rem 0}
.inspiration-or::before,.inspiration-or::after{content:'';position:absolute;top:50%;width:calc(50% - 2rem);height:1px;background:var(--border)}
.inspiration-or::before{left:0}
.inspiration-or::after{right:0}

.inspiration-paste-area{position:relative}
.inspiration-paste-area textarea{width:100%;min-height:180px;padding:1.25rem;padding-bottom:4rem;border:1px solid var(--border);border-radius:12px;font-size:0.9375rem;line-height:1.6;background:var(--bg2);color:var(--text);resize:vertical;font-family:inherit;box-sizing:border-box}
.inspiration-paste-area textarea:focus{outline:none;border-color:var(--accent);background:var(--bg)}
.inspiration-paste-area textarea::placeholder{color:var(--text3)}
.inspiration-analyze-btn{position:absolute;bottom:1rem;right:1rem;display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1.25rem;background:linear-gradient(135deg,#f59e0b,#d97706);color:white;border:none;border-radius:10px;font-size:0.9375rem;font-weight:700;cursor:pointer;transition:all 0.2s}
.inspiration-analyze-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(245,158,11,0.3)}

/* Inspiration Results */
.inspiration-results{background:var(--bg2);border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-top:1.5rem}
.inspiration-results-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-bottom:1px solid #a7f3d0}
.inspiration-results-header h3{font-size:1.125rem;font-weight:700;color:#065f46;margin:0}
.inspiration-score{text-align:right}
.inspiration-score-value{display:block;font-size:1.75rem;font-weight:800;color:#059669}
.inspiration-score-label{font-size:0.6875rem;text-transform:uppercase;letter-spacing:0.5px;color:#10b981}

.inspiration-patterns{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem}
.inspiration-pattern{background:var(--bg);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:all 0.2s}
.inspiration-pattern:hover{border-color:var(--accent);box-shadow:0 4px 12px rgba(0,0,0,0.08)}
.inspiration-pattern-header{display:flex;align-items:center;gap:0.75rem;padding:1rem 1.25rem;background:var(--bg);border-bottom:1px solid var(--border)}
.inspiration-pattern-check{width:22px;height:22px;border:2px solid var(--border);border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.15s;flex-shrink:0}
.inspiration-pattern-check.checked{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b981;color:white}
.inspiration-pattern-check svg{width:14px;height:14px;opacity:0}
.inspiration-pattern-check.checked svg{opacity:1}
.inspiration-pattern-title{font-weight:700;font-size:0.9375rem;color:var(--text);flex:1}
.inspiration-pattern-badge{font-size:0.625rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;padding:0.25rem 0.5rem;border-radius:4px;background:var(--accent-dim);color:var(--accent)}
.inspiration-pattern-body{padding:1rem 1.25rem;font-size:0.875rem;line-height:1.6;color:var(--text2)}
.inspiration-pattern-example{background:var(--bg2);border-radius:8px;padding:0.75rem 1rem;margin-top:0.75rem;font-style:italic;font-size:0.8125rem;color:var(--text3);border-left:3px solid var(--accent)}

.inspiration-actions{display:flex;justify-content:space-between;padding:1.25rem 1.5rem;border-top:1px solid var(--border);background:var(--bg)}
.inspiration-action-btn{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1.5rem;border-radius:10px;font-size:0.9375rem;font-weight:600;cursor:pointer;transition:all 0.2s}
.inspiration-action-btn.secondary{background:var(--bg2);border:1px solid var(--border);color:var(--text)}
.inspiration-action-btn.secondary:hover{border-color:var(--accent);background:var(--accent-dim)}
.inspiration-action-btn.primary{background:linear-gradient(135deg,#10b981,#059669);border:none;color:white}
.inspiration-action-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(16,185,129,0.3)}

/* Active Inspiration Badge (shows in Create tab) */
.inspiration-active-badge{display:inline-flex;align-items:center;gap:0.5rem;padding:0.5rem 1rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fbbf24;border-radius:20px;font-size:0.8125rem;font-weight:600;color:#92400e;margin-bottom:1rem}
.inspiration-active-icon{font-size:1rem}
.inspiration-active-text{flex:1}
.inspiration-active-clear{width:20px;height:20px;border:none;background:rgba(0,0,0,0.1);border-radius:50%;cursor:pointer;font-size:0.875rem;display:flex;align-items:center;justify-content:center;color:#92400e}
.inspiration-active-clear:hover{background:rgba(0,0,0,0.2)}

/* SEO View Slide-out Panel */
.seo-view-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(4px);z-index:400;display:none}
.seo-view-overlay.show{display:block}
.seo-view{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:800px;background:var(--bg);z-index:401;overflow-y:auto;padding:1.5rem;transform:translateX(100%);transition:transform 0.3s ease}
.seo-view.show{transform:translateX(0)}
.seo-view-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border-radius:10px;border:1px solid var(--border);background:var(--bg2);color:var(--text2);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all 0.15s}
.seo-view-close:hover{color:var(--text);border-color:var(--accent);background:var(--accent-dim)}
.seo-header{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem;margin-top:2rem}
.seo-header-content{display:flex;align-items:flex-start;gap:1rem}
.seo-icon{font-size:2.5rem}
.seo-header-text h2{font-size:1.375rem;font-weight:700;color:#1e40af;margin-bottom:0.375rem}
.seo-header-text p{font-size:0.9375rem;color:#3b82f6;line-height:1.5}

.seo-input-section{background:var(--bg2);border:1px solid var(--border);border-radius:16px;padding:1.5rem}
.seo-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
@media(max-width:640px){.seo-input-grid{grid-template-columns:1fr}}
.seo-input-group{display:flex;flex-direction:column;gap:0.5rem}
.seo-input-group label{font-size:0.8125rem;font-weight:600;color:var(--text)}
.seo-input-group input,.seo-input-group select,.seo-input-group textarea{padding:0.75rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:0.9375rem;background:var(--bg);color:var(--text);font-family:inherit}
.seo-input-group input:focus,.seo-input-group select:focus,.seo-input-group textarea:focus{outline:none;border-color:var(--accent)}
.seo-input-group input::placeholder,.seo-input-group textarea::placeholder{color:var(--text3)}

.seo-generate-row{display:flex;justify-content:center;margin-top:1.5rem}
.seo-generate-btn{display:flex;align-items:center;gap:0.5rem;padding:0.875rem 2rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:white;border:none;border-radius:10px;font-size:1rem;font-weight:700;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 16px rgba(59,130,246,0.3)}
.seo-generate-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(59,130,246,0.4)}
.seo-generate-btn:disabled{opacity:0.6;cursor:not-allowed;transform:none}

/* SEO Generating State */
.seo-generating{padding:3rem 2rem;text-align:center}
.seo-generating-spinner{width:48px;height:48px;border:4px solid #dbeafe;border-top-color:#3b82f6;border-radius:50%;margin:0 auto 1.5rem;animation:spin 1s linear infinite}
.seo-generating-text{font-size:1.125rem;font-weight:600;color:#1e40af;margin-bottom:0.75rem}
.seo-generating-summary{font-size:0.875rem;color:#3b82f6;line-height:1.6;max-width:400px;margin:0 auto}

/* SEO Results */
.seo-results{margin-top:1.5rem}
.seo-results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}
.seo-results-header h3{font-size:1.25rem;font-weight:700;color:var(--text)}
.seo-results-actions{display:flex;gap:0.75rem}
.seo-copy-all-btn{display:flex;align-items:center;gap:0.5rem;padding:0.625rem 1.25rem;background:linear-gradient(135deg,var(--accent),#b8860b);color:white;border:none;border-radius:8px;font-size:0.875rem;font-weight:600;cursor:pointer}
.seo-copy-all-btn:hover{filter:brightness(1.1)}

.seo-results-grid{display:grid;gap:1rem}
.seo-result-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;overflow:hidden}
.seo-result-card-header{display:flex;justify-content:space-between;align-items:center;padding:0.875rem 1rem;background:var(--bg);border-bottom:1px solid var(--border)}
.seo-result-card-title{display:flex;align-items:center;gap:0.5rem;font-weight:700;font-size:0.9375rem;color:var(--text)}
.seo-result-card-title span{font-size:1rem}
.seo-result-card-copy{padding:0.375rem 0.75rem;background:var(--bg2);border:1px solid var(--border);border-radius:6px;font-size:0.75rem;cursor:pointer;color:var(--text2)}
.seo-result-card-copy:hover{border-color:var(--accent);color:var(--accent)}
.seo-result-card-body{padding:1rem}
.seo-result-card-body pre{margin:0;white-space:pre-wrap;font-family:inherit;font-size:0.875rem;line-height:1.6;color:var(--text)}
.seo-result-card-body code{display:block;background:#1e293b;color:#e2e8f0;padding:1rem;border-radius:8px;font-family:'SF Mono',Monaco,monospace;font-size:0.8125rem;overflow-x:auto}

.seo-preview-frame{width:100%;min-height:600px;border:none;border-radius:8px;background:white}

.seo-char-count{font-size:0.75rem;color:var(--text3);margin-top:0.5rem}
.seo-char-count.warning{color:#f59e0b}
.seo-char-count.error{color:#ef4444}
.seo-char-count.good{color:#10b981}

/* SEO Tabs */
.seo-tabs{display:flex;gap:0.25rem;border-bottom:1px solid var(--border);margin-bottom:1rem;overflow-x:auto}
.seo-tab{padding:0.75rem 1.25rem;background:none;border:none;font-size:0.875rem;font-weight:600;color:var(--text3);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;transition:all 0.15s}
.seo-tab:hover{color:var(--text)}
.seo-tab.active{color:var(--accent);border-bottom-color:var(--accent)}

/* SEO Tab Content */
.seo-tab-content{display:block}

/* SERP Preview */
.seo-preview-container{display:flex;flex-direction:column;gap:1.5rem}
.seo-serp-preview{background:white;border:1px solid #dfe1e5;border-radius:8px;padding:1rem 1.25rem;max-width:600px}
.seo-serp-title{font-size:1.25rem;color:#1a0dab;margin-bottom:0.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:arial,sans-serif}
.seo-serp-url{font-size:0.875rem;color:#006621;margin-bottom:0.25rem;font-family:arial,sans-serif}
.seo-serp-description{font-size:0.875rem;color:#545454;line-height:1.5;font-family:arial,sans-serif;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.seo-preview-label{font-size:0.75rem;color:var(--text3);text-transform:uppercase;letter-spacing:0.5px;font-weight:600}

/* Preview iframe */
.seo-preview-iframe-container{background:var(--bg2);border:1px solid var(--border);border-radius:12px;overflow:hidden}
.seo-preview-toolbar{display:flex;justify-content:space-between;align-items:center;padding:0.75rem 1rem;background:var(--bg);border-bottom:1px solid var(--border);font-size:0.8125rem;font-weight:600;color:var(--text)}
.seo-preview-actions{display:flex;gap:0.5rem}
.seo-preview-actions button{padding:0.375rem 0.75rem;background:var(--bg2);border:1px solid var(--border);border-radius:6px;font-size:0.75rem;cursor:pointer;color:var(--text2)}
.seo-preview-actions button:hover{border-color:var(--accent);color:var(--accent)}
.seo-preview-frame{width:100%;min-height:500px;border:none;background:white}

/* Keywords */
.seo-keywords{display:flex;flex-wrap:wrap;gap:0.5rem}
.seo-keyword{padding:0.375rem 0.75rem;background:var(--bg);border:1px solid var(--border);border-radius:20px;font-size:0.8125rem;color:var(--text2)}
.seo-keyword.primary{background:var(--accent-dim);border-color:var(--accent);color:var(--accent);font-weight:600}

/* Schema tip */
.seo-schema-tip{margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#dbeafe,#eff6ff);border-radius:8px;font-size:0.875rem;color:#1e40af}

/* Headings tree */
.seo-headings-tree{padding:0.5rem 0}
.seo-heading{display:flex;align-items:center;gap:0.75rem;padding:0.5rem 0;border-bottom:1px solid var(--border)}
.seo-heading:last-child{border-bottom:none}
.seo-heading.h1{font-weight:700;font-size:1rem}
.seo-heading.h2{padding-left:1.5rem;font-weight:600;font-size:0.9375rem}
.seo-heading.h3{padding-left:3rem;font-size:0.875rem;color:var(--text2)}
.seo-heading.h4{padding-left:4.5rem;font-size:0.8125rem;color:var(--text3)}
.seo-heading-tag{font-size:0.625rem;font-weight:700;padding:0.125rem 0.375rem;background:var(--accent-dim);color:var(--accent);border-radius:4px;font-family:monospace}

/* SEO Score Card */
.seo-score-card{margin-top:1.5rem;background:var(--bg2);border:1px solid var(--border);border-radius:12px;overflow:hidden}
.seo-score-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-bottom:1px solid #a7f3d0}
.seo-score-header span:first-child{font-weight:700;color:#065f46}
.seo-score-value{font-size:1.5rem;font-weight:800;color:#059669}
.seo-score-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:0.5rem;padding:1rem 1.25rem}
.seo-check-item{display:flex;align-items:center;gap:0.5rem;font-size:0.8125rem;padding:0.5rem 0.75rem;border-radius:6px}
.seo-check-item.pass{color:#059669}
.seo-check-item.fail{color:var(--text3)}
.seo-check-icon{font-size:0.875rem}
.seo-check-item.pass .seo-check-icon{color:#10b981}

/* Start Mode Chooser */
.start-mode-chooser{text-align:center;padding:2rem 1rem;max-width:700px;margin:0 auto}
.start-mode-header{margin-bottom:2rem}
.start-mode-header h2{font-size:1.75rem;font-weight:700;color:var(--text);margin-bottom:0.5rem}
.start-mode-header p{font-size:1rem;color:var(--text2)}
.start-mode-options{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}
@media(max-width:600px){.start-mode-options{grid-template-columns:1fr}}
.start-mode-card{background:var(--bg);border:2px solid var(--border);border-radius:16px;padding:1.75rem 1.5rem;cursor:pointer;transition:all 0.2s;text-align:center}
.start-mode-card:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,0.12)}
.start-mode-icon{font-size:2.5rem;margin-bottom:0.75rem}
.start-mode-title{font-size:1.25rem;font-weight:700;color:var(--text);margin-bottom:0.5rem}
.start-mode-desc{font-size:0.9375rem;color:var(--text2);line-height:1.5;margin-bottom:1rem}
.start-mode-badge{display:inline-block;font-size:0.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;padding:0.375rem 0.75rem;background:var(--accent-dim);color:var(--accent);border-radius:20px}

/* Mode Back Button */
.mode-back-btn{display:inline-flex;align-items:center;gap:0.5rem;padding:0.5rem 0.75rem;background:none;border:none;color:var(--text3);font-size:0.875rem;cursor:pointer;margin-bottom:1rem;border-radius:8px;transition:all 0.15s}
.mode-back-btn:hover{background:var(--bg2);color:var(--text)}

/* Guide Me URL Popup */
.guideme-url-popup{position:fixed;inset:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:10002;opacity:0;visibility:hidden;transition:all 0.2s}
.guideme-url-popup.show{opacity:1;visibility:visible}
.guideme-url-popup.show.loading{background:rgba(0,0,0,0.7);backdrop-filter:blur(8px)}
.guideme-url-content{background:var(--bg);border-radius:20px;width:90%;max-width:440px;padding:2rem;text-align:center;transform:translateY(20px);transition:transform 0.2s;box-shadow:0 25px 50px -12px rgba(0,0,0,0.25);position:relative;z-index:10003}
.guideme-url-popup.show .guideme-url-content{transform:translateY(0)}
.guideme-url-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--text3);cursor:pointer;padding:0.25rem;z-index:10}
.guideme-url-close:hover{color:var(--text)}
.guideme-url-header{margin-bottom:1.5rem}
.guideme-url-icon{font-size:3rem;margin-bottom:0.75rem}
.guideme-url-header h3{font-size:1.375rem;font-weight:700;color:var(--text);margin:0 0 0.5rem 0}
.guideme-url-header p{font-size:0.9375rem;color:var(--text2);margin:0}
.guideme-url-input-wrap{display:flex;gap:0.5rem;margin-bottom:1rem}
.guideme-url-input{flex:1;padding:0.875rem 1rem;border:2px solid var(--border);border-radius:10px;font-size:0.9375rem;background:var(--bg2);color:var(--text);font-family:inherit}
.guideme-url-input:focus{outline:none;border-color:var(--accent)}
.guideme-url-input::placeholder{color:var(--text3)}
.guideme-url-fetch-btn{padding:0.875rem 1.25rem;background:linear-gradient(135deg,var(--accent),var(--accent-hover));color:white;border:none;border-radius:10px;font-size:0.875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:0.5rem;transition:all 0.15s}
.guideme-url-fetch-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(196,160,82,0.3)}
.guideme-url-divider{display:flex;align-items:center;gap:1rem;margin:1.25rem 0;color:var(--text3);font-size:0.8125rem}
.guideme-url-divider::before,.guideme-url-divider::after{content:'';flex:1;height:1px;background:var(--border)}
.guideme-url-skip-btn{width:100%;padding:0.875rem 1rem;background:var(--bg2);border:2px solid var(--border);border-radius:10px;font-size:0.9375rem;font-weight:600;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:0.5rem;transition:all 0.15s}
.guideme-url-skip-btn:hover{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}
.guideme-url-hint{font-size:0.75rem;color:var(--text3);margin-top:0.75rem}
.guideme-url-fetch-btn .spinning{animation:spin 1s linear infinite}

/* Floating Pills Animation - Outside the popup */
.guideme-pills-container{position:fixed;inset:0;pointer-events:none;overflow:hidden;opacity:0;transition:opacity 0.3s;z-index:10004}
.guideme-pills-container.active{opacity:1}
.guideme-pill{position:absolute;padding:8px 14px;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap;opacity:0;transition:opacity 0.3s;box-shadow:0 4px 16px rgba(0,0,0,0.15);border:1px solid rgba(255,255,255,0.3);z-index:10004}
.guideme-pill.visible{opacity:1}
.guideme-pill.marketing{background:linear-gradient(135deg,#c4a052 0%,#a88a3e 100%);color:white}
.guideme-pill.audience{background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);color:white}
.guideme-pill.content{background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:white}
.guideme-pill.strategy{background:linear-gradient(135deg,#8b5cf6 0%,#6366f1 100%);color:white}
.guideme-pill.insight{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);color:white}
.guideme-pill.creative{background:linear-gradient(135deg,#ec4899 0%,#db2777 100%);color:white}
.guideme-pill.processing{background:linear-gradient(135deg,#64748b 0%,#475569 100%);color:white}
.guideme-loading-state{display:none;flex-direction:column;align-items:center;gap:1rem;padding:2rem 0}
.guideme-loading-state.active{display:flex}
.guideme-loading-spinner{width:48px;height:48px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}
.guideme-loading-text{font-size:1rem;font-weight:600;color:var(--text)}
.guideme-loading-sub{font-size:0.8125rem;color:var(--text3)}
.guideme-form-state{transition:opacity 0.3s}
.guideme-form-state.hidden{opacity:0;pointer-events:none;position:absolute}

/* Guided Coach Mode */
.guided-coach-mode{max-width:900px;margin:0 auto;padding:0 1rem}

/* Single column layout - no side panel */
.coach-split-layout{display:block}
.coach-main-panel{min-width:0}
.coach-side-panel{display:none}

/* Side Panel Drop Area - Compact */
.coach-drop-area{background:var(--bg);border:1px solid var(--border);border-radius:10px;overflow:hidden}
.coach-drop-header{display:flex;align-items:center;gap:0.375rem;padding:0.625rem 0.75rem;background:var(--bg2);border-bottom:1px solid var(--border);font-size:0.8125rem;font-weight:600;color:var(--text)}
.coach-drop-icon{font-size:1rem}
.coach-drop-zone{padding:1rem 0.75rem;text-align:center;border:2px dashed var(--border);border-radius:6px;margin:0.625rem;cursor:pointer;transition:all 0.2s}
.coach-drop-zone:hover,.coach-drop-zone.drag-over{border-color:var(--accent);background:var(--accent-dim)}
.coach-drop-zone svg{color:var(--text3);margin-bottom:0.25rem;width:24px;height:24px}
.coach-drop-zone p{font-size:0.8125rem;font-weight:600;color:var(--text);margin:0 0 0.125rem}
.coach-drop-zone span{font-size:0.6875rem;color:var(--text3)}
.coach-drop-hint{padding:0.5rem 0.75rem;font-size:0.6875rem;color:var(--text3);text-align:center;border-top:1px solid var(--border);background:var(--bg2)}

/* Files List - Compact */
.coach-files-list{padding:0 0.625rem 0.625rem}
.coach-files-list:empty{display:none}
.coach-file-item{display:flex;align-items:center;gap:0.375rem;padding:0.5rem;background:var(--bg2);border-radius:6px;margin-bottom:0.375rem;font-size:0.75rem}
.coach-file-item .file-icon{font-size:0.875rem}
.coach-file-item .file-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}
.coach-file-item .file-status{font-size:0.625rem;color:#10b981;font-weight:600}
.coach-file-item .file-remove{width:18px;height:18px;border:none;background:none;color:var(--text3);cursor:pointer;border-radius:4px;font-size:0.875rem}
.coach-file-item .file-remove:hover{background:var(--bg);color:#ef4444}

/* Coach Header - Compact */
.coach-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.75rem;padding:0.75rem 1rem;background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border-radius:12px;border:1px solid #bbf7d0}
.coach-header-left{display:flex;align-items:center;gap:0.625rem;flex:1}
.coach-avatar{font-size:1.75rem}
.coach-title{flex:1}
.coach-title h2{font-size:1rem;font-weight:700;color:#065f46;margin:0 0 0.125rem}
.coach-title p{font-size:0.75rem;color:#047857;margin:0;line-height:1.3}
.coach-progress{text-align:center}
.coach-progress-circle{position:relative;width:50px;height:50px}
.coach-progress-circle svg{width:100%;height:100%;transform:rotate(-90deg)}
.coach-progress-circle .progress-bg{fill:none;stroke:#e5e7eb;stroke-width:3}
.coach-progress-circle .progress-fill{fill:none;stroke:#10b981;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray 0.5s ease}
.coach-progress-circle .progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:0.875rem;font-weight:800;color:#065f46}
.coach-progress-label{font-size:0.5625rem;text-transform:uppercase;letter-spacing:0.5px;color:#047857;margin-top:0.25rem}

/* Coach Message - Compact single line */
.coach-message{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:0.625rem 0.875rem;margin-bottom:0.625rem}
.coach-message-text{font-size:0.8125rem;line-height:1.4;color:var(--text)}
.coach-message-text p{margin:0}

/* Insight Panel - Compact */
.coach-insight{display:flex;align-items:center;gap:0.5rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fbbf24;border-radius:8px;padding:0.5rem 0.75rem;margin-bottom:0.625rem}
.insight-icon{font-size:0.875rem;flex-shrink:0}
.insight-text{font-size:0.75rem;line-height:1.3;color:#92400e}
.coach-header-left{display:flex;align-items:center;gap:1rem}
.coach-avatar{font-size:2.5rem}
.coach-title h2{font-size:1.25rem;font-weight:700;color:#065f46;margin:0 0 0.25rem}
.coach-title p{font-size:0.875rem;color:#047857;margin:0}
.coach-progress{text-align:center}
.coach-progress-circle{position:relative;width:70px;height:70px}
.coach-progress-circle svg{width:100%;height:100%;transform:rotate(-90deg)}
.coach-progress-circle .progress-bg{fill:none;stroke:#e5e7eb;stroke-width:3}
.coach-progress-circle .progress-fill{fill:none;stroke:#10b981;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray 0.5s ease}
.coach-progress-circle .progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.125rem;font-weight:800;color:#065f46}
.coach-progress-label{font-size:0.6875rem;text-transform:uppercase;letter-spacing:0.5px;color:#047857;margin-top:0.375rem}

/* Framework Explainer Note */
.coach-framework-note{display:flex;align-items:flex-start;gap:0.875rem;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #93c5fd;border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.25rem}
.framework-icon{font-size:1.5rem;flex-shrink:0}
.framework-text{font-size:0.875rem;line-height:1.6;color:#1e40af}
.framework-text strong{color:#1e3a8a}

/* Coach Loading State */
.coach-loading{text-align:center;padding:3rem 2rem}
.coach-loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;margin:0 auto 1rem;animation:spin 0.8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.coach-loading p{font-size:1rem;color:var(--text);margin:0 0 0.5rem}
.coach-loading-sub{font-size:0.8125rem;color:var(--text3)}

/* Coach Error State */
.coach-error{text-align:center;padding:2rem;background:#fef2f2;border:1px solid #fecaca;border-radius:12px}
.coach-error p{color:#991b1b;margin:0 0 1rem}
.coach-error button{padding:0.625rem 1.25rem;background:#dc2626;color:white;border:none;border-radius:8px;font-weight:600;cursor:pointer}

/* What We Know Panel - Compact */
.coach-gathered{background:var(--bg2);border:1px solid var(--border);border-radius:10px;margin-bottom:0.75rem;overflow:hidden}
.gathered-header{display:flex;justify-content:space-between;align-items:center;padding:0.5rem 0.75rem;cursor:pointer;font-size:0.8125rem;font-weight:600;color:var(--text);background:var(--bg)}
.gathered-header:hover{background:var(--accent-dim)}
.gathered-toggle{font-size:0.625rem;transition:transform 0.2s}
.gathered-header.open .gathered-toggle{transform:rotate(180deg)}
.gathered-content{padding:0.5rem;display:none}
.gathered-header.open + .gathered-content{display:block}
.gathered-item{display:flex;align-items:flex-start;gap:0.5rem;padding:0.25rem 0;border-bottom:1px solid var(--border)}
.gathered-item:last-child{border-bottom:none}
.gathered-icon{font-size:0.8125rem;flex-shrink:0}
.gathered-label{font-size:0.5625rem;text-transform:uppercase;letter-spacing:0.5px;color:var(--text3)}
.gathered-value{font-size:0.75rem;color:var(--text);line-height:1.3}
.gathered-value.strong{color:#059669;font-weight:600}
.gathered-value.weak{color:#f59e0b}

/* Coach Questions - Single Column Stack */
.coach-questions{display:flex;flex-direction:column;gap:0.5rem;margin-bottom:0.625rem}
.coach-question-card{background:var(--bg);border:2px solid #d4a853;border-radius:10px;overflow:hidden;transition:all 0.3s ease;animation:goldGlow 3s ease-in-out infinite;display:grid;grid-template-columns:130px 1fr;align-items:stretch}
@media(max-width:600px){.coach-question-card{grid-template-columns:1fr}}
@keyframes goldGlow{0%,100%{box-shadow:0 0 6px 0 rgba(212,168,83,0.12)}50%{box-shadow:0 0 12px 2px rgba(212,168,83,0.2)}}
.coach-question-card:focus-within{border-color:#d97706;box-shadow:0 0 0 3px rgba(217,119,6,0.15);animation:none}

/* Completed question state */
.coach-question-card.completed{border-color:#10b981;animation:none;box-shadow:0 0 6px 0 rgba(16,185,129,0.15)}
.coach-question-card.completed .question-label{color:#059669;background:linear-gradient(135deg,#f0fdf4,#ecfdf5)}
.coach-question-card.completed .question-label::before{content:'✓ ';color:#10b981}

/* Question label on left - narrower */
.question-label{font-size:0.8125rem;font-weight:700;color:var(--text);padding:0.75rem;display:flex;align-items:center;background:var(--bg2);border-right:1px solid var(--border)}
@media(max-width:600px){.question-label{border-right:none;border-bottom:1px solid var(--border);padding:0.625rem 0.75rem}}

/* Input area on right - MUCH BIGGER */
.question-input-wrap{padding:0.5rem;display:flex;align-items:stretch;gap:0.5rem}
.question-input{flex:1;padding:0.75rem;border:1px solid var(--border);border-radius:8px;font-size:0.875rem;background:var(--bg3);color:var(--text);resize:none;font-family:inherit;min-height:90px;transition:all 0.15s;box-sizing:border-box}
.question-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}
.question-input::placeholder{color:var(--text3);font-size:0.8125rem}

/* File button */
.question-file-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;border:1px solid var(--border);border-radius:8px;background:var(--bg2);color:var(--text3);cursor:pointer;transition:all 0.15s;font-size:1rem}
.question-file-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}
.question-input::placeholder{color:var(--text3)}
.question-footer{padding:0.75rem 1.25rem;background:var(--bg2);display:flex;justify-content:space-between;align-items:center}
.question-example{font-size:0.75rem;color:var(--text3);font-style:italic;flex:1}
.question-file-btn{display:flex;align-items:center;gap:0.375rem;padding:0.5rem 0.75rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:0.75rem;color:var(--text2);cursor:pointer;transition:all 0.15s}
.question-file-btn:hover{border-color:var(--accent);color:var(--accent)}
.question-stuck{padding:0.75rem 1.25rem;background:linear-gradient(135deg,#fef3c7,#fef9c3);border-top:1px solid #fde68a;font-size:0.8125rem;color:#92400e;display:none}
.question-card:focus-within .question-stuck{display:block}

/* Coach Actions - Compact */
.coach-actions{display:flex;justify-content:space-between;align-items:center;gap:0.75rem;margin-bottom:0.75rem}
.coach-actions-right{display:flex;align-items:center;gap:0.5rem}
.coach-skip-btn{display:flex;align-items:center;gap:0.375rem;padding:0.5rem 0.875rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:0.8125rem;font-weight:600;color:var(--text2);cursor:pointer;transition:all 0.2s}
.coach-skip-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}
.coach-skip-btn:disabled{opacity:0.4;cursor:not-allowed}
.coach-skip-btn svg{width:14px;height:14px}
.coach-file-drop-btn{display:flex;align-items:center;gap:0.375rem;padding:0.625rem 1rem;background:var(--bg);border:1px dashed var(--border);border-radius:10px;font-size:0.8125rem;font-weight:600;color:var(--text2);cursor:pointer;transition:all 0.2s}
.coach-file-drop-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim);border-style:solid}
.coach-next-btn{display:flex;align-items:center;gap:0.5rem;padding:0.625rem 1.5rem;background:linear-gradient(135deg,#10b981,#059669);color:white;border:none;border-radius:10px;font-size:0.9375rem;font-weight:700;cursor:pointer;transition:all 0.2s;box-shadow:0 3px 10px rgba(16,185,129,0.25)}
.coach-next-btn:hover{transform:translateY(-1px);box-shadow:0 5px 16px rgba(16,185,129,0.35)}
.coach-next-btn:active{transform:translateY(0)}
.coach-next-btn:disabled{opacity:0.5;cursor:not-allowed;transform:none;box-shadow:none}
.coach-next-btn svg{transition:transform 0.2s;width:16px;height:16px}
.coach-next-btn:hover svg{transform:translateX(2px)}

/* Coach URL Input */
.coach-url-input{margin-bottom:1rem}
.coach-url-wrap{display:flex;gap:0.5rem;align-items:center}
.coach-url-field{flex:1;padding:0.625rem 1rem;border:1px solid var(--border);border-radius:10px;font-size:0.875rem;background:var(--bg);color:var(--text);transition:all 0.15s}
.coach-url-field:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}
.coach-url-field::placeholder{color:var(--text3)}
.coach-url-btn{display:flex;align-items:center;gap:0.5rem;padding:0.625rem 1rem;background:var(--bg);border:1px solid var(--border);border-radius:10px;font-size:0.8125rem;font-weight:600;color:var(--text);cursor:pointer;transition:all 0.15s;white-space:nowrap}
.coach-url-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}
.coach-url-btn:disabled{opacity:0.5;cursor:not-allowed}
.coach-url-btn.loading{pointer-events:none}
.coach-url-btn.loading svg{animation:spin 1s linear infinite}

/* Ready Panel - Compact */
.coach-ready-panel{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #86efac;border-radius:10px;padding:0.875rem;margin-bottom:1rem}
.ready-header{display:flex;align-items:center;gap:0.5rem;margin-bottom:0.625rem}
.ready-icon{font-size:1.125rem}
.ready-header h3{font-size:0.9375rem;font-weight:700;color:#065f46;margin:0}
.ready-brief{background:white;border-radius:8px;padding:0.625rem;margin-bottom:0.625rem;border:1px solid #bbf7d0}
.ready-brief-item{display:flex;gap:0.5rem;padding:0.25rem 0;border-bottom:1px solid #e5e7eb}
.ready-brief-item:last-child{border-bottom:none}
.ready-brief-label{font-size:0.625rem;font-weight:600;text-transform:uppercase;color:#6b7280;width:60px;flex-shrink:0}
.ready-brief-value{font-size:0.75rem;color:#111827;flex:1}
.ready-brief-note{font-size:0.6875rem;color:#6b7280;font-style:italic;padding:0.5rem 0 0;border-top:1px dashed #e5e7eb;margin-top:0.25rem}
.ready-content-types p{font-size:0.75rem;color:#065f46;margin-bottom:0.375rem;font-weight:600}

/* Ready Type Sections */
.ready-type-section{margin-bottom:0.75rem}
.ready-type-section.series{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:8px;padding:0.625rem;border:1px solid #fbbf24}
.ready-type-section-label{font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:#065f46;margin-bottom:0.5rem}
.ready-type-section.series .ready-type-section-label{color:#92400e}
.ready-type-buttons{display:flex;flex-wrap:wrap;gap:0.375rem}
.ready-type-btn{padding:0.375rem 0.625rem;background:white;border:1px solid #86efac;border-radius:6px;font-size:0.75rem;font-weight:600;color:#065f46;cursor:pointer;transition:all 0.15s}
.ready-type-btn:hover{background:#065f46;color:white;border-color:#065f46}
.ready-type-btn.series-btn{display:flex;flex-direction:column;align-items:flex-start;gap:0.125rem;padding:0.5rem 0.75rem;border-color:#d97706}
.ready-type-btn.series-btn:hover{background:#d97706;border-color:#d97706}
.series-badge{font-size:0.5625rem;font-weight:600;color:#92400e;opacity:0.8}
.ready-type-btn.series-btn:hover .series-badge{color:white;opacity:0.9}

/* Series Planning View */
.series-planning{padding:0.5rem}
.series-header{display:flex;align-items:center;gap:1rem;margin-bottom:0.75rem}
.series-back-btn{padding:0.375rem 0.625rem;background:none;border:1px solid var(--border);border-radius:6px;font-size:0.75rem;color:var(--text2);cursor:pointer}
.series-back-btn:hover{border-color:var(--accent);color:var(--accent)}
.series-title{display:flex;align-items:center;gap:0.5rem}
.series-icon{font-size:1.25rem}
.series-title h3{font-size:1rem;font-weight:700;color:#065f46;margin:0}
.series-intro{font-size:0.8125rem;color:#047857;margin-bottom:1rem;line-height:1.5}
.series-intro strong{color:#065f46}

/* Series Ideas Grid */
.series-ideas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:0.625rem;max-height:400px;overflow-y:auto;padding:0.25rem}
.series-idea-card{display:flex;gap:0.625rem;padding:0.75rem;background:white;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all 0.15s}
.series-idea-card:hover{border-color:#d4a853;box-shadow:0 2px 8px rgba(0,0,0,0.08)}
.series-idea-card.selected{border-color:#10b981;background:linear-gradient(135deg,#f0fdf4,#ecfdf5)}
.series-idea-check{flex-shrink:0}
.series-checkbox{width:20px;height:20px;border:2px solid #d1d5db;border-radius:6px;transition:all 0.15s}
.series-idea-card.selected .series-checkbox{background:#10b981;border-color:#10b981}
.series-idea-card.selected .series-checkbox::after{content:'✓';color:white;display:flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:700}
.series-idea-content{flex:1;min-width:0}
.series-idea-type{font-size:0.625rem;font-weight:700;text-transform:uppercase;color:#d97706;margin-bottom:0.25rem}
.series-idea-hook{font-size:0.8125rem;font-weight:600;color:#111827;margin-bottom:0.25rem;line-height:1.3}
.series-idea-topic{font-size:0.75rem;color:#6b7280;margin-bottom:0.375rem}
.series-idea-meta{display:flex;gap:0.5rem;flex-wrap:wrap}
.series-idea-angle,.series-idea-goal{font-size:0.625rem;padding:0.125rem 0.375rem;background:#f3f4f6;border-radius:4px;color:#6b7280}
.series-idea-goal{background:#dbeafe;color:#1e40af}

/* Series Actions */
.series-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:0.75rem;border-top:1px solid #bbf7d0}
.series-selected-count{font-size:0.875rem;font-weight:600;color:#065f46}
.series-create-btn{padding:0.625rem 1.25rem;background:linear-gradient(135deg,#10b981,#059669);color:white;border:none;border-radius:8px;font-size:0.875rem;font-weight:700;cursor:pointer;transition:all 0.15s}
.series-create-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(16,185,129,0.3)}
.series-create-btn:disabled{opacity:0.5;cursor:not-allowed}

/* Series Creating View */
.series-creating{padding:0.5rem}
.series-progress{margin:1rem 0}
.series-progress-bar{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}
.series-progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:4px;transition:width 0.3s ease}
.series-progress-text{font-size:0.8125rem;color:#065f46;margin-top:0.5rem;text-align:center}
.series-done-btn{margin-left:0.5rem;padding:0.375rem 0.75rem;background:#065f46;color:white;border:none;border-radius:6px;font-size:0.75rem;font-weight:600;cursor:pointer}

/* Series Created List */
.series-created-list{display:flex;flex-direction:column;gap:0.625rem;max-height:350px;overflow-y:auto}
.series-created-item{background:white;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}
.series-created-header{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0.75rem;background:#f9fafb;border-bottom:1px solid #e5e7eb}
.series-created-num{width:24px;height:24px;background:#065f46;color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:700}
.series-created-type{font-size:0.6875rem;font-weight:600;text-transform:uppercase;color:#6b7280;flex:1}
.series-copy-btn{padding:0.25rem 0.5rem;background:none;border:1px solid #d1d5db;border-radius:4px;font-size:0.6875rem;cursor:pointer}
.series-copy-btn:hover{border-color:#10b981;color:#10b981}
.series-created-content{padding:0.75rem;font-size:0.8125rem;line-height:1.6;color:#374151;max-height:150px;overflow-y:auto}

/* ============================================================================
   AI VISUAL GENERATION UI
   ============================================================================ */

/* Visual Offer Panel */
.visual-offer-panel{background:linear-gradient(135deg,#faf5ff,#f3e8ff);border:1px solid #c084fc;border-radius:8px;margin:0.5rem 0;overflow:hidden}
.visual-offer-header{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0.75rem;border-bottom:1px solid #e9d5ff}
.visual-offer-icon{font-size:1.25rem}
.visual-offer-text{flex:1}
.visual-offer-text h4{font-size:0.8125rem;font-weight:700;color:#7c3aed;margin:0 0 0.125rem}
.visual-offer-text p{font-size:0.75rem;color:#8b5cf6;margin:0}
.visual-offer-close{width:24px;height:24px;border:none;background:none;font-size:1rem;color:#a78bfa;cursor:pointer;border-radius:4px}
.visual-offer-close:hover{background:#ede9fe;color:#7c3aed}

/* Visual Options */
.visual-offer-options{padding:0.5rem;display:flex;flex-direction:column;gap:0.375rem}
.visual-option{display:flex;align-items:center;gap:0.75rem;padding:0.875rem 1rem;background:white;border:1px solid #e9d5ff;border-radius:10px;cursor:pointer;transition:all 0.15s}
.visual-option:hover{border-color:#c084fc;box-shadow:0 2px 8px rgba(139,92,246,0.15)}
.visual-option.disabled{opacity:0.6;cursor:not-allowed;pointer-events:none}
.visual-option.disabled:hover{border-color:#e9d5ff;box-shadow:none}
.visual-option-icon{font-size:1.25rem}
.visual-option-info{flex:1}
.visual-option-info strong{display:block;font-size:0.875rem;color:#5b21b6;margin-bottom:0.125rem}
.visual-option-info span{font-size:0.75rem;color:#8b5cf6}
.visual-option-badge{font-size:0.625rem;font-weight:700;text-transform:uppercase;padding:0.25rem 0.5rem;background:#ede9fe;color:#7c3aed;border-radius:4px}
.visual-coming-soon-badge{font-size:0.6875rem;font-weight:700;text-transform:uppercase;padding:0.375rem 0.75rem;background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border-radius:6px;letter-spacing:0.025em}

.visual-offer-skip{padding:0.375rem;text-align:center;border-top:1px solid #e9d5ff}
.visual-offer-skip button{background:none;border:none;font-size:0.6875rem;color:#a78bfa;cursor:pointer}
.visual-offer-skip button:hover{color:#7c3aed;text-decoration:underline}

/* Visual Setup Hint - when no API configured */
.visual-setup-hint{background:linear-gradient(135deg,#1e293b,#0f172a);border:1px solid rgba(212,168,83,0.3);border-radius:12px;margin:1rem 0;overflow:hidden}
.visual-setup-hint-content{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem}
.visual-setup-hint-icon{font-size:1.5rem}
.visual-setup-hint-text{flex:1}
.visual-setup-hint-text strong{display:block;font-size:0.9375rem;color:white;margin-bottom:0.25rem}
.visual-setup-hint-text span{font-size:0.8125rem;color:rgba(255,255,255,0.6)}
.visual-setup-hint-btn{padding:0.625rem 1.25rem;background:linear-gradient(135deg,#d4a853,#b8943a);color:#0f172a;border:none;border-radius:8px;font-size:0.8125rem;font-weight:700;cursor:pointer;transition:all 0.2s;white-space:nowrap}
.visual-setup-hint-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.visual-setup-hint-btn.disabled,.visual-setup-hint-btn:disabled{background:linear-gradient(135deg,#9ca3af,#6b7280);color:rgba(255,255,255,0.8);cursor:not-allowed;filter:none;transform:none}
.visual-setup-hint-close{width:28px;height:28px;border:none;background:rgba(255,255,255,0.1);color:rgba(255,255,255,0.6);cursor:pointer;border-radius:6px;font-size:1rem;display:flex;align-items:center;justify-content:center}
.visual-setup-hint-close:hover{background:rgba(255,255,255,0.2);color:white}

/* Visual Generating */
.visual-generating{padding:2rem;text-align:center}
.visual-generating-spinner{width:40px;height:40px;border:3px solid #ede9fe;border-top-color:#7c3aed;border-radius:50%;margin:0 auto 1rem;animation:spin 1s linear infinite}
.visual-generating h4{font-size:1rem;color:#5b21b6;margin:0 0 0.5rem}
.visual-generating p{font-size:0.875rem;color:#8b5cf6;margin:0 0 1rem}
.visual-gen-progress{height:6px;background:#ede9fe;border-radius:3px;overflow:hidden}
.visual-gen-progress-bar{height:100%;background:linear-gradient(90deg,#8b5cf6,#7c3aed);transition:width 0.3s ease}

/* Visual Results */
.visual-results{padding:1rem}
.visual-results-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:0.75rem;margin-bottom:1rem}
.visual-results-header h4{font-size:1.125rem;color:#5b21b6;margin:0}
.visual-results-intro{font-size:0.8125rem;color:#7c3aed;margin:0.25rem 0 0;width:100%}
.visual-results-actions{display:flex;gap:0.5rem}
.visual-download-all,.visual-regenerate{display:flex;align-items:center;gap:0.375rem;padding:0.5rem 0.875rem;border-radius:8px;font-size:0.75rem;font-weight:600;cursor:pointer;transition:all 0.15s}
.visual-download-all{background:#7c3aed;color:white;border:none}
.visual-download-all:hover{background:#6d28d9}
.visual-regenerate{background:white;border:1px solid #c084fc;color:#7c3aed}
.visual-regenerate:hover{background:#faf5ff}

/* Visual Results Grid - LARGER */
.visual-results-grid-large{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}
@media(max-width:700px){.visual-results-grid-large{grid-template-columns:1fr}}
.visual-result-card-large{background:white;border:2px solid #e9d5ff;border-radius:12px;overflow:hidden;cursor:pointer;transition:all 0.2s}
.visual-result-card-large:hover{border-color:#c084fc;box-shadow:0 8px 24px rgba(139,92,246,0.2);transform:translateY(-2px)}
.visual-result-image-large{position:relative;aspect-ratio:16/10;background:#f3e8ff;overflow:hidden}
.visual-result-image-large img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s}
.visual-result-card-large:hover .visual-result-image-large img{transform:scale(1.02)}
.visual-zoom-hint{position:absolute;bottom:0.5rem;right:0.5rem;padding:0.25rem 0.5rem;background:rgba(0,0,0,0.6);color:white;border-radius:4px;font-size:0.625rem;opacity:0;transition:opacity 0.2s}
.visual-result-card-large:hover .visual-zoom-hint{opacity:1}
.visual-result-info-large{padding:0.875rem}
.visual-result-title-large{display:block;font-size:0.9375rem;font-weight:700;color:#5b21b6;margin-bottom:0.25rem}
.visual-result-desc{display:block;font-size:0.8125rem;color:#7c3aed;line-height:1.4;margin-bottom:0.625rem}
.visual-result-actions-large{display:flex;gap:0.375rem}
.visual-result-actions-large button{padding:0.375rem 0.625rem;background:#faf5ff;border:1px solid #e9d5ff;border-radius:6px;font-size:0.6875rem;color:#7c3aed;cursor:pointer;transition:all 0.15s}
.visual-result-actions-large button:hover{background:#ede9fe;border-color:#c084fc}

.visual-results-tip{padding:0.75rem;background:#ede9fe;border-radius:8px;font-size:0.75rem;color:#6d28d9}

/* Visual Popup Overlay */
.visual-popup-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.85);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.2s}
.visual-popup-overlay.show{opacity:1}
.visual-popup{position:relative;max-width:90vw;max-height:90vh;background:white;border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
.visual-popup-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border:none;background:rgba(0,0,0,0.5);color:white;border-radius:50%;font-size:1.5rem;cursor:pointer;z-index:10;transition:all 0.15s}
.visual-popup-close:hover{background:rgba(0,0,0,0.7);transform:scale(1.1)}
.visual-popup-image{max-height:60vh;overflow:hidden;background:#1a1a1a}
.visual-popup-image img{width:100%;height:100%;object-fit:contain;max-height:60vh}
.visual-popup-info{padding:1.25rem;text-align:center}
.visual-popup-info h3{font-size:1.25rem;color:#5b21b6;margin:0 0 0.375rem}
.visual-popup-info p{font-size:0.9375rem;color:#7c3aed;margin:0 0 1rem}
.visual-popup-actions{display:flex;gap:0.75rem;justify-content:center;flex-wrap:wrap}
.visual-popup-actions button{padding:0.75rem 1.25rem;border-radius:10px;font-size:0.875rem;font-weight:600;cursor:pointer;transition:all 0.15s}
.visual-popup-actions button:first-child{background:#7c3aed;color:white;border:none}
.visual-popup-actions button:first-child:hover{background:#6d28d9}
.visual-popup-actions button:last-child{background:white;color:#7c3aed;border:2px solid #c084fc}
.visual-popup-actions button:last-child:hover{background:#faf5ff}
.visual-popup-nav{display:flex;justify-content:space-between;align-items:center;padding:0.75rem 1.25rem;background:#faf5ff;border-top:1px solid #e9d5ff}
.visual-popup-nav button{padding:0.5rem 1rem;background:white;border:1px solid #c084fc;border-radius:8px;font-size:0.8125rem;color:#7c3aed;cursor:pointer}
.visual-popup-nav button:hover{background:#ede9fe}
.visual-popup-counter{font-size:0.875rem;color:#8b5cf6;font-weight:600}

.visual-error{padding:1.5rem;text-align:center;color:#ef4444}
.visual-error button{margin-left:0.5rem;padding:0.375rem 0.75rem;background:#fee2e2;border:none;border-radius:6px;color:#dc2626;cursor:pointer}
.visual-custom-brief{padding:1rem}
.visual-custom-brief h4{font-size:1rem;color:#5b21b6;margin:0 0 0.75rem}
.visual-custom-brief textarea{width:100%;height:120px;padding:0.75rem;border:1px solid #e9d5ff;border-radius:8px;font-size:0.875rem;font-family:inherit;resize:none;margin-bottom:1rem}
.visual-custom-brief textarea:focus{outline:none;border-color:#c084fc;box-shadow:0 0 0 3px rgba(139,92,246,0.1)}
.visual-custom-options{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}
.visual-custom-options label{font-size:0.875rem;font-weight:600;color:#5b21b6}
.visual-count-btns{display:flex;gap:0.375rem}
.visual-count-btn{width:36px;height:36px;border:1px solid #e9d5ff;background:white;border-radius:8px;font-size:0.875rem;font-weight:600;color:#8b5cf6;cursor:pointer}
.visual-count-btn:hover{border-color:#c084fc}
.visual-count-btn.active{background:#7c3aed;color:white;border-color:#7c3aed}
.visual-custom-actions{display:flex;justify-content:flex-end;gap:0.5rem}
.visual-cancel-btn{padding:0.5rem 1rem;background:none;border:1px solid #d1d5db;border-radius:8px;font-size:0.8125rem;color:#6b7280;cursor:pointer}
.visual-generate-btn{padding:0.5rem 1.25rem;background:#7c3aed;border:none;border-radius:8px;font-size:0.8125rem;font-weight:600;color:white;cursor:pointer}
.visual-generate-btn:hover{background:#6d28d9}

.visual-error{padding:1.5rem;text-align:center;color:#ef4444}
.visual-error button{margin-left:0.5rem;padding:0.375rem 0.75rem;background:#fee2e2;border:none;border-radius:6px;color:#dc2626;cursor:pointer}

/* Content Variant Tabs */
.content-variant-tabs{display:flex;gap:0.5rem;padding:0 0 1rem;border-bottom:1px solid var(--border);margin-bottom:1rem}
.variant-tab{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1.25rem;background:var(--bg);border:1px solid var(--border);border-radius:10px;font-size:0.875rem;font-weight:600;color:var(--text3);cursor:pointer;transition:all 0.2s}
.variant-tab:hover{border-color:var(--accent);color:var(--text);background:var(--accent-dim)}
.variant-tab.active{background:var(--accent);border-color:var(--accent);color:white;box-shadow:0 2px 8px rgba(212,168,83,0.3)}
.variant-tab-icon{font-size:1.125rem}
.variant-tab-label{white-space:nowrap}

/* Content Cards Container */
.content-cards-container{display:flex;flex-direction:column;gap:1rem;padding:0.75rem 1rem}

/* Platform-Specific Card Styles */
.content-card{border-radius:12px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,0.08);transition:transform 0.15s,box-shadow 0.15s;background:#fff}
.content-card:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(0,0,0,0.12)}

/* LinkedIn Card */
.content-card[data-platform="linkedin"],.content-card[data-platform="general"]{background:#fff;border:none}
.content-card[data-platform="linkedin"] .content-card-header,.content-card[data-platform="general"] .content-card-header{background:linear-gradient(135deg,#0077b5 0%,#004d77 100%);padding:0.75rem 1rem}
.content-card[data-platform="linkedin"] .content-card-title,.content-card[data-platform="general"] .content-card-title{color:white}
.content-card[data-platform="linkedin"] .content-card-action,.content-card[data-platform="general"] .content-card-action{background:rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.25);color:white}
.content-card[data-platform="linkedin"] .content-card-action:hover,.content-card[data-platform="general"] .content-card-action:hover{background:rgba(255,255,255,0.3)}
.content-card[data-platform="linkedin"] .content-card-body,.content-card[data-platform="general"] .content-card-body{background:#fff;padding:0}

/* LinkedIn Prominent Header Banner */
.linkedin-brand-banner{background:linear-gradient(135deg,#0077b5 0%,#004d77 100%);padding:0.75rem 1rem;display:flex;align-items:center;gap:0.75rem;border-bottom:2px solid #005582}
.linkedin-brand-logo{width:40px;height:40px;background:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;color:#0077b5;box-shadow:0 2px 8px rgba(0,0,0,0.15)}
.linkedin-brand-text{color:white}
.linkedin-brand-title{font-size:1rem;font-weight:700;margin-bottom:0.125rem}
.linkedin-brand-subtitle{font-size:0.6875rem;opacity:0.85}

/* Generic Platform Brand Banner */
.platform-brand-banner{padding:0.75rem 1rem;display:flex;align-items:center;gap:0.75rem}
.platform-brand-icon{width:36px;height:36px;background:rgba(255,255,255,0.95);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.125rem;box-shadow:0 2px 8px rgba(0,0,0,0.1)}
.platform-brand-text{color:white}
.platform-brand-title{font-size:0.9375rem;font-weight:700;margin-bottom:0}
.platform-brand-subtitle{font-size:0.6875rem;opacity:0.85}

/* Email Card */
.email-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.08)}
.email-preview{padding:0;background:#fff}
.email-client-header{background:#f8fafc;padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb}
.email-client-row{display:flex;align-items:center;gap:0.75rem;padding:0.375rem 0}
.email-client-label{font-size:0.8125rem;font-weight:600;color:#6b7280;min-width:60px}
.email-client-value{font-size:0.9375rem;color:#1f2937}
.email-subject-row{border-top:1px solid #e5e7eb;padding-top:0.75rem;margin-top:0.5rem}
.email-subject-value{font-weight:600;color:#111827;flex:1}
.email-inline-copy{background:none;border:none;cursor:pointer;opacity:0.5;transition:opacity 0.15s;padding:0.25rem}
.email-inline-copy:hover{opacity:1}
.email-client-body{padding:1.75rem 1.5rem;font-family:Georgia,'Times New Roman',serif;font-size:1rem;line-height:1.8;color:#1f2937}
.email-client-body p{margin:0 0 1.25rem 0}
.email-client-body p:last-child{margin-bottom:0}
.email-client-body .email-greeting{margin-bottom:1.5rem}
.email-client-body .email-signature{margin-top:2rem;margin-bottom:0.5rem}
.email-client-body .email-ps{margin-top:1.5rem;font-style:italic;color:#4b5563;border-left:3px solid #d1d5db;padding-left:1rem}
.email-client-body .email-cta{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:0.875rem 1rem;margin:1.25rem 0;color:#166534;font-family:system-ui,sans-serif;font-size:0.9375rem}
.email-footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#f8fafc;border-top:1px solid #e5e7eb}

/* Pitch Deck - Premium $500-$1000 Style */
.pitch-deck-card{background:#0f172a}
.pitch-deck-slides{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.5rem;padding:2rem;background:#0f172a}
@media(max-width:900px){.pitch-deck-slides{grid-template-columns:1fr}}
.pitch-slide{background:#1e293b;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,0.4);overflow:hidden;transition:all 0.3s;border:1px solid rgba(255,255,255,0.05)}
.pitch-slide:hover{transform:translateY(-4px) scale(1.01);box-shadow:0 12px 40px rgba(0,0,0,0.5);border-color:rgba(212,168,83,0.3)}
.pitch-slide-num{position:absolute;top:0.75rem;left:0.75rem;width:2rem;height:2rem;background:rgba(255,255,255,0.1);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:700;color:rgba(255,255,255,0.7);backdrop-filter:blur(4px)}
.pitch-slide-preview{aspect-ratio:16/9;position:relative;display:flex;flex-direction:column;justify-content:center;padding:2.5rem 2rem;overflow:hidden}
.pitch-slide-preview::before{content:'';position:absolute;inset:0;opacity:0.03;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.pitch-slide-category{font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:#d4a853;margin-bottom:0.75rem}
.pitch-slide-title{font-size:1.25rem;font-weight:700;color:white;line-height:1.3;margin-bottom:1rem}
.pitch-slide-bullets{list-style:none;padding:0;margin:0}
.pitch-slide-bullets li{position:relative;padding-left:1.25rem;margin-bottom:0.5rem;font-size:0.8125rem;color:rgba(255,255,255,0.8);line-height:1.5}
.pitch-slide-bullets li::before{content:'→';position:absolute;left:0;color:#d4a853;font-weight:600}
.pitch-slide-actions{display:flex;gap:0.5rem;padding:0.75rem 1rem;background:rgba(0,0,0,0.3);border-top:1px solid rgba(255,255,255,0.05)}
.pitch-slide-btn{flex:1;padding:0.5rem 0.75rem;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:6px;font-size:0.75rem;font-weight:600;color:rgba(255,255,255,0.7);cursor:pointer;transition:all 0.2s;display:flex;align-items:center;justify-content:center;gap:0.375rem}
.pitch-slide-btn:hover{background:rgba(212,168,83,0.2);border-color:rgba(212,168,83,0.4);color:#d4a853}
.pitch-deck-footer{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 2rem;background:#1e293b;border-top:1px solid rgba(255,255,255,0.05)}
.pitch-deck-footer .content-card-stat{color:rgba(255,255,255,0.6);font-size:0.8125rem}
.pitch-deck-actions{display:flex;gap:0.75rem}
.pitch-visual-btn{padding:0.75rem 1.25rem;background:linear-gradient(135deg,#d4a853,#b8943a);color:#0f172a;border:none;border-radius:8px;font-size:0.875rem;font-weight:700;cursor:pointer;transition:all 0.2s;display:flex;align-items:center;gap:0.5rem}
.pitch-visual-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(212,168,83,0.4)}
.pitch-export-btn{padding:0.75rem 1.25rem;background:rgba(255,255,255,0.1);color:white;border:1px solid rgba(255,255,255,0.2);border-radius:8px;font-size:0.875rem;font-weight:600;cursor:pointer;transition:all 0.2s}
.pitch-export-btn:hover{background:rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.3)}

/* Slide Color Themes - Cohesive 3-Color Palette */
.pitch-slide[data-theme="title"] .pitch-slide-preview{background:linear-gradient(135deg,#1e3a5f 0%,#0f172a 100%)}
.pitch-slide[data-theme="problem"] .pitch-slide-preview{background:linear-gradient(135deg,#7f1d1d 0%,#450a0a 100%)}
.pitch-slide[data-theme="solution"] .pitch-slide-preview{background:linear-gradient(135deg,#14532d 0%,#052e16 100%)}
.pitch-slide[data-theme="market"] .pitch-slide-preview{background:linear-gradient(135deg,#1e3a5f 0%,#0f172a 100%)}
.pitch-slide[data-theme="traction"] .pitch-slide-preview{background:linear-gradient(135deg,#14532d 0%,#052e16 100%)}
.pitch-slide[data-theme="team"] .pitch-slide-preview{background:linear-gradient(135deg,#1e3a5f 0%,#0f172a 100%)}
.pitch-slide[data-theme="financials"] .pitch-slide-preview{background:linear-gradient(135deg,#1e3a5f 0%,#0f172a 100%)}
.pitch-slide[data-theme="ask"] .pitch-slide-preview{background:linear-gradient(135deg,#d4a853 0%,#b8943a 100%)}
.pitch-slide[data-theme="ask"] .pitch-slide-category{color:#0f172a}
.pitch-slide[data-theme="ask"] .pitch-slide-title{color:#0f172a}
.pitch-slide[data-theme="ask"] .pitch-slide-bullets li{color:rgba(15,23,42,0.8)}
.pitch-slide[data-theme="ask"] .pitch-slide-bullets li::before{color:#0f172a}
.pitch-slide[data-theme="default"] .pitch-slide-preview{background:linear-gradient(135deg,#1e3a5f 0%,#0f172a 100%)}

/* Facebook Card */
.content-card[data-platform="facebook"]{background:#fff;border:none}
.content-card[data-platform="facebook"] .content-card-header{background:linear-gradient(135deg,#1877f2 0%,#0d5bbd 100%);padding:1.25rem 1.5rem}
.content-card[data-platform="facebook"] .content-card-title{color:white}
.content-card[data-platform="facebook"] .content-card-action{background:rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.25);color:white}
.content-card[data-platform="facebook"] .content-card-action:hover{background:rgba(255,255,255,0.3)}
.content-card[data-platform="facebook"] .content-card-body{background:linear-gradient(180deg,#f0f2f5 0%,#e4e6e9 100%);padding:0}

/* Twitter Card */
.content-card[data-platform="twitter"]{background:#fff;border:none}
.content-card[data-platform="twitter"] .content-card-header{background:linear-gradient(135deg,#14171a 0%,#000 100%);padding:1.25rem 1.5rem}
.content-card[data-platform="twitter"] .content-card-title{color:white}
.content-card[data-platform="twitter"] .content-card-action{background:rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.25);color:white}
.content-card[data-platform="twitter"] .content-card-action:hover{background:rgba(255,255,255,0.3)}
.content-card[data-platform="twitter"] .content-card-body{background:linear-gradient(180deg,#f7f9fa 0%,#eef3f5 100%);padding:0}

/* Google Card */
.content-card[data-platform="google"]{background:#fff;border:none}
.content-card[data-platform="google"] .content-card-header{background:linear-gradient(135deg,#4285f4 0%,#2a68c4 100%);padding:1.25rem 1.5rem}
.content-card[data-platform="google"] .content-card-title{color:white}
.content-card[data-platform="google"] .content-card-action{background:rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.25);color:white}
.content-card[data-platform="google"] .content-card-action:hover{background:rgba(255,255,255,0.3)}
.content-card[data-platform="google"] .content-card-body{background:linear-gradient(180deg,#f8f9fa 0%,#f1f3f4 100%);padding:0}

/* Card Header */
.content-card-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem}
.content-card-title{display:flex;align-items:center;gap:0.75rem;font-size:1rem;font-weight:700}
.content-card-icon{font-size:1.375rem;filter:none}
.content-card-actions{display:flex;gap:0.5rem}
.content-card-action{width:38px;height:38px;border:1px solid var(--border);background:var(--bg);border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all 0.15s}

/* Card Body - Section Cards */
.content-card-body{padding:1.25rem}
.content-sections-wrap{display:flex;flex-direction:column;gap:0.5rem;padding:0.75rem}
.content-section-card{background:#fff;border-radius:10px;padding:0.75rem 1rem;box-shadow:0 2px 8px rgba(0,0,0,0.04);border:1px solid rgba(0,0,0,0.04);transition:all 0.15s;position:relative}
.content-section-card:hover{box-shadow:0 4px 16px rgba(0,0,0,0.08);transform:translateY(-1px)}
.content-section-card.hook{border-left:4px solid #f59e0b;background:linear-gradient(90deg,rgba(245,158,11,0.04),transparent)}
.content-section-card.body{border-left:4px solid #3b82f6}
.content-section-card.cta{border-left:4px solid #10b981;background:linear-gradient(90deg,rgba(16,185,129,0.04),transparent)}
.content-section-card.proof{border-left:4px solid #8b5cf6;background:linear-gradient(90deg,rgba(139,92,246,0.04),transparent)}
.content-section-card.cost{border-left:4px solid #ef4444;background:linear-gradient(90deg,rgba(239,68,68,0.04),transparent)}
.content-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.375rem}
.content-section-badge{font-size:0.5rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;padding:0.25rem 0.5rem;border-radius:4px;color:white}
.content-section-badge.hook{background:linear-gradient(135deg,#f59e0b,#d97706)}
.content-section-badge.listicle,.content-section-badge.body{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}
.content-section-badge.cta,.content-section-badge.better{background:linear-gradient(135deg,#10b981,#059669)}
.content-section-badge.proof{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}
.content-section-badge.cost{background:linear-gradient(135deg,#ef4444,#dc2626)}
.content-section-badge.default{background:linear-gradient(135deg,#64748b,#475569)}
.content-section-copy{width:28px;height:28px;border:none;background:rgba(0,0,0,0.04);border-radius:6px;cursor:pointer;opacity:0;transition:all 0.2s;font-size:0.875rem;display:flex;align-items:center;justify-content:center}
.content-section-card:hover .content-section-copy{opacity:1}
.content-section-copy:hover{background:rgba(0,0,0,0.08)}
.content-section-text{font-size:0.9375rem;line-height:1.65;color:#1a1a1a}
.content-section-card.hook .content-section-text{font-size:1rem;font-weight:600;line-height:1.5;color:#0a0a0a}

/* Legacy Card Section Support */
.content-card-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(0,0,0,0.06)}
.content-card-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}
.content-card-label{display:inline-block;font-size:0.5625rem;font-weight:800;text-transform:uppercase;padding:0.3rem 0.625rem;border-radius:6px;margin-bottom:0.75rem;letter-spacing:1.5px;color:white;background:linear-gradient(135deg,#64748b,#475569)}
.content-card-text{font-size:1.0625rem;line-height:1.75;color:#1a1a1a;white-space:pre-wrap}
.content-card-text.headline{font-size:1.375rem;font-weight:700;line-height:1.4;color:#0a0a0a}
.content-card-text.short{font-size:1rem;color:#4a5568;font-weight:500}

/* Card Footer */
.content-card-footer{display:flex;justify-content:space-between;align-items:center;padding:0.625rem 1rem;background:#fff;border-top:1px solid rgba(0,0,0,0.06)}
.content-card-stats{display:flex;gap:0.75rem;font-size:0.6875rem;color:#64748b}
.content-card-stat{display:flex;align-items:center;gap:0.375rem;background:rgba(0,0,0,0.04);padding:0.375rem 0.75rem;border-radius:8px}

/* LinkedIn Post Preview Style */
.linkedin-preview-wrap{padding:1.25rem;background:linear-gradient(180deg,#f3f6f8 0%,#eef2f5 100%)}
.linkedin-preview{background:#fff;border-radius:12px;border:1px solid #e0dfdc;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,0.08)}
.linkedin-preview-header{display:flex;align-items:center;gap:0.75rem;padding:1rem}
.linkedin-preview-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#0077b5,#004d77);display:flex;align-items:center;justify-content:center;color:white;font-weight:700;font-size:1.125rem;flex-shrink:0}
.linkedin-preview-meta{display:flex;flex-direction:column;min-width:0}
.linkedin-preview-name{font-weight:600;font-size:0.9375rem;color:#000}
.linkedin-preview-subtitle{font-size:0.75rem;color:#666;display:flex;align-items:center;gap:0.25rem}
.linkedin-preview-subtitle::after{content:'•';margin:0 0.25rem}
.linkedin-preview-time{font-size:0.75rem;color:#666}
.linkedin-preview-body{padding:0 1rem 1rem;font-size:0.9375rem;line-height:1.65;color:#000;white-space:pre-wrap}
.linkedin-preview-engagement{display:flex;gap:0.25rem;padding:0.625rem 1rem;border-top:1px solid #e0dfdc;background:#fafafa}
.linkedin-preview-action{flex:1;display:flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.625rem;border-radius:8px;font-size:0.8125rem;font-weight:600;color:#666;cursor:pointer;transition:background 0.15s}
.linkedin-preview-action:hover{background:#e8f4f8;color:#0077b5}

/* NEW: LinkedIn Main Post Display */
.linkedin-post-main{background:#fff;margin:0}
.linkedin-post-header{display:flex;align-items:flex-start;gap:0.875rem;padding:1.25rem 1.5rem;border-bottom:1px solid #f0f0f0}
.linkedin-post-avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:white;font-weight:700;font-size:1.125rem;flex-shrink:0}
.linkedin-post-meta{flex:1}
.linkedin-post-name{font-weight:700;font-size:1rem;color:#000;margin-bottom:0.125rem}
.linkedin-post-headline{font-size:0.8125rem;color:#666;margin-bottom:0.25rem}
.linkedin-post-time{font-size:0.75rem;color:#999}
.linkedin-post-content{padding:1.25rem 1.5rem;font-size:1rem;line-height:1.7;color:#000;white-space:pre-wrap;max-height:500px;overflow-y:auto;background:#fff}
.linkedin-post-engagement{display:flex;border-top:1px solid #e8e8e8;background:#fafbfc}
.linkedin-engage-btn{flex:1;padding:0.875rem;background:none;border:none;font-size:0.875rem;font-weight:600;color:#666;cursor:pointer;transition:all 0.15s;display:flex;align-items:center;justify-content:center;gap:0.5rem}
.linkedin-engage-btn:hover{background:#e8f4f8;color:#0077b5}

/* Post Breakdown (Collapsible) */
.post-breakdown{border-top:1px solid #e8e8e8;background:#f8f9fa}
.breakdown-toggle{width:100%;padding:1rem 1.5rem;background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:0.75rem;font-size:0.875rem;font-weight:600;color:#666;transition:all 0.15s}
.breakdown-toggle:hover{background:#f0f2f5;color:#333}
.breakdown-toggle-icon{font-size:0.625rem;transition:transform 0.2s}
.breakdown-toggle.open .breakdown-toggle-icon{transform:rotate(90deg)}
.breakdown-stats{margin-left:auto;font-size:0.75rem;font-weight:500;color:#999}
.breakdown-content{padding:0 1.5rem 1.5rem;display:flex;flex-direction:column;gap:0.75rem}
.breakdown-section{background:#fff;border-radius:10px;padding:1rem;border:1px solid #e8e8e8;transition:all 0.15s}
.breakdown-section:hover{border-color:#0077b5;box-shadow:0 2px 8px rgba(0,119,181,0.1)}
.breakdown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.625rem}
.breakdown-badge{font-size:0.5625rem;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;padding:0.25rem 0.5rem;border-radius:4px;color:white}
.breakdown-badge.hook{background:linear-gradient(135deg,#f59e0b,#d97706)}
.breakdown-badge.listicle{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}
.breakdown-badge.cta{background:linear-gradient(135deg,#10b981,#059669)}
.breakdown-badge.proof{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}
.breakdown-badge.cost{background:linear-gradient(135deg,#ef4444,#dc2626)}
.breakdown-badge.default{background:linear-gradient(135deg,#64748b,#475569)}
.breakdown-copy{width:28px;height:28px;border:none;background:rgba(0,0,0,0.04);border-radius:6px;cursor:pointer;font-size:0.8125rem;display:flex;align-items:center;justify-content:center;opacity:0;transition:all 0.15s}
.breakdown-section:hover .breakdown-copy{opacity:1}
.breakdown-copy:hover{background:rgba(0,0,0,0.08)}
.breakdown-text{font-size:0.9375rem;line-height:1.65;color:#333}

/* Coaching/Educational Elements */
.breakdown-intro{padding:1rem;background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border-radius:10px;margin-bottom:1rem;border-left:4px solid #10b981}
.breakdown-intro p{margin:0;font-size:0.875rem;line-height:1.6;color:#065f46}
.breakdown-intro em{font-style:italic;font-weight:600}

.breakdown-section.coaching{background:#fff;border-radius:12px;padding:1.25rem;border:1px solid #e8e8e8;margin-bottom:0.75rem}
.breakdown-section.coaching:hover{border-color:#0077b5;box-shadow:0 4px 16px rgba(0,119,181,0.1)}

.breakdown-why{display:none;margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#fefce8,#fef9c3);border-radius:10px;border-left:4px solid #eab308}
.why-label{font-size:0.75rem;font-weight:700;color:#a16207;margin-bottom:0.375rem;text-transform:uppercase;letter-spacing:0.5px}
.why-text{font-size:0.875rem;line-height:1.6;color:#713f12}

.breakdown-tip{display:none;align-items:flex-start;gap:0.5rem;margin-top:0.75rem;padding:0.75rem 1rem;background:#f8fafc;border-radius:8px}
.tip-icon{font-size:0.875rem;flex-shrink:0;margin-top:0.125rem}
.tip-text{font-size:0.8125rem;line-height:1.5;color:#64748b;font-style:italic}

/* Content Section Why (for non-LinkedIn) */
.content-section-why{display:none;align-items:flex-start;gap:0.5rem;margin-top:0.75rem;padding:0.75rem;background:linear-gradient(135deg,#fefce8,#fef9c3);border-radius:8px;border-left:3px solid #eab308}
.content-section-why .why-icon{font-size:0.875rem;flex-shrink:0}
.content-section-why .why-text{font-size:0.8125rem;line-height:1.5;color:#713f12}

/* Question badge color */
.breakdown-badge.question,.content-section-badge.question{background:linear-gradient(135deg,#06b6d4,#0891b2)}
.breakdown-badge.answer,.content-section-badge.answer{background:linear-gradient(135deg,#14b8a6,#0d9488)}

/* Copy Post Button */
.copy-post-btn{padding:0.5rem 1rem;background:var(--accent);color:white;border:none;border-radius:6px;font-size:0.8125rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:0.375rem;transition:all 0.15s;box-shadow:0 2px 8px rgba(196,160,82,0.3)}
.copy-post-btn:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 12px rgba(196,160,82,0.4)}

/* Share Dropdown */
.share-dropdown{position:relative}
.share-dropdown-menu{position:absolute;top:100%;right:0;margin-top:0.375rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.15);z-index:50;min-width:140px;display:none}
.share-dropdown-menu.show{display:block}
.share-dropdown-item{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0.75rem;font-size:0.75rem;color:var(--text);cursor:pointer;transition:background 0.1s}
.share-dropdown-item:hover{background:var(--accent-dim)}
.share-dropdown-item:first-child{border-radius:8px 8px 0 0}
.share-dropdown-item:last-child{border-radius:0 0 8px 8px}
.share-icon{width:16px;text-align:center}

/* Language Dropdown */
.lang-dropdown{position:relative}
.lang-btn{display:flex;align-items:center;gap:0.375rem;padding:0.5rem 0.75rem;background:var(--bg2);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all 0.15s}
.lang-btn:hover{border-color:var(--accent);background:var(--accent-dim)}
.lang-flag{font-size:1rem}
.lang-code{font-size:0.75rem;font-weight:600;color:var(--text)}
.lang-menu{position:absolute;top:100%;right:0;margin-top:0.5rem;width:260px;background:var(--bg);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,0.15);z-index:100;display:none;overflow:hidden}
.lang-menu.show{display:block}
.lang-menu-header{padding:0.875rem 1rem;background:var(--bg2);border-bottom:1px solid var(--border)}
.lang-menu-title{font-size:0.8125rem;font-weight:700;color:var(--text)}
.lang-menu-section{padding:1rem}
.lang-menu-label{font-size:0.75rem;font-weight:600;color:var(--text);margin-bottom:0.125rem}
.lang-menu-desc{font-size:0.6875rem;color:var(--text3);margin-bottom:0.5rem}
.lang-select{width:100%;padding:0.5rem 0.75rem;background:var(--bg2);border:1px solid var(--border);border-radius:8px;font-size:0.8125rem;color:var(--text);cursor:pointer}
.lang-select:focus{outline:none;border-color:var(--accent)}
.lang-menu-divider{height:1px;background:var(--border);margin:0}

/* Action Button Accent */
.action-btn.accent{background:linear-gradient(135deg,var(--accent),#c49a4a);color:white;border:none}
.action-btn.accent:hover{filter:brightness(1.1)}

/* Create More Panel */
.create-more-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);display:none;justify-content:flex-end;z-index:200}
.create-more-overlay.show{display:flex}
.create-more-panel{width:100%;max-width:480px;height:100vh;max-height:100vh;background:var(--bg);border-left:1px solid var(--border);display:flex;flex-direction:column;animation:slideIn 0.2s ease;overflow:hidden}
@keyframes slideIn{from{transform:translateX(100%)}to{transform:translateX(0)}}
.create-more-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);background:var(--bg2);flex-shrink:0}
.create-more-title{display:flex;align-items:center;gap:0.625rem;font-size:1rem;font-weight:700;color:var(--text)}
.create-more-close{width:32px;height:32px;border:none;background:var(--bg);border-radius:8px;cursor:pointer;font-size:1.25rem;color:var(--text3)}
.create-more-close:hover{background:var(--accent-dim);color:var(--text)}

.create-more-brief{padding:1rem 1.5rem;background:var(--accent-dim);border-bottom:1px solid var(--border);flex-shrink:0}
.create-more-brief-label{font-size:0.6875rem;font-weight:600;text-transform:uppercase;color:var(--accent);margin-bottom:0.5rem;letter-spacing:0.5px}
.create-more-brief-summary{display:flex;flex-wrap:wrap;gap:0.375rem}
.brief-chip{padding:0.25rem 0.625rem;background:var(--bg);border:1px solid var(--border);border-radius:20px;font-size:0.75rem;color:var(--text2)}

.create-more-created{padding:1rem 1.5rem;border-bottom:1px solid var(--border);flex-shrink:0}
.create-more-created-label{font-size:0.6875rem;font-weight:600;text-transform:uppercase;color:var(--text3);margin-bottom:0.5rem;letter-spacing:0.5px}
.create-more-created-list{display:flex;flex-wrap:wrap;gap:0.375rem}
.created-item{display:flex;align-items:center;gap:0.375rem;padding:0.375rem 0.625rem;background:var(--bg2);border:1px solid var(--border);border-radius:6px;font-size:0.75rem;color:var(--text)}
.created-item-icon{font-size:0.875rem}
.created-item-check{color:#10b981;font-size:0.625rem}

.create-more-body{flex:1;padding:1.25rem 1.5rem;overflow-y:auto;min-height:0}
.create-more-section-label{font-size:0.6875rem;font-weight:700;text-transform:uppercase;color:var(--text3);margin-bottom:0.75rem;letter-spacing:0.5px}
.create-more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0.5rem}
.create-more-btn{display:flex;flex-direction:column;align-items:center;padding:0.875rem 0.5rem;background:var(--bg2);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:all 0.15s;position:relative}
.create-more-btn:hover{border-color:var(--accent);background:var(--accent-dim);transform:translateY(-2px)}
.create-more-btn.created{opacity:0.7}
.create-more-btn.created::after{content:'✓';position:absolute;top:4px;right:4px;font-size:0.625rem;color:#10b981}
.create-more-icon{font-size:1.5rem;margin-bottom:0.25rem}
.create-more-label{font-size:0.6875rem;font-weight:600;color:var(--text);text-align:center}

.create-more-campaigns{display:flex;flex-direction:column;gap:0.5rem;margin-bottom:1rem}
.create-more-campaign{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg2);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:all 0.15s;text-align:left}
.create-more-campaign:hover{border-color:var(--accent);background:var(--accent-dim)}
.campaign-icon{font-size:2rem}
.campaign-info{flex:1}
.campaign-name{font-size:0.9375rem;font-weight:700;color:var(--text)}
.campaign-desc{font-size:0.75rem;color:var(--text3);margin-top:0.125rem}

.create-more-footer{padding:1rem 1.5rem;border-top:1px solid var(--border);background:var(--bg2);flex-shrink:0}
.create-more-view-all{display:flex;align-items:center;justify-content:center;gap:0.5rem;width:100%;padding:0.75rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:0.8125rem;font-weight:600;color:var(--text);cursor:pointer}
.create-more-view-all:hover{border-color:var(--accent);background:var(--accent-dim)}

/* ============================================================================
   RENDERER STYLES v3.0
   ============================================================================ */

/* Common renderer styles */
.render-validation{padding:0.5rem 0.75rem;border-radius:6px;font-size:0.75rem;margin-bottom:0.75rem}
.render-validation.error{background:rgba(239,68,68,0.1);color:#ef4444;border:1px solid rgba(239,68,68,0.2)}
.render-validation.warning{background:rgba(245,158,11,0.1);color:#f59e0b;border:1px solid rgba(245,158,11,0.2)}

/* Stats bar */
.email-stats,.linkedin-stats,.landing-stats,.script-stats,.generic-stats{display:flex;gap:0.5rem;flex-wrap:wrap;margin-bottom:0.25rem;padding-bottom:0.25rem;font-size:0.6875rem}
.stat{font-size:0.6875rem;padding:0.25rem 0.5rem;background:var(--bg2);border-radius:4px;color:var(--text3)}
.stat.good{background:rgba(16,185,129,0.1);color:#10b981}
.stat.warn{background:rgba(245,158,11,0.1);color:#f59e0b}

/* Email Renderer */
.email-renderer{padding:1rem}
.email-preview-card{background:var(--bg);border:1px solid var(--border);border-radius:8px;overflow:hidden}
.email-header-row{padding:0.75rem 1rem;background:var(--bg2);border-bottom:1px solid var(--border);display:flex;gap:0.5rem;align-items:baseline}
.email-label{font-size:0.75rem;color:var(--text3);font-weight:500}
.email-subject{font-size:0.875rem;font-weight:600;color:var(--text)}
.email-body{padding:1rem}
.email-para{margin-bottom:1rem;line-height:1.6;color:var(--text)}
.email-para:last-child{margin-bottom:0}
.email-ps{margin-top:1.5rem;padding-top:1rem;border-top:1px dashed var(--border);font-style:italic;color:var(--text2)}

/* ===================================================================
   RENDERER WHITESPACE FIX - Parent :has() Overrides
   All specialized renderers need this to prevent template literal
   whitespace from being displayed when parent has white-space:pre-wrap
   =================================================================== */
.output-content-inner:has(.email-card){padding:0;white-space:normal}
.output-content-inner:has(.linkedin-renderer){padding:0;white-space:normal}
.linkedin-renderer{padding:1rem;display:flex;justify-content:center}
.linkedin-preview-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;max-width:550px;width:100%;box-shadow:0 1px 3px rgba(0,0,0,0.08)}
.li-header{display:flex;gap:0.5rem;padding:0.75rem 1rem;align-items:center}
.li-avatar{width:48px;height:48px;background:linear-gradient(135deg,#0077b5,#004d77);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:white;flex-shrink:0}
.li-meta{flex:1;min-width:0;line-height:1.3}
.li-name{font-weight:600;font-size:0.9375rem;color:#000}
.li-title{font-size:0.8125rem;color:#666}
.li-body{padding:0 1rem 1rem}
.li-line{margin:0 0 0.25rem 0;line-height:1.5;color:#000;font-size:0.9375rem}
.li-break{height:0.5rem}
.li-engagement{display:flex;gap:0.75rem;font-size:0.75rem;color:var(--text3)}
.li-engagement span{cursor:pointer}
.li-engagement span:hover{color:var(--accent)}
.li-copy-btn{padding:0.375rem 0.75rem;background:var(--accent);color:white;border:none;border-radius:6px;font-size:0.6875rem;font-weight:600;cursor:pointer;margin-left:auto;display:flex;align-items:center;gap:0.25rem}
.li-copy-btn:hover{filter:brightness(1.1)}
.li-footer{display:flex;align-items:center;justify-content:space-between;padding:0.5rem 0.75rem;border-top:1px solid var(--border);background:var(--bg2)}
.li-stats-inline{display:flex;gap:0.5rem;font-size:0.625rem;color:var(--text3);font-weight:500}
.li-stats-inline span{padding:0.125rem 0.375rem;background:var(--bg);border-radius:4px}
.li-stats-inline .good{color:var(--success)}
.li-warnings{display:flex;flex-wrap:wrap;gap:0.375rem;margin-top:0.5rem;font-size:0.6875rem;color:var(--text3)}
.li-warnings span{padding:0.25rem 0.5rem;background:var(--bg2);border-radius:4px}

/* Twitter/X Thread Renderer */
.output-content-inner:has(.x-renderer){padding:0;white-space:normal}
.x-renderer{max-width:500px;margin:0 auto;padding:1rem}
.x-header{display:flex;align-items:center;gap:0.5rem;padding:0.75rem;background:#000;border-radius:8px 8px 0 0;flex-wrap:wrap}
.x-logo{color:#fff;font-size:1rem}
.x-title{color:#fff;font-size:0.8125rem;font-weight:600}
.x-status{font-size:0.6875rem;padding:0.25rem 0.5rem;border-radius:4px}
.x-status.ok{color:#00ba7c;background:rgba(0,186,124,0.2)}
.x-status.over{color:#f4212e;background:rgba(244,33,46,0.2)}
.x-copy-all{margin-left:auto;padding:0.375rem 0.75rem;background:#fff;border:none;border-radius:9999px;font-size:0.75rem;font-weight:600;cursor:pointer}
.x-copy-all:hover{background:#e7e9ea}
.x-tweets{background:#f7f9f9;padding:0.5rem;border-left:1px solid #eff3f4;border-right:1px solid #eff3f4;max-height:60vh;overflow-y:auto}
.x-tweet{background:#fff;border:1px solid #eff3f4;border-radius:8px;margin-bottom:0.5rem;overflow:hidden}
.x-tweet.over{border-color:#f4212e;background:#fff5f5}
.x-tweet.warn{border-color:#ffad1f;background:#fffbeb}
.x-tweet-top{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0.75rem;background:#f7f9f9;border-bottom:1px solid #eff3f4}
.x-tweet-num{font-size:0.75rem;font-weight:700;color:#536471}
.x-tweet-count{font-size:0.6875rem;font-weight:600;padding:0.125rem 0.375rem;border-radius:4px}
.x-tweet-count.ok{color:#00ba7c;background:rgba(0,186,124,0.1)}
.x-tweet-count.warn{color:#ffad1f;background:rgba(255,173,31,0.1)}
.x-tweet-count.over{color:#f4212e;background:rgba(244,33,46,0.1)}
.x-tweet-copy{margin-left:auto;padding:0.25rem 0.5rem;background:#fff;border:1px solid #eff3f4;border-radius:4px;cursor:pointer;font-size:0.625rem}
.x-tweet-copy:hover{background:#1d9bf0;color:#fff;border-color:#1d9bf0}
.x-tweet-text{padding:0.75rem;font-size:0.875rem;line-height:1.5;color:#0f1419;white-space:pre-wrap}
.x-footer{display:flex;gap:1rem;padding:0.5rem 0.75rem;background:#f7f9f9;border:1px solid #eff3f4;border-top:0;border-radius:0 0 8px 8px}
.x-footer span{font-size:0.6875rem;color:#536471}

/* Landing Page Renderer */
.output-content-inner:has(.landing-renderer){padding:0;white-space:normal}
.landing-renderer{padding:0;margin:0}
.landing-preview-wrapper{overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,0.1);max-width:1400px;width:95%;margin:1rem auto}
.landing-browser-chrome{display:flex;align-items:center;justify-content:space-between;gap:0.5rem;padding:0.5rem 0.75rem;background:linear-gradient(180deg,#f0f0f0,#e0e0e0);border-bottom:1px solid #ccc;border-radius:12px 12px 0 0}
.browser-dots{display:flex;gap:0.375rem;align-items:center}
.browser-dots .dot{width:12px;height:12px;border-radius:50%;border:1px solid rgba(0,0,0,0.1)}
.browser-dots .dot.red{background:linear-gradient(135deg,#ff6057,#ff3b30)}
.browser-dots .dot.yellow{background:linear-gradient(135deg,#ffbd2e,#ffaa00)}
.browser-dots .dot.green{background:linear-gradient(135deg,#28ca42,#20c933)}
.browser-url{font-size:0.75rem;color:#555;background:#fff;padding:0.375rem 0.75rem;border-radius:6px;text-align:center;border:1px solid #ddd;font-weight:500;white-space:nowrap}
.landing-iframe{width:100%;height:calc(100vh - 180px);min-height:600px;border:none;background:#fff;display:block}
.landing-actions{display:flex;gap:0.375rem;padding:0.75rem 1.5rem;flex-wrap:wrap;align-items:center;background:var(--bg2);border-top:1px solid var(--border)}
.landing-actions .render-validation{margin:0;margin-right:auto}
.landing-actions .action-btn{padding:0.375rem 0.75rem;background:var(--bg2);border:1px solid var(--border);border-radius:4px;font-size:0.6875rem;cursor:pointer;transition:all 0.15s}
.landing-actions .action-btn:hover{border-color:var(--accent);background:var(--accent-dim)}

/* Script Renderer */
.output-content-inner:has(.script-renderer){padding:0;white-space:normal}
.script-renderer{padding:0;background:#f8f6f1}

/* Script Header - Keep as is */
.script-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,#1e293b,#0f172a);border-bottom:1px solid rgba(255,255,255,0.1)}
.script-stats{display:flex;gap:1rem}
.script-stat{font-size:0.75rem;color:rgba(255,255,255,0.7);font-weight:500}
.script-copy-all{display:flex;align-items:center;gap:0.375rem;padding:0.5rem 1rem;background:#d4a853;color:#0f172a;border:none;border-radius:6px;font-size:0.8125rem;font-weight:700;cursor:pointer;transition:all 0.15s}
.script-copy-all:hover{filter:brightness(1.1)}

/* Script Page Container - Document feel */
.script-sections{padding:1.5rem;background:linear-gradient(180deg,#e8e4dc 0%,#f0ece4 100%)}
.script-page{background:#fffef9;border-radius:4px;box-shadow:0 2px 20px rgba(0,0,0,0.08),0 0 0 1px rgba(0,0,0,0.04),inset 0 0 80px rgba(0,0,0,0.01);max-width:900px;margin:0 auto;position:relative}
.script-page::before{content:'';position:absolute;left:60px;top:0;bottom:0;width:1px;background:rgba(220,53,69,0.15);pointer-events:none}
.script-page-inner{padding:2rem 2.5rem 2rem 4rem}

/* Section Cards */
.script-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(0,0,0,0.06)}
.script-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}
.script-section-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;padding-bottom:0.75rem;border-bottom:2px solid #1e293b}
.script-section-title-row{display:flex;align-items:baseline;gap:0.75rem}
.script-section-number{font-family:'Courier New',Courier,monospace;font-size:0.875rem;font-weight:700;color:#94a3b8;letter-spacing:-0.5px}
.script-section-title{font-family:'Courier New',Courier,monospace;font-size:1.125rem;font-weight:700;color:#1e293b;text-transform:uppercase;letter-spacing:1px}
.script-section-meta{display:flex;align-items:center;gap:1rem;padding-top:0.25rem}
.script-section-words{font-family:'Courier New',Courier,monospace;font-size:0.6875rem;color:#64748b;text-transform:uppercase;letter-spacing:0.5px}
.script-section-time{font-family:'Courier New',Courier,monospace;font-size:0.6875rem;color:#b8860b;font-weight:600;background:rgba(184,134,11,0.1);padding:0.125rem 0.5rem;border-radius:3px}
.script-section-copy{background:none;border:none;font-size:0.75rem;cursor:pointer;opacity:0.4;transition:opacity 0.15s;padding:0.25rem}
.script-section-copy:hover{opacity:1}

/* Section Body - Always visible */
.script-section-body{font-family:'Courier New',Courier,monospace;font-size:0.875rem;line-height:1.8;color:#374151}

/* Divider lines */
.script-divider{height:1px;background:linear-gradient(90deg,transparent 0%,#94a3b8 10%,#94a3b8 90%,transparent 100%);margin:1.5rem 0}

/* Section Dividers (PHASE 1: FRAME CONTROL) */
.script-section-divider{margin:2rem 0 1rem;padding:0.75rem 0;border-top:2px solid #1e293b;border-bottom:1px solid #e2e8f0}
.script-section-label{display:block;font-size:0.6875rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:2px;margin-bottom:0.25rem}
.script-section-subtitle{display:block;font-size:1rem;font-weight:700;color:#1e293b;text-transform:uppercase;letter-spacing:1px}

/* Scene Break - Centered dramatic header */
.script-scene-break{margin:2rem 0 1.5rem;text-align:center;page-break-before:always}
.script-scene-line{height:1px;background:linear-gradient(90deg,transparent 0%,#94a3b8 20%,#94a3b8 80%,transparent 100%);margin:0.75rem 0}
.script-scene-title{display:flex;flex-direction:column;align-items:center;gap:0.25rem;padding:0.5rem 0}
.script-scene-label{font-size:0.625rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:2px}
.script-scene-name{font-size:1rem;font-weight:700;color:#1e293b;text-transform:uppercase;letter-spacing:1.5px}
.script-scene-content{margin-top:1rem}

/* Action/Beat blocks */
.script-action-block{margin:1rem 0 0.5rem;display:flex;flex-wrap:wrap;gap:0.5rem;align-items:baseline}
.script-action-label{font-size:0.75rem;font-weight:700;color:#1e293b;text-transform:uppercase;letter-spacing:0.5px;background:#f1f5f9;padding:0.25rem 0.5rem;border-radius:3px;border-left:3px solid #b8860b}
.script-action-content{flex:1;color:#4b5563;min-width:200px}

/* Beat labels (standalone) */
.script-beat-label{margin:1.25rem 0 0.5rem;font-size:0.8125rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:1px;padding-bottom:0.25rem;border-bottom:1px dashed #cbd5e1}

/* Direction blocks */
.script-direction-block{margin:1rem 0;padding:0.75rem 1rem;background:#f8fafc;border-left:3px solid #94a3b8;border-radius:0 6px 6px 0}
.script-direction-label{display:block;font-size:0.75rem;font-weight:600;color:#64748b;font-style:italic;margin-bottom:0.25rem}
.script-direction-text{color:#4b5563}

/* Character Cues - Centered caps */
.script-character{margin:1.5rem 0 0.5rem;text-align:center;font-size:0.875rem;font-weight:700;color:#1e293b;text-transform:uppercase;letter-spacing:2px}

/* Regular lines */
.script-line{margin:0.5rem 0;color:#374151;line-height:1.8}

/* Beat spacer */
.script-beat-spacer{height:0.75rem}

/* Objection handling */
.script-objection{margin:0.75rem 0;padding:0.75rem 1rem;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;display:flex;flex-wrap:wrap;gap:0.5rem;align-items:flex-start}
.script-objection-trigger{font-weight:600;color:#92400e;flex-shrink:0}
.script-objection-arrow{color:#d97706;font-weight:bold}
.script-objection-response{flex:1;color:#78350f;min-width:200px}

/* Inline formatting */
.script-quote{color:#1e293b;font-weight:500}
.script-stage-direction{font-style:italic;color:#64748b;font-size:0.8125rem}
.script-time-badge{display:inline-block;font-size:0.6875rem;font-weight:600;color:#b8860b;background:rgba(184,134,11,0.1);padding:0.125rem 0.5rem;border-radius:3px;margin:0 0.25rem;font-family:'Courier New',Courier,monospace}

/* List Items - Clean bullets */
.script-list-item{display:flex;align-items:flex-start;gap:0.625rem;padding:0.375rem 0;padding-left:1rem}
.script-list-marker{color:#b8860b;font-size:0.875rem;line-height:1.8;flex-shrink:0}
.script-list-text{flex:1;color:#4b5563}

/* Empty State */
.script-empty{color:#94a3b8;font-style:italic;text-align:center;padding:2rem}

/* Generic Renderer */
.output-content-inner:has(.generic-renderer){padding:0;white-space:normal}
.generic-renderer{padding:0.5rem}
.generic-content{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:1rem;line-height:1.6;color:var(--text)}

/* Article Renderer */
.output-content-inner:has(.article-renderer){padding:0;white-space:normal}
.article-renderer{padding:0.5rem}
.article-stats{display:flex;gap:0.75rem;margin-bottom:0.75rem;font-size:0.75rem;color:var(--text3)}
.article-stats .stat{padding:0.25rem 0.5rem;background:var(--bg2);border-radius:4px}
.article-content{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:1.5rem;line-height:1.7}
.article-h2{font-size:1.25rem;font-weight:700;margin:1.5rem 0 0.75rem;color:var(--text)}
.article-h3{font-size:1.1rem;font-weight:600;margin:1.25rem 0 0.5rem;color:var(--text)}
.article-h4{font-size:1rem;font-weight:600;margin:1rem 0 0.5rem;color:var(--text2)}
.article-para{margin-bottom:1rem;color:var(--text)}
.article-para:last-child{margin-bottom:0}

/* SMS Renderer */
.output-content-inner:has(.sms-renderer){padding:0;white-space:normal}
.sms-renderer{padding:0.5rem}
.sms-phone{background:var(--bg);border:1px solid var(--border);border-radius:12px;overflow:hidden;max-width:320px}
.sms-phone-header{background:var(--bg2);padding:0.5rem;text-align:center;font-weight:600;font-size:0.75rem;border-bottom:1px solid var(--border)}
.sms-messages{padding:0.75rem}
.sms-message{margin-bottom:0.75rem}
.sms-message.over-limit .sms-bubble{border-color:#ef4444}
.sms-header{display:flex;justify-content:space-between;font-size:0.625rem;color:var(--text3);margin-bottom:0.25rem}
.sms-chars.warn{color:#ef4444}
.sms-bubble{background:var(--accent);color:white;padding:0.5rem 0.75rem;border-radius:12px;border-bottom-right-radius:4px;font-size:0.875rem;line-height:1.4}

/* Carousel Renderer */
.output-content-inner:has(.carousel-renderer){padding:0;white-space:normal}
.carousel-renderer{padding:1rem;max-width:1200px;margin:0 auto}

/* Carousel Slide Cards - Premium Design System */
.carousel-slide-card{
    background:#ffffff;
    border:1px solid rgba(0,0,0,0.08);
    border-radius:20px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
    position:relative;
    box-shadow:0 1px 3px rgba(0,0,0,0.04)
}
.carousel-slide-card:hover{
    transform:translateY(-6px);
    box-shadow:0 20px 40px rgba(0,0,0,0.12),0 8px 16px rgba(0,0,0,0.08)
}

/* Premium Gold Header */
.carousel-slide-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:0.625rem 0.875rem;
    background:linear-gradient(135deg,#c9a227 0%,#b8860b 50%,#96722a 100%);
    position:relative;
    overflow:hidden
}
.carousel-slide-header::before{
    content:'';
    position:absolute;
    top:0;left:0;right:0;bottom:0;
    background:linear-gradient(180deg,rgba(255,255,255,0.15) 0%,transparent 50%);
    pointer-events:none
}

/* Slide Number Badge */
.carousel-slide-num-wrap{display:flex;align-items:center;gap:0.375rem;position:relative;z-index:1}
.carousel-slide-num{
    width:26px;height:26px;
    background:#ffffff;
    color:#1a1a1a;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-size:0.75rem;
    font-weight:800;
    box-shadow:0 2px 4px rgba(0,0,0,0.1)
}
.carousel-slide-total{font-size:0.625rem;color:rgba(255,255,255,0.85);font-weight:500}

/* Action Buttons Container */
.carousel-slide-actions{
    display:flex;
    gap:0.375rem;
    position:relative;
    z-index:1
}

/* Icon Action Buttons */
.carousel-action-btn{
    width:32px;height:32px;
    display:flex;align-items:center;justify-content:center;
    background:rgba(255,255,255,0.2);
    backdrop-filter:blur(8px);
    border:1px solid rgba(255,255,255,0.3);
    border-radius:8px;
    cursor:pointer;
    color:white;
    transition:all 0.2s cubic-bezier(0.4,0,0.2,1)
}
.carousel-action-btn:hover{
    background:rgba(255,255,255,0.35);
    transform:scale(1.08);
    box-shadow:0 4px 12px rgba(0,0,0,0.15)
}
.carousel-action-btn:active{transform:scale(0.95)}
.carousel-action-btn svg{width:14px;height:14px;stroke-width:2.5}

/* Share Button - Slightly Different */
.carousel-share-btn{background:rgba(255,255,255,0.28)}
.carousel-share-btn:hover{background:rgba(255,255,255,0.45)}

/* Overflow Badge */
.carousel-overflow-badge{
    display:none;
    position:absolute;
    top:50%;left:50%;
    transform:translate(-50%,-50%);
    background:linear-gradient(135deg,#ef4444,#dc2626);
    color:white;
    padding:0.625rem 1.25rem;
    border-radius:10px;
    font-size:0.6875rem;
    font-weight:700;
    z-index:10;
    white-space:nowrap;
    box-shadow:0 4px 16px rgba(239,68,68,0.4)
}
.carousel-slide-card.overflow{opacity:0.5;pointer-events:none}
.carousel-slide-card.overflow .carousel-overflow-badge{display:block}
.carousel-slide-card.overflow .carousel-slide-header{background:linear-gradient(135deg,#9ca3af,#6b7280)}

/* Slide Preview Content Area */
.carousel-slide-preview{
    aspect-ratio:1/1;
    background:linear-gradient(180deg,#fafafa 0%,#f5f5f5 100%);
    padding:1.5rem 1.25rem 1.25rem;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    position:relative
}

/* Section Label Pill */
.carousel-slide-label{
    font-size:0.5625rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.08em;
    color:#059669;
    background:linear-gradient(135deg,rgba(16,185,129,0.12),rgba(5,150,105,0.08));
    padding:0.25rem 0.5rem;
    border-radius:4px;
    display:inline-block;
    width:fit-content;
    margin-bottom:0.625rem;
    border:1px solid rgba(16,185,129,0.15)
}

/* Headline Typography */
.carousel-slide-headline{
    font-size:1.0625rem;
    font-weight:700;
    line-height:1.3;
    margin-bottom:0.625rem;
    color:#111827;
    letter-spacing:-0.01em
}

/* Body Text */
.carousel-slide-body{
    font-size:0.8125rem;
    color:#4b5563;
    line-height:1.55;
    flex:1
}

/* Call-to-Action / Swipe Trigger */
.carousel-slide-cta{
    font-size:0.75rem;
    font-weight:700;
    color:#b8860b;
    margin-top:auto;
    padding-top:0.75rem;
    letter-spacing:0.01em
}

/* Designer Notes - Minimal & Clean */
.carousel-slide-notes{
    border-top:1px solid rgba(0,0,0,0.06);
    font-size:0.6875rem;
    background:linear-gradient(180deg,#f9fafb,#f3f4f6);
    margin:0
}
.carousel-slide-notes summary{
    padding:0.5rem 0.875rem;
    cursor:pointer;
    color:#6b7280;
    font-weight:600;
    display:flex;
    align-items:center;
    gap:0.375rem;
    list-style:none;
    transition:all 0.15s
}
.carousel-slide-notes summary:hover{color:#374151;background:rgba(0,0,0,0.02)}
.carousel-slide-notes summary::-webkit-details-marker{display:none}
.carousel-slide-notes summary::after{
    content:'›';
    margin-left:auto;
    font-size:0.875rem;
    font-weight:400;
    transition:transform 0.2s;
    color:#9ca3af
}
.carousel-slide-notes[open] summary::after{transform:rotate(90deg)}
.carousel-slide-notes[open] summary{background:rgba(0,0,0,0.02)}
.carousel-slide-notes .notes-icon{font-size:0.8125rem}
.carousel-slide-notes .notes-content{
    padding:0 0.875rem 0.75rem;
    color:#6b7280;
    line-height:1.55;
    border-top:1px dashed rgba(0,0,0,0.06);
    margin-top:0;
    padding-top:0.5rem
}

/* Variations Renderer - For testimonials, referrals, multi-option content */
.output-content-inner:has(.variations-renderer){padding:0;white-space:normal}
.variations-renderer{padding:0.5rem}
.variations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem;margin-bottom:1rem}
.variation-card{
    background:#ffffff;
    border:1px solid rgba(0,0,0,0.1);
    border-radius:14px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    transition:all 0.25s cubic-bezier(0.4,0,0.2,1);
    box-shadow:0 2px 8px rgba(0,0,0,0.05)
}
.variation-card:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 40px rgba(0,0,0,0.12)
}

/* Compact header with inline number and copy */
.variation-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:0.5rem 0.875rem;
    background:linear-gradient(135deg,#c9a227 0%,#b8860b 100%);
    position:relative
}
.variation-number{display:flex;align-items:center;gap:0.375rem;position:relative;z-index:1}
.variation-num{
    width:24px;height:24px;
    background:#ffffff;
    color:#1a1a1a;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-size:0.75rem;
    font-weight:800;
    box-shadow:0 1px 3px rgba(0,0,0,0.15)
}
.variation-total{font-size:0.625rem;color:rgba(255,255,255,0.8);font-weight:500}
.variation-actions{position:relative;z-index:1}
.variation-copy-btn{
    display:flex;align-items:center;gap:0.25rem;
    padding:0.375rem 0.625rem;
    background:rgba(255,255,255,0.2);
    border:1px solid rgba(255,255,255,0.3);
    border-radius:6px;
    color:white;
    font-size:0.6875rem;
    font-weight:600;
    cursor:pointer;
    transition:all 0.15s
}
.variation-copy-btn:hover{background:rgba(255,255,255,0.35)}
.variation-copy-btn svg{width:12px;height:12px}

/* Content area with consistent alignment */
.variation-content{padding:1rem 1rem 0.875rem;flex:1;display:flex;flex-direction:column}

/* Subject line - prominent */
.variation-subject{margin-bottom:0.75rem}
.variation-label{
    font-size:0.5625rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.06em;
    color:#b8860b;
    margin-bottom:0.25rem;
    display:block
}
.variation-subject-text{
    font-size:0.9375rem;
    font-weight:700;
    color:#111827;
    line-height:1.35
}

/* Preview text - subtle callout */
.variation-preview{
    margin-bottom:0.75rem;
    padding:0.5rem 0.625rem;
    background:#faf8f5;
    border-left:2px solid #d4a84b;
    border-radius:0 4px 4px 0;
    font-size:0.75rem;
    color:#6b7280;
    font-style:italic;
    line-height:1.4
}

/* Body text - readable */
.variation-body{
    font-size:0.8125rem;
    color:#374151;
    line-height:1.6;
    flex:1
}
.variation-body p{margin-bottom:0.5rem}
.variation-body p:last-child{margin-bottom:0}

/* Footer with word count */
.variation-footer{
    padding:0.5rem 1rem;
    background:#f9fafb;
    border-top:1px solid rgba(0,0,0,0.05);
    display:flex;
    justify-content:flex-end
}
.variation-stat{
    font-size:0.625rem;
    color:#9ca3af;
    font-weight:500
}

/* Copy All button */
.variations-actions{
    display:flex;
    justify-content:center;
    padding:0.875rem;
    background:var(--bg2);
    border-radius:10px;
    border:1px solid var(--border)
}
.variations-copy-all{
    padding:0.625rem 1.25rem;
    background:linear-gradient(135deg,var(--accent),#b8860b);
    color:white;
    border:none;
    border-radius:8px;
    font-size:0.8125rem;
    font-weight:700;
    cursor:pointer;
    box-shadow:0 2px 8px rgba(194,154,86,0.3);
    transition:all 0.2s
}
.variations-copy-all:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(194,154,86,0.4)}

/* Platform Generate Overlay */
.carousel-platform-overlay{display:none;position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.95);backdrop-filter:blur(4px);z-index:20;align-items:center;justify-content:center;border-radius:12px;min-height:300px}
.carousel-overlay-content{text-align:center;padding:2rem}
.carousel-overlay-icon{font-size:3rem;margin-bottom:1rem}
.carousel-overlay-title{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin-bottom:0.5rem}
.carousel-overlay-desc{font-size:0.875rem;color:#666;margin-bottom:1.5rem;max-width:300px}
.carousel-overlay-btn{padding:0.875rem 2rem;background:linear-gradient(135deg,#10b981,#059669);color:white;border:none;border-radius:10px;font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:0.5rem;margin:0 auto 0.75rem;box-shadow:0 4px 12px rgba(16,185,129,0.3);transition:all 0.2s}
.carousel-overlay-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(16,185,129,0.4)}
.carousel-overlay-btn-secondary{padding:0.5rem 1rem;background:transparent;border:1px solid var(--border);border-radius:8px;font-size:0.8125rem;color:var(--text2);cursor:pointer;transition:all 0.15s}
.carousel-overlay-btn-secondary:hover{border-color:var(--accent);color:var(--accent)}
.carousel-slides-grid{position:relative}
.slide-number{width:24px;height:24px;background:var(--accent);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:700;margin-bottom:0.5rem}
.slide-content{font-size:0.8125rem;line-height:1.5;color:var(--text)}

/* Email Sequence Renderer */
.output-content-inner:has(.emailseq-renderer){padding:0;white-space:normal}
.emailseq-renderer{padding:0.5rem}
.emailseq-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.75rem;padding:0 0.25rem}
.emailseq-count{font-size:0.75rem;font-weight:700;color:var(--text2)}
.emailseq-copy-all{display:flex;align-items:center;gap:0.25rem;padding:0.375rem 0.625rem;background:var(--accent);color:white;border:none;border-radius:6px;font-size:0.625rem;font-weight:600;cursor:pointer}
.emailseq-copy-all:hover{filter:brightness(1.1)}
.emailseq-list{display:flex;flex-direction:column;gap:0.75rem}
.seq-email-card{background:var(--bg);border:1px solid var(--border);border-radius:10px;overflow:hidden;transition:border-color 0.15s}
.seq-email-card:hover{border-color:var(--accent)}
.seq-email-header{display:flex;justify-content:space-between;align-items:center;padding:0.5rem 0.75rem;background:linear-gradient(135deg,var(--bg2),var(--bg));border-bottom:1px solid var(--border)}
.seq-email-num{font-size:0.75rem;font-weight:700;color:var(--accent)}
.seq-email-meta{display:flex;align-items:center;gap:0.5rem}
.seq-email-words{font-size:0.625rem;color:var(--text3)}
.seq-copy-btn{display:flex;align-items:center;gap:0.25rem;padding:0.25rem 0.5rem;background:var(--accent);color:white;border:none;border-radius:4px;font-size:0.5625rem;font-weight:600;cursor:pointer;transition:all 0.15s}
.seq-copy-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.seq-email-content{padding:0.75rem}
.seq-subject-line{font-size:0.8125rem;font-weight:600;color:var(--text);margin-bottom:0.375rem;padding:0.5rem 0.625rem;background:var(--bg2);border-radius:6px}
.seq-preview-line{font-size:0.6875rem;color:var(--text2);margin-bottom:0.625rem;padding:0.375rem 0.625rem;background:var(--accent-dim);border-radius:4px;border-left:3px solid var(--accent)}
.seq-label{font-weight:600;color:var(--text3);margin-right:0.25rem}
.seq-body-text{font-size:0.8125rem;line-height:1.6;color:var(--text)}
.seq-body-text p{margin-bottom:0.625rem}

/* Pitch Deck Renderer */
.output-content-inner:has(.deck-renderer){padding:0;white-space:normal}
.deck-renderer{padding:0.5rem}
.deck-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:0 0.25rem}
.deck-count{font-size:0.875rem;font-weight:700;color:var(--text)}
.deck-actions{display:flex;gap:0.5rem;align-items:center}
.deck-export-btn{display:flex;align-items:center;gap:0.375rem;padding:0.5rem 1rem;background:linear-gradient(135deg,#f97316,#ea580c);color:white;border:none;border-radius:8px;font-size:0.75rem;font-weight:700;cursor:pointer;transition:all 0.15s}
.deck-export-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.deck-copy-btn{display:flex;align-items:center;gap:0.25rem;padding:0.5rem 0.75rem;background:var(--accent);color:white;border:none;border-radius:8px;font-size:0.6875rem;font-weight:600;cursor:pointer}
.deck-copy-btn:hover{filter:brightness(1.1)}
.deck-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}
.deck-slide-card{background:var(--bg);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:all 0.2s}
.deck-slide-card:hover{border-color:var(--accent);box-shadow:0 8px 24px rgba(0,0,0,0.12)}
.deck-slide-preview{aspect-ratio:16/9;padding:1.25rem;position:relative;display:flex;flex-direction:column}
.deck-slide-number{position:absolute;top:0.75rem;left:0.75rem;width:28px;height:28px;background:rgba(255,255,255,0.2);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:700;color:white}
.deck-slide-content{flex:1;display:flex;flex-direction:column;justify-content:center;text-align:center;padding:0 1rem}
.deck-slide-type{font-size:0.625rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:0.5rem;opacity:0.9}
.deck-slide-headline{font-size:0.9375rem;font-weight:700;color:white;line-height:1.4;margin-bottom:0.625rem}
.deck-slide-bullets{text-align:left;margin-top:auto;max-height:3.5rem;overflow:hidden}
.deck-slide-bullet{font-size:0.6875rem;color:rgba(255,255,255,0.85);line-height:1.5;margin-bottom:0.375rem;padding-left:0.5rem;display:flex;gap:0.375rem}
.deck-slide-bullet::before{content:"•";color:rgba(255,255,255,0.6)}
.deck-slide-footer{display:flex;justify-content:space-between;align-items:center;padding:0.625rem 0.875rem;background:var(--bg2);border-top:1px solid var(--border)}
.deck-slide-meta{display:flex;gap:0.5rem;font-size:0.6875rem}
.deck-slide-has-notes,.deck-slide-has-visual{opacity:0.7;display:flex;align-items:center;gap:0.25rem}
.deck-slide-expand{padding:0.375rem 0.75rem;border:1px solid var(--accent);border-radius:6px;background:var(--accent-dim);cursor:pointer;display:flex;align-items:center;gap:0.375rem;color:var(--accent);font-size:0.6875rem;font-weight:600;transition:all 0.15s}
.deck-slide-expand:hover{background:var(--accent);color:white}
.deck-slide-expand svg{transition:transform 0.2s}
.deck-slide-expand.open svg{transform:rotate(180deg)}
.deck-slide-details{padding:0.875rem;background:var(--bg);border-top:1px solid var(--border);font-size:0.75rem;display:none}
.deck-slide-details.show{display:block}
.deck-detail-section{margin-bottom:0.625rem;line-height:1.6;color:var(--text2)}
.deck-detail-section:last-child{margin-bottom:0}
.deck-detail-label{font-weight:600;color:var(--text);display:block;margin-bottom:0.25rem}

/* Deck Theme Selector */
.deck-theme-selector{position:relative}
.deck-theme-select{padding:0.5rem 0.75rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:0.75rem;font-weight:600;color:var(--text);cursor:pointer;min-width:110px}
.deck-theme-select:hover{border-color:var(--accent)}
.deck-theme-select:focus{outline:none;border-color:var(--accent)}
.deck-settings-btn{width:36px;height:36px;border:1px solid var(--border);border-radius:8px;background:var(--bg);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text2);transition:all 0.15s}
.deck-settings-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}
.deck-settings-btn.active{background:var(--accent);color:white;border-color:var(--accent)}

/* Image Settings Modal */
.deck-image-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:1000;align-items:center;justify-content:center}
.deck-image-modal.show{display:flex}
.deck-image-modal-content{background:var(--bg);border-radius:16px;width:90%;max-width:480px;max-height:90vh;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,0.3)}
.deck-image-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:var(--bg2);border-bottom:1px solid var(--border)}
.deck-image-modal-title{font-size:1rem;font-weight:700;color:var(--text)}
.deck-image-modal-close{width:32px;height:32px;border:none;background:var(--bg);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text3)}
.deck-image-modal-close:hover{background:var(--accent-dim);color:var(--accent)}
.deck-image-modal-body{padding:1.25rem}
.deck-image-tabs{display:flex;gap:0.5rem;margin-bottom:1rem}
.deck-image-tab{flex:1;padding:0.625rem;border:1px solid var(--border);border-radius:8px;background:var(--bg);font-size:0.75rem;font-weight:600;color:var(--text2);cursor:pointer;text-align:center;transition:all 0.15s}
.deck-image-tab:hover{border-color:var(--accent)}
.deck-image-tab.active{background:var(--accent);color:white;border-color:var(--accent)}
.deck-image-tab-content{display:none}
.deck-image-tab-content.active{display:block}
.deck-image-provider{padding:1rem;background:var(--bg2);border-radius:10px;margin-bottom:0.75rem}
.deck-image-provider-header{display:flex;align-items:center;gap:0.625rem;margin-bottom:0.75rem}
.deck-image-provider-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem}
.deck-image-provider-icon.unsplash{background:#000;color:white}
.deck-image-provider-icon.dalle{background:linear-gradient(135deg,#10a37f,#1a7f5a);color:white}
.deck-image-provider-name{font-weight:600;color:var(--text)}
.deck-image-provider-desc{font-size:0.6875rem;color:var(--text3)}
.deck-image-input-group{margin-bottom:0.75rem}
.deck-image-label{display:block;font-size:0.6875rem;font-weight:600;color:var(--text2);margin-bottom:0.375rem}
.deck-image-input{width:100%;padding:0.625rem 0.75rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:0.8125rem;color:var(--text);font-family:monospace}
.deck-image-input:focus{outline:none;border-color:var(--accent)}
.deck-image-input::placeholder{color:var(--text3)}
.deck-image-help{font-size:0.625rem;color:var(--text3);margin-top:0.375rem}
.deck-image-help a{color:var(--accent)}
.deck-image-warning{display:flex;align-items:flex-start;gap:0.5rem;padding:0.625rem;background:rgba(245,158,11,0.1);border:1px solid rgba(245,158,11,0.3);border-radius:8px;font-size:0.6875rem;color:#b45309;margin-top:0.75rem}
.deck-image-warning-icon{font-size:1rem;line-height:1}
.deck-image-status{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0.75rem;border-radius:6px;font-size:0.6875rem;font-weight:600;margin-top:0.75rem}
.deck-image-status.connected{background:rgba(16,185,129,0.1);color:#059669}
.deck-image-status.disconnected{background:rgba(107,114,128,0.1);color:#6b7280}
.deck-image-save-btn{width:100%;padding:0.75rem;background:var(--accent);color:white;border:none;border-radius:8px;font-size:0.8125rem;font-weight:700;cursor:pointer;margin-top:1rem}
.deck-image-save-btn:hover{filter:brightness(1.1)}

/* Export Gate Modal */
.export-gate-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.7);z-index:1000;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.export-gate-modal.show{display:flex}
.export-gate-content{background:var(--bg);border-radius:16px;width:90%;max-width:500px;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,0.3)}
.export-gate-header{padding:1.5rem;background:linear-gradient(135deg,#f97316,#ea580c);color:white;text-align:center}
.export-gate-header h3{font-size:1.25rem;font-weight:700;margin:0 0 0.5rem}
.export-gate-header p{font-size:0.875rem;opacity:0.9;margin:0}
.export-gate-body{padding:1.5rem}
.export-gate-options{display:flex;flex-direction:column;gap:1rem}
.export-gate-option{padding:1.25rem;border:2px solid var(--border);border-radius:12px;cursor:pointer;transition:all 0.15s}
.export-gate-option:hover{border-color:var(--accent);background:var(--accent-dim)}
.export-gate-option.premium{border-color:#f97316;background:rgba(249,115,22,0.05)}
.export-gate-option.premium:hover{background:rgba(249,115,22,0.1)}
.export-gate-option-header{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.5rem}
.export-gate-option-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}
.export-gate-option-icon.premium{background:linear-gradient(135deg,#f97316,#ea580c);color:white}
.export-gate-option-icon.basic{background:var(--bg2);color:var(--text2)}
.export-gate-option-title{font-weight:700;color:var(--text)}
.export-gate-option-badge{font-size:0.625rem;font-weight:700;padding:0.25rem 0.5rem;border-radius:4px;background:#f97316;color:white}
.export-gate-option-desc{font-size:0.8125rem;color:var(--text2);line-height:1.5}
.export-gate-input{margin-top:1rem;display:none}
.export-gate-option.expanded .export-gate-input{display:block}
.export-gate-input-row{display:flex;gap:0.5rem;margin-bottom:0.75rem}
.export-gate-input input{flex:1;padding:0.625rem 0.75rem;border:1px solid var(--border);border-radius:8px;font-size:0.875rem;background:var(--bg);color:var(--text)}
.export-gate-input input:focus{outline:none;border-color:var(--accent)}
.export-gate-input-help{font-size:0.6875rem;color:var(--text3)}
.export-gate-input-help a{color:var(--accent)}
.export-gate-footer{padding:1rem 1.5rem;background:var(--bg2);border-top:1px solid var(--border);display:flex;justify-content:space-between}
.export-gate-cancel{padding:0.625rem 1.25rem;background:none;border:1px solid var(--border);border-radius:8px;color:var(--text2);font-size:0.875rem;cursor:pointer}
.export-gate-cancel:hover{border-color:var(--text3)}
.export-gate-proceed{padding:0.625rem 1.25rem;background:var(--accent);border:none;border-radius:8px;color:white;font-size:0.875rem;font-weight:600;cursor:pointer}
.export-gate-proceed:hover{filter:brightness(1.1)}

/* Image API Setup Modal */
.image-api-setup-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.7);z-index:1000;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.image-api-setup-modal.show{display:flex}
.image-api-setup-content{background:var(--bg);border-radius:20px;width:90%;max-width:520px;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,0.4)}
.image-api-setup-header{padding:2rem 2rem 1.5rem;background:linear-gradient(135deg,#1e293b,#0f172a);text-align:center}
.image-api-setup-header-icon{font-size:3rem;margin-bottom:1rem}
.image-api-setup-header h3{font-size:1.375rem;font-weight:700;color:white;margin:0 0 0.5rem}
.image-api-setup-header p{font-size:0.9375rem;color:rgba(255,255,255,0.7);margin:0;line-height:1.5}
.image-api-setup-body{padding:1.75rem 2rem}
.image-api-setup-tip{display:flex;gap:0.75rem;padding:1rem;background:linear-gradient(135deg,rgba(212,168,83,0.1),rgba(212,168,83,0.05));border:1px solid rgba(212,168,83,0.2);border-radius:12px;margin-bottom:1.5rem}
.image-api-setup-tip-icon{font-size:1.25rem;flex-shrink:0}
.image-api-setup-tip-text{font-size:0.8125rem;color:var(--text);line-height:1.5}
.image-api-setup-tip-text strong{color:#d4a853}
.image-api-setup-options{display:flex;flex-direction:column;gap:1rem}
.image-api-setup-option{padding:1.25rem;border:2px solid var(--border);border-radius:12px;transition:all 0.2s}
.image-api-setup-option:hover{border-color:#d4a853;background:rgba(212,168,83,0.05)}
.image-api-setup-option-header{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.75rem}
.image-api-setup-option-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}
.image-api-setup-option-icon.unsplash{background:linear-gradient(135deg,#000,#333);color:white}
.image-api-setup-option-icon.dalle{background:linear-gradient(135deg,#10a37f,#0d8c6d);color:white}
.image-api-setup-option-info{flex:1}
.image-api-setup-option-name{font-weight:700;color:var(--text);font-size:0.9375rem}
.image-api-setup-option-desc{font-size:0.75rem;color:var(--text3)}
.image-api-setup-option-badge{font-size:0.625rem;font-weight:700;padding:0.25rem 0.625rem;border-radius:4px;background:#10b981;color:white}
.image-api-setup-option-badge.pro{background:linear-gradient(135deg,#d4a853,#b8943a)}
.image-api-setup-input{margin-top:0.75rem}
.image-api-setup-input input{width:100%;padding:0.75rem 1rem;border:2px solid var(--border);border-radius:8px;font-size:0.9375rem;background:var(--bg);color:var(--text);box-sizing:border-box;transition:all 0.2s}
.image-api-setup-input input:focus{outline:none;border-color:#d4a853;box-shadow:0 0 0 3px rgba(212,168,83,0.15)}
.image-api-setup-input input::placeholder{color:var(--text3)}
.image-api-setup-help{display:flex;justify-content:space-between;align-items:center;margin-top:0.5rem}
.image-api-setup-help a{font-size:0.75rem;color:#d4a853;text-decoration:none}
.image-api-setup-help a:hover{text-decoration:underline}
.image-api-setup-save{padding:0.5rem 1rem;background:#d4a853;color:#0f172a;border:none;border-radius:6px;font-size:0.8125rem;font-weight:700;cursor:pointer;transition:all 0.2s}
.image-api-setup-save:hover{filter:brightness(1.1)}
.image-api-setup-footer{padding:1.25rem 2rem;background:var(--bg2);border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}
.image-api-setup-skip{padding:0.75rem 1.25rem;background:none;border:1px solid var(--border);border-radius:8px;color:var(--text2);font-size:0.875rem;cursor:pointer;transition:all 0.2s}
.image-api-setup-skip:hover{border-color:var(--text3);color:var(--text)}
.image-api-setup-settings{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1.25rem;background:linear-gradient(135deg,#d4a853,#b8943a);border:none;border-radius:8px;color:#0f172a;font-size:0.875rem;font-weight:700;cursor:pointer;transition:all 0.2s}
.image-api-setup-settings:hover{filter:brightness(1.1);transform:translateY(-1px)}

/* Ad Renderer */
.output-content-inner:has(.ad-renderer){padding:0;white-space:normal}
.ad-renderer{padding:0.5rem}
.ad-preview{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:1rem}
.ad-headline{font-size:1.1rem;font-weight:700;color:var(--accent);margin-bottom:0.5rem}
.ad-body{font-size:0.875rem;line-height:1.5;color:var(--text)}
.ad-body p{margin-bottom:0.5rem}

/* Document Renderer */
.output-content-inner:has(.document-renderer){padding:0;white-space:normal}
.document-renderer{padding:0.5rem}
.document-content{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:1rem;max-height:500px;overflow-y:auto}
.doc-para{margin-bottom:1rem;line-height:1.6;color:var(--text)}

/* Product Renderer */
.output-content-inner:has(.product-renderer){padding:0;white-space:normal}
.product-renderer{padding:0.5rem}
.product-card{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:1rem}
.product-title{font-size:1.1rem;font-weight:700;margin-bottom:0.5rem;color:var(--text)}
.product-desc{font-size:0.875rem;line-height:1.6;color:var(--text2)}
.product-desc p{margin-bottom:0.5rem}

/* ============================================================================
   PROPOSAL RENDERER - Premium A+ Visual Design
   ============================================================================ */
.output-content-inner:has(.prop-renderer){padding:0;white-space:normal}
.prop-renderer{background:var(--bg);border-radius:12px;overflow:hidden}

/* Header */
.prop-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,#1e293b,#0f172a);border-bottom:1px solid rgba(255,255,255,0.1)}
.prop-header-title{display:flex;align-items:center;gap:0.75rem}
.prop-header-icon{font-size:1.5rem}
.prop-header-title h2{font-size:1.125rem;font-weight:700;color:white;margin:0}
.prop-header-meta{font-size:0.75rem;color:rgba(255,255,255,0.6)}
.prop-header-actions{display:flex;gap:0.5rem}
.prop-action-btn{display:flex;align-items:center;gap:0.375rem;padding:0.5rem 0.875rem;background:#d4a853;color:#0f172a;border:none;border-radius:6px;font-size:0.75rem;font-weight:700;cursor:pointer;transition:all 0.15s}
.prop-action-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.prop-action-btn.secondary{background:rgba(255,255,255,0.1);color:white;border:1px solid rgba(255,255,255,0.2)}
.prop-action-btn.secondary:hover{background:rgba(255,255,255,0.2)}

/* Tabs */
.prop-tabs{display:flex;background:var(--bg2);border-bottom:1px solid var(--border);padding:0 0.5rem}
.prop-tab{display:flex;align-items:center;gap:0.5rem;padding:0.875rem 1.25rem;background:none;border:none;border-bottom:3px solid transparent;font-size:0.875rem;font-weight:600;color:var(--text2);cursor:pointer;transition:all 0.15s;margin-bottom:-1px}
.prop-tab:hover{color:var(--text);background:rgba(0,0,0,0.03)}
.prop-tab.active{color:var(--accent);border-bottom-color:var(--accent);background:var(--bg)}
.prop-tab-icon{font-size:1rem}

/* Tab Content */
.prop-tab-content{display:none;padding:1.25rem}
.prop-tab-content.active{display:block}

/* Dashboard Tab */
.prop-dashboard{display:flex;flex-direction:column;gap:1rem}

/* Deal Health Card */
.prop-health-card{display:flex;align-items:center;gap:1.5rem;padding:1.25rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;border:1px solid var(--border)}
.prop-health-score{width:90px;height:90px;border:4px solid;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}
.prop-health-number{font-size:2rem;font-weight:800;line-height:1}
.prop-health-label{font-size:0.625rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;opacity:0.8}
.prop-health-info{flex:1}
.prop-health-info h3{font-size:0.875rem;font-weight:700;color:var(--text);margin:0 0 0.5rem}
.prop-health-bar{height:8px;background:var(--border);border-radius:4px;overflow:hidden}
.prop-health-bar-fill{height:100%;border-radius:4px;transition:width 0.5s ease}
.prop-health-advice{font-size:0.8125rem;font-weight:600;margin:0.5rem 0 0;color:var(--text2)}

/* Key Dates Card */
.prop-dates-card{padding:1rem 1.25rem;background:var(--bg2);border-radius:10px;border:1px solid var(--border)}
.prop-dates-card h4{font-size:0.75rem;font-weight:700;text-transform:uppercase;color:var(--text3);margin:0 0 0.75rem;letter-spacing:0.5px}
.prop-dates-timeline{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap}
.prop-date-item{padding:0.625rem 1rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;text-align:center;min-width:100px}
.prop-date-label{display:block;font-size:0.625rem;font-weight:700;text-transform:uppercase;color:var(--text3);margin-bottom:0.25rem}
.prop-date-value{display:block;font-size:0.875rem;font-weight:700;color:var(--text)}
.prop-date-arrow{color:var(--text3);font-size:1rem}

/* Strengths & Risks Grid */
.prop-sr-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(max-width:600px){.prop-sr-grid{grid-template-columns:1fr}}
.prop-sr-card{padding:1rem;border-radius:10px;border:1px solid}
.prop-sr-card.strengths{background:rgba(16,185,129,0.05);border-color:rgba(16,185,129,0.2)}
.prop-sr-card.risks{background:rgba(245,158,11,0.05);border-color:rgba(245,158,11,0.2)}
.prop-sr-card h4{font-size:0.8125rem;font-weight:700;margin:0 0 0.75rem}
.prop-sr-card.strengths h4{color:#059669}
.prop-sr-card.risks h4{color:#d97706}
.prop-sr-card ul{list-style:none;padding:0;margin:0}
.prop-sr-card li{display:flex;align-items:flex-start;gap:0.5rem;padding:0.375rem 0;font-size:0.8125rem;color:var(--text2);line-height:1.4}
.prop-check{color:#10b981;font-weight:700;flex-shrink:0}
.prop-warn{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:#f59e0b;color:white;border-radius:50%;font-size:0.625rem;font-weight:700;flex-shrink:0}

/* Checklist Card */
.prop-checklist-card{padding:1rem 1.25rem;background:rgba(59,130,246,0.05);border:1px solid rgba(59,130,246,0.2);border-radius:10px}
.prop-checklist-card h4{font-size:0.8125rem;font-weight:700;color:#2563eb;margin:0 0 0.75rem}
.prop-checklist{display:flex;flex-direction:column;gap:0.5rem}
.prop-checklist-item{display:flex;align-items:center;gap:0.625rem;cursor:pointer;padding:0.375rem 0}
.prop-checklist-item input{display:none}
.prop-checklist-box{width:20px;height:20px;border:2px solid #3b82f6;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all 0.15s}
.prop-checklist-item input:checked+.prop-checklist-box{background:#3b82f6;border-color:#3b82f6}
.prop-checklist-item input:checked+.prop-checklist-box::after{content:"✓";color:white;font-size:0.75rem;font-weight:700}
.prop-checklist-text{font-size:0.8125rem;color:var(--text2)}
.prop-checklist-item input:checked~.prop-checklist-text{text-decoration:line-through;opacity:0.6}

/* Urgency Card */
.prop-urgency-card{padding:1rem 1.25rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:10px}
.prop-urgency-card h4{font-size:0.8125rem;font-weight:700;color:#92400e;margin:0 0 0.75rem}
.prop-urgency-card ul{list-style:none;padding:0;margin:0}
.prop-urgency-card li{padding:0.375rem 0;font-size:0.8125rem;color:#78350f;line-height:1.4}

/* Proposal Tab - Collapsible Sections */
.prop-sections{display:flex;flex-direction:column;gap:0.75rem}
.prop-section-card{background:var(--bg);border:1px solid var(--border);border-radius:10px;overflow:hidden}
.prop-section-header{display:flex;justify-content:space-between;align-items:center;padding:0.875rem 1rem;background:var(--bg2);cursor:pointer;transition:background 0.15s}
.prop-section-header:hover{background:var(--accent-dim)}
.prop-section-title{font-size:0.875rem;font-weight:700;color:var(--text)}
.prop-section-actions{display:flex;align-items:center;gap:0.5rem}
.prop-section-copy{background:none;border:none;font-size:0.875rem;cursor:pointer;opacity:0.5;transition:opacity 0.15s;padding:0.25rem}
.prop-section-copy:hover{opacity:1}
.prop-section-toggle{font-size:0.75rem;color:var(--text3);transition:transform 0.2s}
.prop-section-card.expanded .prop-section-toggle{transform:rotate(180deg)}
.prop-section-body{display:none;padding:1rem;border-top:1px solid var(--border)}
.prop-section-card.expanded .prop-section-body{display:block}
.prop-section-content{font-size:0.875rem;line-height:1.6;color:var(--text2)}
.prop-section-content p{margin-bottom:0.75rem}
.prop-section-content strong{color:var(--text)}
.prop-bullet{display:flex;gap:0.5rem;padding:0.25rem 0}
.prop-bullet-icon{flex-shrink:0;width:16px}

/* Signature Card */
.prop-signature-card{padding:1.25rem;background:var(--bg2);border:1px solid var(--border);border-radius:10px;margin-top:0.5rem}
.prop-signature-card h4{font-size:0.875rem;font-weight:700;color:var(--text);margin:0 0 1rem}
.prop-signature-block{font-size:0.875rem;color:var(--text2)}
.prop-signature-line{display:flex;gap:2rem;margin:1rem 0;font-family:serif}
.prop-signature-fields{font-size:0.8125rem;color:var(--text3)}

/* One-Pager Tab */
.prop-onepager{background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:12px;overflow:hidden}
.prop-onepager-header{padding:1.25rem;border-bottom:1px solid rgba(255,255,255,0.1);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.prop-onepager-header h3{font-size:1.125rem;font-weight:700;color:white;margin:0}
.prop-onepager-header p{font-size:0.8125rem;color:rgba(255,255,255,0.6);margin:0.25rem 0 0;width:100%}
.prop-copy-btn{display:flex;align-items:center;gap:0.375rem;padding:0.5rem 1rem;background:#d4a853;color:#0f172a;border:none;border-radius:6px;font-size:0.8125rem;font-weight:700;cursor:pointer;transition:all 0.15s}
.prop-copy-btn:hover{filter:brightness(1.1)}
.prop-onepager-content{padding:1.25rem}
.prop-onepager-tldr{padding:1rem;background:rgba(212,168,83,0.15);border:1px solid rgba(212,168,83,0.3);border-radius:8px;margin-bottom:1rem;font-size:0.9375rem;color:white;line-height:1.5}
.prop-onepager-tldr strong{color:#d4a853}
.prop-onepager-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem}
@media(max-width:600px){.prop-onepager-grid{grid-template-columns:1fr}}
.prop-onepager-item{padding:1rem;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:8px}
.prop-onepager-item.full{grid-column:1/-1}
.prop-onepager-item.highlight{background:rgba(212,168,83,0.2);border-color:rgba(212,168,83,0.4)}
.prop-onepager-label{display:block;font-size:0.625rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:rgba(255,255,255,0.5);margin-bottom:0.375rem}
.prop-onepager-value{font-size:0.875rem;color:white;line-height:1.5}
.prop-onepager-list{list-style:none;padding:0;margin:0}
.prop-onepager-list li{padding:0.25rem 0;font-size:0.875rem;color:rgba(255,255,255,0.9)}

/* Pricing Tab */
.prop-pricing{background:var(--bg);border-radius:12px}
.prop-pricing-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}
.prop-pricing-header h3{font-size:1rem;font-weight:700;color:var(--text);margin:0}
.prop-pricing-content{padding:1.25rem;font-size:0.875rem;line-height:1.6;color:var(--text2);max-height:500px;overflow-y:auto}
.prop-pricing-content strong{color:var(--text)}
.prop-pricing-empty{padding:2rem;text-align:center;color:var(--text3)}

/* Proposal Document Tab */
.prop-proposal-doc{background:var(--bg);border-radius:12px}
.prop-proposal-actions{padding:1rem 1.25rem;border-bottom:1px solid var(--border);display:flex;justify-content:flex-end}
.prop-proposal-content{padding:2rem;max-height:600px;overflow-y:auto;font-size:0.9375rem;line-height:1.7;color:var(--text)}
.prop-proposal-content p{margin-bottom:1rem}
.prop-para{margin-bottom:1rem}
.prop-subhead{font-weight:700;color:var(--text);margin:1.5rem 0 0.75rem}
.prop-bullet{display:flex;gap:0.5rem;padding:0.25rem 0;margin-left:0.5rem}
.prop-bullet-icon{flex-shrink:0;width:16px;color:var(--accent)}
.prop-empty{color:var(--text3);font-style:italic;padding:1rem;text-align:center}
.prop-empty-small{color:var(--text3);font-style:italic;font-size:0.8125rem;padding:0.5rem 0}

/* One-Pager Letter Format */
.prop-letter{background:white;border:1px solid var(--border);border-radius:12px;padding:2rem;max-width:700px;margin:0 auto}
.prop-letter-header{text-align:center;padding-bottom:1.5rem;border-bottom:2px solid var(--accent);margin-bottom:1.5rem}
.prop-letter-header strong{display:block;font-size:1rem;font-weight:700;color:var(--accent);letter-spacing:1px;text-transform:uppercase}
.prop-letter-header span{font-size:0.8125rem;color:var(--text3)}
.prop-letter-section{margin-bottom:1.5rem}
.prop-letter-section.tldr{background:linear-gradient(135deg,#fef3c7,#fde68a);padding:1rem 1.25rem;border-radius:8px;border-left:4px solid #f59e0b}
.prop-letter-section.tldr p{margin:0;font-size:0.9375rem;color:#78350f}
.prop-letter-section.risk{background:rgba(239,68,68,0.05);padding:1rem 1.25rem;border-radius:8px;border-left:4px solid #ef4444}
.prop-letter-section.cta{background:linear-gradient(135deg,#1e293b,#0f172a);padding:1.25rem;border-radius:8px;text-align:center}
.prop-letter-section.cta .prop-letter-label{color:rgba(255,255,255,0.6)}
.prop-letter-section.cta p{color:white;margin:0}
.prop-letter-label{font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--text3);margin-bottom:0.5rem}
.prop-letter-section p{margin:0;font-size:0.9375rem;line-height:1.6;color:var(--text)}
.prop-letter-section ul{list-style:none;padding:0;margin:0}
.prop-letter-section li{padding:0.375rem 0;font-size:0.9375rem;color:var(--text2)}
.prop-letter-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}
@media(max-width:500px){.prop-letter-grid{grid-template-columns:1fr}}
.prop-letter-box{padding:1rem;background:var(--bg2);border-radius:8px}
.prop-letter-box.urgent{background:rgba(245,158,11,0.1);border:1px solid rgba(245,158,11,0.3)}
.prop-letter-box p{margin:0;font-size:0.875rem;line-height:1.5}
.prop-letter-content{font-size:0.9375rem;line-height:1.7;color:var(--text)}

/* ============================================================================
   VALIDATION PANEL STYLES
   ============================================================================ */
.validation-panel{background:var(--bg);border:1px solid var(--border);border-radius:8px;margin:0.5rem;overflow:hidden}
.validation-panel.collapsed .val-body{display:none}
.val-header{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0.75rem;background:var(--bg2);cursor:pointer}
.val-header:hover{background:var(--accent-dim)}
.val-title{font-weight:600;font-size:0.75rem;color:var(--text)}
.val-score{font-size:0.6875rem;font-weight:700;padding:0.125rem 0.375rem;border-radius:4px}
.val-score.good{background:rgba(16,185,129,0.15);color:#10b981}
.val-score.ok{background:rgba(245,158,11,0.15);color:#f59e0b}
.val-score.poor{background:rgba(239,68,68,0.15);color:#ef4444}
.val-close{margin-left:auto;background:none;border:none;font-size:1.25rem;cursor:pointer;color:var(--text3);line-height:1}
.val-close:hover{color:var(--text)}
.val-body{padding:0.75rem 1rem}
.val-section-title{font-size:0.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;margin-bottom:0.5rem;color:var(--text3)}
.val-errors,.val-warnings{margin-bottom:0.75rem}
.val-item{font-size:0.75rem;padding:0.375rem 0.5rem;border-radius:4px;margin-bottom:0.25rem}
.val-item.error{background:rgba(239,68,68,0.1);color:#ef4444}
.val-item.warning{background:rgba(245,158,11,0.1);color:#f59e0b}
.val-summary{font-size:0.6875rem;color:var(--text3);padding-top:0.5rem;border-top:1px solid var(--border)}

/* ============================================================================
   PROFILE PANEL - Your Business Identity
   ============================================================================ */
.profile-panel{background:var(--bg);border:1px solid var(--border);border-radius:12px;margin:0.75rem 1rem;overflow:hidden;transition:all 0.3s ease}
.profile-panel.collapsed .profile-body{display:none}
.profile-panel.collapsed .profile-toggle{transform:rotate(-90deg)}
.profile-header{display:flex;align-items:center;justify-content:space-between;padding:0.875rem 1.25rem;background:linear-gradient(135deg,var(--bg2),var(--bg));cursor:pointer;border-bottom:1px solid var(--border)}
.profile-panel.collapsed .profile-header{border-bottom:none}
.profile-header:hover{background:var(--accent-dim)}
.profile-header-left{display:flex;align-items:center;gap:0.75rem}
.profile-icon{font-size:1.25rem}
.profile-title{font-size:0.9375rem;font-weight:700;color:var(--text)}
.profile-subtitle{font-size:0.75rem;color:var(--text3)}
.profile-header-right{display:flex;align-items:center;gap:1rem}
.profile-completeness{display:flex;align-items:center;gap:0.5rem}
.profile-completeness-bar{width:80px;height:6px;background:var(--bg2);border-radius:3px;overflow:hidden}
.profile-completeness-fill{height:100%;background:linear-gradient(90deg,#f59e0b,#10b981);border-radius:3px;transition:width 0.3s ease}
.profile-completeness-text{font-size:0.6875rem;font-weight:600;color:var(--text3)}
.profile-toggle{font-size:0.75rem;color:var(--text3);transition:transform 0.2s}

.profile-body{padding:1rem 1.25rem}
.profile-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0.75rem}
.profile-card{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:1rem;cursor:pointer;transition:all 0.15s}
.profile-card:hover{border-color:var(--accent);background:var(--accent-dim);transform:translateY(-1px)}
.profile-card-header{display:flex;align-items:center;gap:0.5rem;margin-bottom:0.5rem}
.profile-card-icon{font-size:1rem}
.profile-card-title{font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--text3)}
.profile-card-content{font-size:0.875rem;color:var(--text);line-height:1.4;min-height:2.5rem}
.profile-card-content.empty{color:var(--text3);font-style:italic}
.profile-card-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.profile-card-edit{font-size:0.6875rem;color:var(--accent);margin-top:0.5rem;opacity:0;transition:opacity 0.15s}
.profile-card:hover .profile-card-edit{opacity:1}

.profile-setup-prompt{display:flex;align-items:center;justify-content:space-between;padding:0.75rem 1rem;background:linear-gradient(135deg,rgba(212,168,83,0.1),rgba(212,168,83,0.05));border:1px dashed rgba(212,168,83,0.3);border-radius:8px;margin-top:0.75rem}
.profile-setup-text{font-size:0.8125rem;color:var(--text)}
.profile-setup-text strong{color:var(--accent)}
.profile-setup-btn{padding:0.5rem 1rem;background:var(--accent);color:var(--accent-text);border:none;border-radius:6px;font-size:0.75rem;font-weight:700;cursor:pointer;transition:all 0.15s}
.profile-setup-btn:hover{filter:brightness(1.1)}

/* Profile Edit Modal */
.profile-modal{position:fixed;inset:0;background:rgba(0,0,0,0.6);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;visibility:hidden;transition:all 0.2s}
.profile-modal.show{opacity:1;visibility:visible}
.profile-modal-content{background:var(--bg);border-radius:16px;width:90%;max-width:600px;max-height:85vh;overflow:hidden;transform:translateY(20px);transition:transform 0.2s}
.profile-modal.show .profile-modal-content{transform:translateY(0)}
.profile-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#1e293b,#0f172a);color:white}
.profile-modal-title{font-size:1.125rem;font-weight:700}
.profile-modal-close{background:none;border:none;color:rgba(255,255,255,0.7);font-size:1.5rem;cursor:pointer;line-height:1}
.profile-modal-close:hover{color:white}
.profile-modal-body{padding:1.5rem;max-height:60vh;overflow-y:auto}
.profile-field{margin-bottom:1.25rem}
.profile-field:last-child{margin-bottom:0}
.profile-field-label{display:block;font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--text3);margin-bottom:0.5rem}
.profile-field-hint{font-size:0.6875rem;color:var(--text3);margin-top:0.25rem}
.profile-field input,.profile-field textarea,.profile-field select{width:100%;padding:0.75rem 1rem;background:var(--bg2);border:1px solid var(--border);border-radius:8px;font-size:0.9375rem;color:var(--text);font-family:inherit}
.profile-field input:focus,.profile-field textarea:focus,.profile-field select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}
.profile-field textarea{min-height:80px;resize:vertical}
.profile-modal-footer{display:flex;justify-content:flex-end;gap:0.75rem;padding:1rem 1.5rem;background:var(--bg2);border-top:1px solid var(--border)}
.profile-modal-btn{padding:0.625rem 1.25rem;border-radius:8px;font-size:0.875rem;font-weight:600;cursor:pointer;transition:all 0.15s}
.profile-modal-btn.secondary{background:transparent;border:1px solid var(--border);color:var(--text)}
.profile-modal-btn.secondary:hover{background:var(--bg);border-color:var(--text3)}
.profile-modal-btn.primary{background:var(--accent);border:1px solid var(--accent);color:var(--accent-text)}
.profile-modal-btn.primary:hover{filter:brightness(1.1)}

/* Profile Quick Setup Wizard */
.profile-wizard{padding:1.5rem}
.profile-wizard-step{display:none}
.profile-wizard-step.active{display:block}
.profile-wizard-question{font-size:1.125rem;font-weight:600;color:var(--text);margin-bottom:0.5rem}
.profile-wizard-subtext{font-size:0.875rem;color:var(--text3);margin-bottom:1.25rem}
.profile-wizard-input{width:100%;padding:1rem;background:var(--bg2);border:2px solid var(--border);border-radius:10px;font-size:1rem;color:var(--text);font-family:inherit;transition:all 0.15s}
.profile-wizard-input:focus{outline:none;border-color:var(--accent)}
.profile-wizard-input::placeholder{color:var(--text3)}
.profile-wizard-nav{display:flex;justify-content:space-between;margin-top:1.5rem}
.profile-wizard-dots{display:flex;gap:0.5rem;align-items:center}
.profile-wizard-dot{width:8px;height:8px;border-radius:50%;background:var(--border)}
.profile-wizard-dot.active{background:var(--accent);width:24px;border-radius:4px}
.profile-wizard-dot.completed{background:var(--accent)}

/* Tone multi-select */
.profile-tone-options{display:flex;flex-wrap:wrap;gap:0.5rem}
.profile-tone-option{padding:0.5rem 0.875rem;background:var(--bg2);border:1px solid var(--border);border-radius:20px;font-size:0.8125rem;cursor:pointer;transition:all 0.15s}
.profile-tone-option:hover{border-color:var(--accent)}
.profile-tone-option.selected{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}

/* Profile Analysis Popup - Shows during analysis */
.profile-analysis-popup{position:fixed;inset:0;background:rgba(0,0,0,0.6);display:flex;align-items:center;justify-content:center;z-index:10001;opacity:0;visibility:hidden;transition:all 0.2s}
.profile-analysis-popup.show{opacity:1;visibility:visible}
.profile-analysis-content{background:var(--bg);border-radius:16px;width:90%;max-width:480px;overflow:hidden;transform:translateY(20px);transition:transform 0.2s;box-shadow:0 25px 50px -12px rgba(0,0,0,0.25)}
.profile-analysis-popup.show .profile-analysis-content{transform:translateY(0)}
.profile-analysis-header{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,rgba(212,168,83,0.15),rgba(212,168,83,0.05));border-bottom:1px solid var(--border)}
.profile-analysis-icon{font-size:2rem}
.profile-analysis-header h3{font-size:1.125rem;font-weight:700;color:var(--text);margin:0}
.profile-analysis-header p{font-size:0.8125rem;color:var(--text3);margin:0}
.profile-analysis-close{margin-left:auto;background:none;border:none;font-size:1.5rem;color:var(--text3);cursor:pointer;line-height:1}
.profile-analysis-close:hover{color:var(--text)}
.profile-analysis-body{padding:1.5rem}
.profile-quick-field{margin-bottom:1rem}
.profile-quick-field:last-child{margin-bottom:0}
.profile-quick-field label{display:block;font-size:0.75rem;font-weight:600;color:var(--text3);margin-bottom:0.375rem;text-transform:uppercase;letter-spacing:0.5px}
.profile-quick-field input{width:100%;padding:0.75rem 1rem;background:var(--bg2);border:1px solid var(--border);border-radius:8px;font-size:0.9375rem;color:var(--text);font-family:inherit;transition:all 0.15s}
.profile-quick-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}
.profile-quick-field input::placeholder{color:var(--text3)}
.profile-analysis-footer{display:flex;justify-content:space-between;padding:1rem 1.5rem;background:var(--bg2);border-top:1px solid var(--border)}
.profile-analysis-skip{padding:0.625rem 1rem;background:transparent;border:none;color:var(--text3);font-size:0.875rem;cursor:pointer;transition:color 0.15s}
.profile-analysis-skip:hover{color:var(--text)}
.profile-analysis-save{padding:0.625rem 1.25rem;background:var(--accent);border:none;border-radius:8px;color:var(--accent-text);font-size:0.875rem;font-weight:600;cursor:pointer;transition:all 0.15s}
.profile-analysis-save:hover{filter:brightness(1.1)}
