/* Base */
.wrap { max-width:100%; font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
.version-tag { font-size:12px; font-weight:normal; color:#94a3b8; }

/* Strategy Box */
.strategy-box { background:#fff; border:1px solid #ccd0d4; padding:15px 20px; margin-bottom:20px; border-radius:8px; display:flex; align-items:center; gap:0 20px; flex-wrap:wrap; box-shadow:0 2px 4px rgba(0,0,0,0.05); }
.mode-selector-wrap { display:flex; flex-direction:column; gap:4px; }
.mode-label { font-size:11px; color:#64748b; font-weight:bold; }
.mode-select { min-width:180px; }
.mode-description { color:#64748b; line-height:1.45; align-self:flex-end; }
.bulk-actions-wrap { flex-grow:1; text-align:right; }
.bulk-actions-wrap .button.delete-analysis { background-color:#ef4444 !important; color:#ffffff !important; border:none !important; }
.strategy-box .button.button-primary { background:#3858e9; border-color:#3858e9; margin:0 12px 0 0; }
.strategy-box .button.button-primary:hover { background:#2f48c7; border-color:#2f48c7; }
.strategy-box .button.delete-analysis { background:#ef4444; border-color:#ef4444; color:#fff; }
.strategy-box .button.delete-analysis:hover { background:#dc2626; border-color:#dc2626; }
.strategy-box .ai-notice-wrap { margin-top:8px; width: 100%; }
.strategy-box .ai-notice-text { margin:0; font-size:11px; line-height:1.6; color:#64748b; }
.strategy-box .ai-notice-text::before { content:"※"; margin:0 3px 0 0; }

/* Pagination */
.custom-seo-pager { display:inline-flex !important; gap:4px; align-items:center; }
.custom-seo-pager a, .custom-seo-pager span { display:inline-block; padding:4px 10px; min-width:28px; text-align:center; border-radius:4px; background:#fff; border:1px solid #ccd0d4; text-decoration:none; color:#2c3338; font-size:13px; }
.custom-seo-pager .current { background:#3858e9; color:#fff; border-color:#3858e9; font-weight:600; }

/* Table General */
.wp-list-table { border:none !important; box-shadow:0 1px 3px rgba(0,0,0,0.1); border-radius:8px; overflow:hidden; }
.wp-list-table thead th { background:#f8fafc; padding:12px; font-weight:700; color:#475569; }
.col-id { color:#94a3b8; font-size:11px; }
.is-pending-msg { color:#94a3b8; font-size:13px; padding:12px; border:1px dashed #cbd5e1; background:#f8fafc; border-radius:6px; text-align:center; }
.parse-error-bg { background:#fff1f2; color:#e11d48; border:1px solid #fecaca; border-radius:6px; text-align:left; }

/* Current Title / Description Area */
.current-title-flex { display:flex; align-items:flex-start; gap:12px; padding:0; }
.char-count-badge { display:inline-block; flex-shrink:0; font-size:10px; padding:2px 8px; background:#f1f5f9; color:#64748b; border-radius:4px; font-weight:600; white-space:nowrap; }
.char-count-badge.warn { background:#fee2e2; color:#ef4444; }
.char-count-badge.sm-badge { font-size:9px; }
.title-text { font-size:13px; line-height:1.5; color:#1e293b; font-weight:500; }

/* AI Suggestions */
.suggestion-list { display:flex; flex-direction:column; gap:8px; }
.ai-suggestion-card { background:#f8fafc; border:1px solid #e2e8f0; padding:10px 12px; border-radius:6px; display:flex; align-items:center; justify-content:space-between; gap:15px; }
.ai-card-content { display:flex; flex-direction:column; gap:6px; flex-grow:1; min-width:0; width:100%; }
.ai-card-meta { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.ai-num-badge { background:#e2e8f0; color:#475569; font-size:10px; font-weight:800; padding:2px 6px; border-radius:4px; white-space:nowrap; }
.ai-score-label { font-size:10px; font-weight:800; padding:2px 6px; border-radius:4px; border:1px solid transparent; white-space:nowrap; }
.score-high { background:#dcfce7; color:#166534; border-color:#bbf7d0; }
.score-mid { background:#fef9c3; color:#854d0e; border-color:#fef08a; }
.score-low { background:#f1f5f9; color:#475569; border-color:#e2e8f0; }
.ai-title-display { font-size:13px; font-weight:600; color:#0f172a; line-height:1.4; word-break:break-word; width:100%; }
.apply-btn { background:#3858e9 !important; color:#fff !important; border:none !important; padding:8px 16px !important; border-radius:4px !important; font-size:11px !important; cursor:pointer; font-weight:400; white-space:nowrap !important; min-width:60px; text-align:center; flex-shrink:0; }

/* Actions Column */
.col-actions { text-align:center !important; vertical-align:top !important; padding-top:12px !important; }
.action-stack { display:inline-flex; flex-direction:column; gap:6px; width:64px; margin:0 auto; align-items:center; }
.action-stack .button { font-size:11px !important; height:26px !important; line-height:24px !important; text-align:center; padding:0 4px !important; min-width:0 !important; width:100% !important; box-sizing:border-box !important; display:inline-flex !important; align-items:center; justify-content:center; margin:0 !important; }
.action-stack .button.run-single-f03 { background-color:#3858e9 !important; color:#ffffff !important; border:none !important; }
.action-stack .button.delete-analysis-f03 { background-color:#ef4444 !important; color:#ffffff !important; border:none !important; }
.ui-locked { opacity:0.5; pointer-events:none; cursor:not-allowed; }

/* Modal Styles */
.hidden-modal-content { display:none; }
.modal-wrap { padding:25px; color:#1e293b; line-height:1.6; }
.modal-header { margin-top:0; border-bottom:1px solid #e2e8f0; padding-bottom:10px; }
.modal-header-id { font-weight:normal; color:#64748b; }
.modal-grid-top { display:flex; gap:15px; margin-bottom:15px; }
.modal-section { margin-bottom:15px; padding:15px; border-radius:8px; border:1px solid #e2e8f0; background:#fff; }
.modal-label { font-weight:800; font-size:11px; color:#64748b; text-transform:uppercase; display:block; margin-bottom:8px; border-bottom:1px solid #f1f5f9; padding-bottom:4px; }
.modal-intent { flex:1; background:#f5f3ff; border-color:#ddd6fe; }
.modal-diag { flex:2; background:#f0f9ff; border-color:#bae6fd; }
.modal-table-fixed { width:100%; border-collapse:collapse; table-layout:fixed; }
.modal-th-num { width:60px; text-align:left; vertical-align:top; padding:10px 0; color:#64748b; font-size:12px; border-bottom:1px solid #f1f5f9; }
.modal-table-fixed td { padding:10px 0; border-bottom:solid 1px #f1f5f9; }
.modal-suggest-title { font-weight:700; color:#0f172a; margin-bottom:4px; font-size:14px; }
.modal-suggest-reason { font-size:12px; color:#475569; line-height:1.5; }
.raw-pre { background:#1e293b !important; color:#e2e8f0 !important; padding:15px !important; border-radius:6px !important; font-size:12px !important; font-family:'Consolas', monospace !important; white-space:pre-wrap !important; word-break:break-all !important; max-height:250px; overflow-y:auto; margin:0 !important; }

/* F03 Special */
.col-current .title-text { font-size:12px; line-height:1.6; color:#475569; max-height:4.8em; overflow:hidden; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; }
.ai-title-textarea { font-family:inherit; line-height:1.5; color:#1e293b; border-color:#cbd5e1 !important; border-radius:4px; padding:8px !important; width:100%; min-height:80px; resize:vertical; box-sizing:border-box; display:block; }
.apply-btn-desc { background:#3858e9 !important; color:#fff !important; border:none !important; padding:8px 16px !important; border-radius:4px !important; font-size:11px !important; cursor:pointer; font-weight:400; white-space:nowrap !important; min-width:60px; text-align:center; }
.type-badge { background:#f0f5ff; color:#5c79ff; padding:2px 8px; border-radius:4px; font-size:11px; font-weight:600; border:1px solid #dbe4ff; display:inline-block; }
.f03-current-block { margin-bottom:12px; }
.f03-current-head { display:flex; align-items:center; gap:8px; margin-bottom:4px; }
.f03-current-label { font-size:10px; font-weight:bold; color:#94a3b8; text-transform:uppercase; }
.f03-title-count { background:#f1f5f9; color:#475569; }
.f03-title-text { font-weight:600; font-size:13px; color:#1e293b; line-height:1.4; }
.f03-current-separator { height:1px; background:#f1f5f9; margin:10px 0; }
.f03-empty-count { background:#f1f5f9; color:#94a3b8; }
.f03-desc-text { font-size:12px; color:#64748b; line-height:1.5; }
.f03-empty-text { color:#94a3b8; }
.f03-edit-link-wrap { margin:8px 0; }
.f03-edit-link { font-weight:600; color:#3858e9; text-decoration:underline; }
.ai-desc-textarea { width:100%; min-height:96px; font-size: 13px; resize:vertical; }
.f03-modal-suggest-title { font-size:13px; margin-bottom:5px; }
.f03-modal-suggest-reason { color:#666; font-size:11px; }