/* public/assets/css/seo/spider-ip-defender.css */

.spider-def-wrapper { padding: 32px 16px; position: relative; }
.spider-def-header { text-align: center; margin-bottom: 32px; }
.spider-def-title { font-size: 2.2rem; font-weight: 800; color: var(--text-main); margin-bottom: 12px; }
.spider-def-subtitle { font-size: 1.05rem; color: var(--text-muted); max-width: 700px; margin: 0 auto; line-height: 1.6; }

.spider-def-workspace { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 400px 1fr; gap: 32px; align-items: start; }

/* 左侧控制区 */
.spider-def-controls, .spider-def-preview { background: var(--bg-surface); border: 1px solid var(--border-color); border-radius: 16px; padding: 24px; box-shadow: 0 4px 15px rgba(0,0,0,0.03); }
.control-section h2 { margin: 0 0 16px 0; font-size: 1rem; color: var(--text-main); border-bottom: 2px solid rgba(59, 130, 246, 0.2); padding-bottom: 8px; display: inline-block; font-weight: 700; }

.hacker-input { width: 100%; padding: 14px 16px; border: 2px solid var(--border-color); border-radius: 8px; background: var(--bg-body); color: var(--text-main); font-family: 'Courier New', Courier, monospace; font-size: 1.05rem; box-sizing: border-box; outline: none; transition: 0.2s; font-weight: 700; }
.hacker-input:focus { border-color: #3b82f6; box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.1); }

.spider-def-btn-primary { background: #3b82f6; color: #fff; border: none; padding: 14px 20px; font-size: 1.05rem; font-weight: 800; border-radius: 12px; cursor: pointer; transition: 0.2s; box-shadow: 0 4px 10px rgba(59, 130, 246, 0.3); width: 100%; }
.spider-def-btn-primary:hover { background: #2563eb; transform: translateY(-2px); }

/* 鉴定结果框 */
.result-box { margin-top: 24px; padding: 20px; border-radius: 12px; text-align: center; border: 2px solid transparent; animation: popIn 0.3s ease-out; }
@keyframes popIn { 0% { opacity: 0; transform: scale(0.95); } 100% { opacity: 1; transform: scale(1); } }

.res-success { background: rgba(16, 185, 129, 0.1); border-color: #10b981; }
.res-danger { background: rgba(239, 68, 68, 0.1); border-color: #ef4444; }

.result-icon { font-size: 3rem; margin-bottom: 8px; }
.result-message { font-size: 1.1rem; font-weight: 800; color: var(--text-main); }
.result-detail { font-size: 0.85rem; color: var(--text-muted); margin-top: 8px; font-family: monospace; }
.res-success .result-message { color: #059669; }
.res-danger .result-message { color: #e11d48; }
[data-theme="dark"] .res-success .result-message { color: #34d399; }
[data-theme="dark"] .res-danger .result-message { color: #f87171; }

.tips-box { background: rgba(59, 130, 246, 0.05); border: 1px solid rgba(59, 130, 246, 0.15); border-radius: 8px; padding: 12px; font-size: 0.85rem; color: #1d4ed8; line-height: 1.5; }
[data-theme="dark"] .tips-box { color: #60a5fa; background: rgba(96, 165, 250, 0.05); }

/* 右侧代码生成区 */
.export-actions { display: flex; gap: 12px; }
.spider-def-btn-secondary { flex: 1; background: var(--bg-body); color: var(--text-main); border: 1px solid var(--border-color); padding: 10px 16px; font-weight: 700; border-radius: 8px; cursor: pointer; transition: 0.2s; }
.spider-def-btn-secondary:hover { border-color: #3b82f6; }
.spider-def-btn-secondary.active { background: #3b82f6; color: #fff; border-color: #3b82f6; }

.spider-def-btn-success { background: #10b981; color: #fff; border: none; padding: 8px 16px; font-weight: 700; border-radius: 6px; cursor: pointer; transition: 0.2s; }
.spider-def-btn-success:hover { background: #059669; }

.pdf-render-box { background: #0f172a; border-radius: 12px; box-shadow: 0 10px 30px rgba(0,0,0,0.15); overflow: hidden; display: flex; flex-direction: column; height: 500px; border: 1px solid #1e293b; }
.editor-header { background: #1e293b; padding: 12px 16px; display: flex; align-items: center; border-bottom: 1px solid #334155; }
.editor-dot { width: 12px; height: 12px; border-radius: 50%; margin-right: 8px; }
.dot-red { background: #ef4444; }
.dot-yellow { background: #f59e0b; }
.dot-green { background: #10b981; }
.editor-title { color: #94a3b8; font-size: 0.85rem; font-family: monospace; margin-left: auto; margin-right: auto; }

.markdown-textarea { flex: 1; width: 100%; background: #0f172a; color: #34d399; font-family: 'Consolas', 'Courier New', Courier, monospace; font-size: 0.9rem; line-height: 1.5; padding: 20px; border: none; resize: none; outline: none; box-sizing: border-box; }
.markdown-textarea::-webkit-scrollbar { width: 10px; }
.markdown-textarea::-webkit-scrollbar-thumb { background: #334155; border-radius: 5px; }

.editor-footer { background: #1e293b; padding: 12px 20px; display: flex; justify-content: flex-end; border-top: 1px solid #334155; }

@media (max-width: 900px) {
    .spider-def-workspace { grid-template-columns: 1fr; }
}