.dseo-settings { max-width: 900px; margin: 20px 0; }
.dseo-settings .dseo-header { display: flex; align-items: center; gap: 16px; margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid #e0e0e0; }
.dseo-settings .dseo-header h1 { margin: 0; font-size: 24px; font-weight: 600; color: #1d2327; }
.dseo-settings .dseo-header .dseo-version { background: #f0f6fc; color: #2271b1; padding: 3px 10px; border-radius: 3px; font-size: 12px; font-weight: 500; }

/* Tabbed nav */
.dseo-settings-tabs { display: flex; flex-wrap: wrap; gap: 0; border-bottom: 2px solid #2271b1; margin-bottom: 0; background: #f6f7f7; border-radius: 4px 4px 0 0; padding: 0 4px; }
.dseo-settings-tab { padding: 11px 18px; cursor: pointer; font-size: 13px; font-weight: 500; color: #50575e; border: 1px solid transparent; border-bottom: none; border-radius: 4px 4px 0 0; margin-bottom: -2px; transition: all 0.15s ease; background: transparent; display: flex; align-items: center; gap: 7px; user-select: none; }
.dseo-settings-tab:hover { color: #1d2327; background: rgba(0,0,0,0.04); }
.dseo-settings-tab.active { background: #fff; color: #1d2327; font-weight: 600; border-color: #c3c4c7 #c3c4c7 #fff; }
.dseo-settings-tab .dashicons { font-size: 16px; width: 16px; height: 16px; opacity: 0.65; }
.dseo-settings-tab.active .dashicons { opacity: 1; }

/* Tab panels */
.dseo-settings-panel { display: none; border: 1px solid #c3c4c7; border-top: none; border-radius: 0 0 4px 4px; padding: 24px 28px; }
.dseo-settings-panel.active { display: block; }
.dseo-settings-panel h2 { font-size: 16px; font-weight: 600; color: #1d2327; margin: 0 0 4px; }
.dseo-settings-panel > p.description:first-of-type { margin-top: 0; margin-bottom: 20px; color: #757575; }

/* Panel tints */
[data-spanel="identity"] { background: #f0f6fc; }
[data-spanel="social"]   { background: #fef0f5; }
[data-spanel="titles"]   { background: #fef8ee; }
[data-spanel="schema"]   { background: #eef7f0; }
[data-spanel="llms"]     { background: #f3f0ff; }
[data-spanel="llmsfull"] { background: #f0f0ff; }
[data-spanel="crawlers"] { background: #f0f4f7; }
.dseo-settings-panel .form-table { margin-top: 12px; }
.dseo-settings-panel .form-table th { font-weight: 500; color: #1d2327; padding: 16px 10px 16px 0; width: 220px; }
.dseo-settings-panel .form-table td { padding: 12px 10px; }
.dseo-settings-panel .form-table input.regular-text { max-width: 100%; }
.dseo-settings-panel .form-table textarea { width: 100%; }
.dseo-settings-panel .form-table .description { margin-top: 4px; }

/* Submit area */
.dseo-settings .dseo-submit { background: #fff; border: 1px solid #c3c4c7; border-top: none; border-radius: 0 0 4px 4px; padding: 16px 28px; margin-top: -1px; }

/* Section dividers within panels */
.dseo-panel-section { border-top: 1px solid #f0f0f1; margin-top: 16px; padding-top: 16px; }
.dseo-panel-section:first-child { border-top: 0; margin-top: 0; padding-top: 0; }

/* Crawler table */
.dseo-crawler-table { width: 100%; border-collapse: collapse; margin-top: 12px; }
.dseo-crawler-table th { text-align: left; font-weight: 500; padding: 10px 12px; border-bottom: 2px solid #e0e0e0; font-size: 12px; text-transform: uppercase; letter-spacing: 0.5px; color: #757575; }
.dseo-crawler-table td { padding: 10px 12px; border-bottom: 1px solid #f0f0f1; }
.dseo-crawler-table tr:hover td { background: #f9f9f9; }
.dseo-crawler-table .crawler-name { font-weight: 500; color: #1d2327; }
.dseo-crawler-table .crawler-desc { color: #757575; font-size: 12px; }
.dseo-crawler-table select { padding: 6px 32px 6px 10px; border-radius: 4px; min-width: 100px; font-size: 13px; appearance: none; -webkit-appearance: none; background: #fff url('data:image/svg+xml;charset=US-ASCII,<svg width="20" height="20" xmlns="http://www.w3.org/2000/svg"><path d="M5 6l5 5 5-5" fill="none" stroke="%23646970" stroke-width="1.5"/></svg>') no-repeat right 8px center; background-size: 14px; border: 1px solid #c3c4c7; cursor: pointer; }
.dseo-crawler-table select:focus { border-color: #2271b1; box-shadow: 0 0 0 1px #2271b1; outline: none; }

/* Endpoints info */
.dseo-endpoints { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; margin-top: 16px; }
.dseo-endpoint { background: #f6f7f7; border: 1px solid #e0e0e0; border-radius: 4px; padding: 12px 16px; }
.dseo-endpoint-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.5px; color: #757575; margin-bottom: 4px; }
.dseo-endpoint-url { font-family: monospace; font-size: 13px; color: #2271b1; word-break: break-all; }
@media (max-width: 782px) { .dseo-endpoints { grid-template-columns: 1fr; } }

/* AI CTA button */
.dseo-ai-btn { display: inline-flex; align-items: center; gap: 6px; padding: 8px 16px; background: linear-gradient(135deg, #7e5cef 0%, #5b3dc7 100%); color: #fff !important; border: none; border-radius: 6px; font-size: 13px; font-weight: 500; cursor: pointer; transition: all 0.2s ease; text-decoration: none !important; box-shadow: 0 2px 8px rgba(126,92,239,0.3); }
.dseo-ai-btn:hover { background: linear-gradient(135deg, #9171f5 0%, #6b4dd7 100%); box-shadow: 0 4px 12px rgba(126,92,239,0.4); transform: translateY(-1px); }
.dseo-ai-btn .dashicons { font-size: 16px; width: 16px; height: 16px; }
.dseo-ai-btn-sm { padding: 5px 12px; font-size: 12px; box-shadow: 0 1px 4px rgba(126,92,239,0.25); }

/* AI Modal */
.dseo-ai-modal-overlay { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.6); z-index: 100000; align-items: center; justify-content: center; }
.dseo-ai-modal-overlay.active { display: flex; }
.dseo-ai-modal { background: #fff; border-radius: 12px; max-width: 520px; width: 90%; padding: 0; box-shadow: 0 20px 60px rgba(0,0,0,0.3); overflow: hidden; animation: dseoModalIn 0.25s ease; }
@keyframes dseoModalIn { from { opacity: 0; transform: scale(0.95) translateY(10px); } to { opacity: 1; transform: scale(1) translateY(0); } }
@keyframes dseo-bounce { 0%, 80%, 100% { transform: scale(0); } 40% { transform: scale(1); } }
.dseo-ai-modal-header { background: linear-gradient(135deg, #7e5cef 0%, #5b3dc7 100%); padding:  30px 24px; color: #fff; }
.dseo-ai-modal-header h3 { margin: 0 0 6px; font-size: 18px; font-weight: 600; color: #fff; }
.dseo-ai-modal-header h3 .dashicons { color: #fff; }
.dseo-ai-modal-header p { margin: 0; font-size: 14px; opacity: 0.9; }
.dseo-ai-modal-body { padding: 28px; }
.dseo-ai-modal-body p { margin: 0 0 14px; font-size: 14px; line-height: 1.7; color: #1d2327; }
.dseo-ai-modal-body p:last-child { margin-bottom: 0; }
.dseo-ai-modal-body ul { margin: 0 0 18px; padding-left: 22px; list-style: none; }
.dseo-ai-modal-body li { font-size: 14px; line-height: 1.8; color: #1d2327; }
.dseo-ai-modal-body li::before { content: '\2713\0020'; color: #7e5cef; font-weight: 700; }
.dseo-ai-modal-body a { color: #7e5cef; font-weight: 600; text-decoration: none; }
.dseo-ai-modal-body a:hover { text-decoration: underline; }
.dseo-ai-modal-footer { padding: 0 28px 24px; display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.dseo-ai-modal-cta { display: inline-flex; align-items: center; gap: 6px; padding: 10px 24px; background: linear-gradient(135deg, #7e5cef 0%, #5b3dc7 100%); color: #fff !important; border: none; border-radius: 6px; font-size: 14px; font-weight: 600; text-decoration: none !important; cursor: pointer; transition: all 0.2s ease; }
.dseo-ai-modal-cta:hover { background: linear-gradient(135deg, #9171f5 0%, #6b4dd7 100%); }
.dseo-ai-modal-close { padding: 10px 20px; background: #f0f0f1; color: #50575e; border: none; border-radius: 6px; font-size: 14px; cursor: pointer; }
.dseo-ai-modal-close:hover { background: #e0e0e0; }
