.geo-page { display: grid; gap: 20px; min-width: 0; color: #16233b; }
.geo-hero { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 18px; align-items: center; padding: 28px 30px; border: 1px solid #dbe6f7; border-radius: 24px; background: radial-gradient(circle at 92% 12%, rgba(56, 189, 248, .13), transparent 30%), linear-gradient(135deg, #fff 0%, #f6f9ff 100%); box-shadow: 0 12px 32px rgba(46, 82, 151, .08); }
.geo-brand-icon { display: grid; width: 60px; height: 60px; place-items: center; border-radius: 18px; background: linear-gradient(145deg, #245ee8, #35b7ec); color: #fff; font: 800 30px/1 system-ui; box-shadow: 0 12px 24px rgba(38, 101, 224, .2); }
.geo-eyebrow, .geo-section-kicker { color: #3472df; font-size: 11px; font-weight: 800; letter-spacing: .13em; }
.geo-hero h2 { margin: 5px 0 6px; color: #142038; font-size: clamp(24px, 2.1vw, 34px); }
.geo-hero p { margin: 0; color: #68758d; line-height: 1.65; }
.geo-enterprise-picker { display: grid; min-width: 180px; gap: 4px; justify-items: end; }
.geo-enterprise-picker > span { color: #8994a8; font-size: 12px; }
.geo-enterprise-picker > strong { max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.geo-link-btn { padding: 0; border: 0; background: transparent; color: #2966d9; cursor: pointer; font-weight: 700; }
.geo-metrics, .geo-mini-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.geo-metric { position: relative; min-width: 0; padding: 20px; overflow: hidden; border: 1px solid #e0e8f5; border-radius: 18px; background: #fff; box-shadow: 0 8px 24px rgba(54, 82, 132, .06); }
.geo-metric::after { position: absolute; inset: 0 auto 0 0; width: 4px; content: ""; background: #3478e5; }
.geo-metric.cyan::after { background: #19a9ce; }.geo-metric.violet::after { background: #8a63e8; }.geo-metric.green::after { background: #28a46a; }
.geo-metric > span { color: #6d7890; font-size: 13px; }.geo-metric > strong { display: block; margin: 8px 0 4px; font-size: 28px; }.geo-metric > small { color: #98a1b2; line-height: 1.45; }
.geo-two-column { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr); gap: 20px; }
.geo-card { min-width: 0; padding: 24px; border: 1px solid #dfe7f3; border-radius: 20px; background: #fff; box-shadow: 0 10px 28px rgba(48, 80, 139, .06); }
.geo-card > header { display: flex; gap: 16px; align-items: flex-start; justify-content: space-between; margin-bottom: 20px; }
.geo-card > header h3 { margin: 5px 0 0; font-size: 20px; }.geo-card > header p { margin: 5px 0 0; color: #7b879d; }
.geo-actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.geo-help { color: #7b879c; font-size: 12px; line-height: 1.5; }
.geo-engine-list { display: flex; flex-wrap: wrap; gap: 10px; }
.geo-engine-chip { display: grid; grid-template-columns: 8px auto; column-gap: 8px; align-items: center; padding: 10px 12px; border: 1px solid #e1e7f1; border-radius: 12px; background: #fafcff; }
.geo-engine-chip i { grid-row: 1 / 3; width: 8px; height: 8px; border-radius: 50%; background: #b9c2d0; }.geo-engine-chip.ready i { background: #2bb673; }.geo-engine-chip.observe i { background: #4d7cf3; }.geo-engine-chip b { font-size: 13px; }.geo-engine-chip small { color: #8994a7; }
.geo-progress-list { display: grid; gap: 18px; }.geo-progress-list > div > span { display: flex; justify-content: space-between; margin-bottom: 8px; }.geo-progress-list em { color: #6d7890; font-style: normal; }.geo-progress-list i { display: block; height: 8px; overflow: hidden; border-radius: 10px; background: #edf1f7; }.geo-progress-list u { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2767e9, #35bbe9); }
.geo-record-list, .geo-source-list { display: grid; gap: 10px; }.geo-record-list article, .geo-source-list article { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 18px; align-items: center; padding: 14px 0; border-bottom: 1px solid #edf1f6; }.geo-record-list article:last-child, .geo-source-list article:last-child { border-bottom: 0; }.geo-record-list p { margin: 4px 0 0; color: #7b879b; }.geo-record-list time { color: #8b96a9; font-size: 12px; }
.geo-status { display: inline-flex; align-items: center; width: max-content; padding: 4px 9px; border-radius: 999px; background: #eef3fb; color: #52627d; font-size: 11px; font-weight: 700; white-space: nowrap; }.geo-status.enabled, .geo-status.completed, .geo-status.verified, .geo-status.published { background: #e7f8ef; color: #237b4e; }.geo-status.running, .geo-status.active { background: #e8f2ff; color: #245fc4; }.geo-status.failed, .geo-status.disabled { background: #fff0f0; color: #b23b42; }.geo-status.draft, .geo-status.pending, .geo-status.completed_with_gaps, .geo-status.publish_pending_verification { background: #fff5df; color: #946211; }
.geo-toolbar-card { padding: 16px 20px; }.geo-toolbar { display: flex; flex-wrap: wrap; gap: 12px; align-items: end; }.geo-toolbar label { display: grid; min-width: 190px; gap: 6px; color: #68758b; font-size: 12px; }.geo-toolbar label.geo-search { flex: 1 1 300px; }.geo-toolbar input, .geo-toolbar select { min-height: 42px; padding: 0 12px; border: 1px solid #dbe3ef; border-radius: 11px; background: #fbfcff; color: #17233b; }
.geo-question-list { display: grid; gap: 10px; }.geo-question-row { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto auto; gap: 14px; align-items: center; padding: 16px; border: 1px solid #e5eaf2; border-radius: 14px; background: #fbfcff; }.geo-question-index { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: #e9f0ff; color: #2966d5; font-weight: 800; }.geo-question-row strong { line-height: 1.55; }.geo-question-row p { display: flex; flex-wrap: wrap; gap: 7px; margin: 7px 0 0; }.geo-question-row p span { padding: 3px 7px; border-radius: 7px; background: #eef2f7; color: #69768c; font-size: 11px; }
.geo-pagination { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin-top: 22px; }.geo-pagination button, .geo-pagination span { display: grid; min-width: 34px; height: 34px; padding: 0 9px; place-items: center; border: 1px solid #dfe5ef; border-radius: 9px; background: #fff; color: #526079; cursor: pointer; }.geo-pagination button.active { border-color: #2c6ce5; background: #2c6ce5; color: #fff; }.geo-pagination button:disabled { opacity: .4; cursor: default; }
.geo-engine-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 10px; }.geo-engine-grid article { padding: 14px; border: 1px solid #e4eaf3; border-radius: 14px; background: #fafcff; }.geo-engine-grid article > div { display: flex; gap: 10px; align-items: center; justify-content: space-between; }.geo-engine-grid p { margin: 9px 0 4px; color: #66738a; }.geo-engine-grid small { color: #929cac; }
.geo-plan-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }.geo-plan-grid article { display: grid; gap: 10px; padding: 16px; border: 1px solid #e2e8f2; border-radius: 15px; background: #fbfcff; }.geo-plan-grid article > div { display: flex; gap: 10px; justify-content: space-between; }.geo-plan-grid p { min-height: 36px; margin: 0; color: #6f7c92; line-height: 1.55; }.geo-plan-grid small { color: #8b96a8; }
.geo-table-wrap { width: 100%; overflow: auto; }.geo-table { width: 100%; border-collapse: separate; border-spacing: 0; }.geo-table th, .geo-table td { min-width: 105px; height: auto !important; padding: 12px; border-bottom: 1px solid #e8edf4; text-align: left; white-space: normal !important; overflow-wrap: anywhere; vertical-align: top; }.geo-table th { background: #f4f7fb; color: #69768c; font-size: 12px; }.geo-table th:first-child { border-radius: 10px 0 0; }.geo-table th:last-child { border-radius: 0 10px 0 0; }.geo-run-counts { display: block; margin-top: 5px; color: #78869b; line-height: 1.45; }
.geo-detail-panel { margin-top: 20px; border-color: #cdddf7; }.geo-mini-metrics { margin-bottom: 18px; }.geo-mini-metrics .geo-metric { box-shadow: none; }.geo-answer-list { display: grid; gap: 12px; }.geo-answer-list article { padding: 18px; border: 1px solid #e2e8f2; border-radius: 15px; background: #fbfcff; }.geo-answer-list article > header { display: flex; justify-content: space-between; }.geo-answer-list h4 { margin: 14px 0 8px; }.geo-answer-list p { color: #536079; line-height: 1.75; white-space: pre-wrap; }.geo-citations, .geo-competitors { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; margin-top: 12px; }.geo-citations b, .geo-competitors b { margin-right: 6px; }.geo-citations a, .geo-competitors span { padding: 5px 8px; border-radius: 8px; background: #edf3ff; color: #2a62c6; font-size: 12px; text-decoration: none; }
.geo-content-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 18px; align-items: start; }.geo-asset-list { display: grid; max-height: calc(100vh - 270px); gap: 8px; overflow: auto; padding: 18px; border: 1px solid #dfe7f3; border-radius: 18px; background: #fff; }.geo-asset-list h3 { margin: 0 0 8px; }.geo-asset-list h3 small { color: #8b96aa; }.geo-asset-list button { display: grid; gap: 4px; padding: 13px; border: 1px solid #e4e9f2; border-radius: 12px; background: #fbfcff; text-align: left; cursor: pointer; }.geo-asset-list button.active { border-color: #73a2ef; background: #edf4ff; box-shadow: inset 3px 0 #2d6de4; }.geo-asset-list button > span, .geo-asset-list button > small { color: #7c879a; font-size: 11px; }.geo-content-editor > header a { color: #2d65cc; text-decoration: none; }.geo-compare-editor { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }.geo-compare-editor label { display: grid; gap: 8px; color: #526079; font-weight: 700; }.geo-compare-editor textarea { min-height: 440px; padding: 16px; resize: vertical; border: 1px solid #dce4f0; border-radius: 14px; background: #f9fbfe; color: #17243c; font: 14px/1.8 system-ui; }.geo-content-checks { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }.geo-content-checks span { padding: 6px 9px; border-radius: 8px; background: #eaf8f1; color: #287451; font-size: 12px; }
.geo-citation-layout { grid-template-columns: minmax(280px, .75fr) minmax(0, 1.25fr); }.geo-run-selector { display: grid; gap: 8px; }.geo-run-selector button { display: grid; gap: 4px; padding: 13px; border: 1px solid #e2e8f1; border-radius: 12px; background: #fbfcff; text-align: left; cursor: pointer; }.geo-run-selector span, .geo-run-selector small { color: #7c879c; }.geo-source-list a { display: block; margin-top: 4px; color: #2c66d1; text-decoration: none; }.geo-source-list > article > span { font-weight: 700; }.geo-competitor-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)); gap: 10px; }.geo-competitor-grid article { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 14px; border: 1px solid #e3e9f2; border-radius: 14px; }.geo-competitor-grid article > span { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 10px; background: #edf3ff; color: #2e69d9; font-weight: 800; }.geo-competitor-grid p { margin: 5px 0 0; color: #7a8699; }.geo-competitor-grid b { color: #2b65d2; }
.geo-experiment-list { display: grid; gap: 10px; }.geo-experiment-list article { display: grid; grid-template-columns: minmax(250px, 1fr) minmax(330px, 1fr) auto auto; gap: 16px; align-items: center; padding: 16px; border: 1px solid #e3e9f2; border-radius: 14px; }.geo-experiment-list p { margin: 5px 0; color: #738096; }.geo-experiment-list small { color: #929caf; }.geo-delta { display: flex; flex-wrap: wrap; gap: 8px; }.geo-delta span { padding: 6px 8px; border-radius: 8px; background: #f0f4fa; color: #68758a; font-size: 11px; }.geo-delta b { color: #25714d; }
.geo-before-after { overflow: hidden; border: 1px solid #e0e7f1; border-radius: 14px; }.geo-before-after > div { display: grid; grid-template-columns: 1.2fr repeat(3, 1fr); }.geo-before-after > div > * { padding: 12px 14px; border-right: 1px solid #e5eaf2; border-bottom: 1px solid #e5eaf2; }.geo-before-after > div:first-child { background: #f2f6fb; color: #68758b; font-size: 12px; font-weight: 700; }.geo-before-after > div:last-child > * { border-bottom: 0; }.geo-before-after b { color: #23774f; }.geo-method-note { margin: 14px 0 0; padding: 12px 14px; border-radius: 11px; background: #f4f8ff; color: #60708b; line-height: 1.6; }
.geo-empty { padding: 80px 24px; border: 1px dashed #cfdaea; border-radius: 22px; background: #fff; text-align: center; }.geo-empty-icon { display: grid; width: 58px; height: 58px; margin: 0 auto 15px; place-items: center; border-radius: 18px; background: #e9f1ff; color: #2867db; font-size: 22px; font-weight: 800; }.geo-empty h3 { margin: 0 0 8px; }.geo-empty p { max-width: 630px; margin: 0 auto 20px; color: #718097; line-height: 1.7; }.geo-empty-inline { display: flex; grid-column: 1 / -1; gap: 10px; align-items: center; justify-content: center; min-height: 100px; padding: 18px; color: #8792a6; text-align: center; }.geo-empty-inline span { color: #a8b2c2; font-size: 22px; }.geo-empty-inline p { margin: 0; }
.geo-modal-mask { z-index: 1000; }.geo-modal { width: min(760px, calc(100vw - 32px)); max-height: calc(100vh - 40px); overflow: auto; padding: 28px; }.geo-modal > header h2 { margin: 6px 0 20px; }.geo-modal > footer { display: flex; gap: 10px; justify-content: flex-end; margin-top: 22px; }.geo-form { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }.geo-form label { display: grid; gap: 7px; color: #56647c; font-size: 13px; font-weight: 700; }.geo-form label.full, .geo-form fieldset.full { grid-column: 1 / -1; }.geo-form input, .geo-form select, .geo-form textarea { width: 100%; min-height: 43px; padding: 10px 12px; border: 1px solid #d9e1ec; border-radius: 10px; background: #fafcff; color: #17243c; box-sizing: border-box; }.geo-form textarea { min-height: 100px; resize: vertical; line-height: 1.6; }.geo-form textarea.geo-tall-textarea { min-height: 240px; }.geo-form .geo-checkbox { display: flex; flex-direction: row; align-items: center; }.geo-form .geo-checkbox input { width: 18px; min-height: 18px; }.geo-form fieldset { padding: 14px; border: 1px solid #dce4ef; border-radius: 12px; }.geo-engine-checks { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; max-height: 220px; overflow: auto; }.geo-engine-checks label { display: flex; flex-direction: row; gap: 7px; align-items: center; padding: 8px; border-radius: 8px; background: #f4f7fb; }.geo-engine-checks input { width: 16px; min-height: 16px; }

@media (max-width: 1180px) {
    .geo-metrics, .geo-mini-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .geo-experiment-list article { grid-template-columns: minmax(220px, 1fr) 1fr auto; }.geo-experiment-list article > button { grid-column: 3; }
    .geo-content-layout { grid-template-columns: 230px minmax(0, 1fr); }
}
@media (max-width: 860px) {
    .geo-hero { grid-template-columns: 50px minmax(0, 1fr); padding: 22px; }.geo-brand-icon { width: 48px; height: 48px; border-radius: 14px; font-size: 24px; }.geo-enterprise-picker { grid-column: 1 / -1; justify-items: start; }
    .geo-two-column, .geo-citation-layout, .geo-content-layout, .geo-compare-editor { grid-template-columns: 1fr; }.geo-asset-list { max-height: 300px; }.geo-compare-editor textarea { min-height: 300px; }
    .geo-question-row { grid-template-columns: 38px minmax(0, 1fr); }.geo-question-row > .geo-status, .geo-question-row > button { grid-column: auto; }
    .geo-experiment-list article { grid-template-columns: 1fr; }.geo-experiment-list article > button { grid-column: auto; justify-self: start; }
}
@media (max-width: 560px) {
    .geo-metrics, .geo-mini-metrics, .geo-engine-checks, .geo-form { grid-template-columns: 1fr; }.geo-card { padding: 18px; }.geo-card > header { flex-direction: column; }.geo-question-row { grid-template-columns: 1fr; }.geo-question-index { display: none; }.geo-before-after { overflow: auto; }.geo-before-after > div { min-width: 620px; }.geo-record-list article, .geo-source-list article { grid-template-columns: 1fr; gap: 7px; }
}

/* GEO 工具工作台与多模型投喂 */
.geo-tool-workbench { padding: 26px; background: linear-gradient(145deg, #fff 0%, #f7faff 100%); }
.geo-tool-workbench > header p { max-width: 780px; font-size: 14px; line-height: 1.7; }
.geo-next-action { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px; align-items: center; margin: -4px 0 18px; padding: 15px 17px; border: 1px solid #cfe0fb; border-radius: 15px; background: linear-gradient(105deg, #eef5ff, #f3fbff); }
.geo-next-action > span { padding: 6px 9px; border-radius: 9px; background: #2868df; color: #fff; font-size: 11px; font-weight: 800; white-space: nowrap; }
.geo-next-action > div { min-width: 0; }.geo-next-action strong { font-size: 14px; }.geo-next-action p { margin: 4px 0 0; color: #61718b; font-size: 12px; line-height: 1.55; }
.geo-next-action .primary-btn { min-height: 40px; white-space: nowrap; }
.geo-tool-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.geo-tool-card { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 12px; min-height: 126px; padding: 17px; border: 1px solid #dce5f3; border-radius: 16px; background: #fff; color: #17243d; text-align: left; cursor: pointer; box-shadow: 0 6px 18px rgba(47, 81, 139, .05); transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.geo-tool-card:hover { transform: translateY(-2px); border-color: #77a5f2; box-shadow: 0 12px 28px rgba(47, 94, 181, .12); }
.geo-tool-card > span { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 13px; background: linear-gradient(145deg, #eaf2ff, #eef9ff); color: #2867dd; font-size: 15px; font-weight: 900; }
.geo-tool-card > div { display: grid; align-content: start; gap: 5px; min-width: 0; }
.geo-tool-card em { width: max-content; padding: 3px 6px; border-radius: 6px; background: #f0f4fa; color: #70809a; font-size: 10px; font-style: normal; font-weight: 700; }
.geo-tool-card strong { font-size: 15px; line-height: 1.35; }
.geo-tool-card small { color: #6d7b92; font-size: 12px; line-height: 1.55; }
.geo-tool-card > b { grid-column: 2; color: #2d6cde; font-size: 12px; }
.geo-card h3 small { color: #8090a8; font-size: 13px; font-weight: 700; }
.geo-goal-launcher { display: grid; gap: 12px; margin-top: 18px; padding-top: 18px; border-top: 1px solid #e3eaf5; }
.geo-goal-launcher > header { display: flex; gap: 12px; align-items: end; justify-content: space-between; }
.geo-goal-launcher h4 { margin: 4px 0 0; font-size: 16px; }
.geo-goal-launcher > header small { color: #7c899d; font-size: 11px; }
.geo-goal-launcher > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.geo-goal-launcher button { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 10px; padding: 13px 14px; border: 1px solid #dce5f2; border-radius: 13px; background: rgba(255,255,255,.84); color: #182640; text-align: left; cursor: pointer; transition: border-color .18s ease, background .18s ease; }
.geo-goal-launcher button:hover { border-color: #79a6ef; background: #f3f7ff; }
.geo-goal-launcher button strong { font-size: 13px; }.geo-goal-launcher button small { color: #738096; font-size: 11px; line-height: 1.45; }
.geo-goal-launcher button b { grid-column: 2; grid-row: 1 / 3; align-self: center; color: #2b69da; font-size: 11px; white-space: nowrap; }

.geo-qa-card > header p { max-width: 720px; }
.geo-qa-source-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.geo-qa-source-list article { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto auto auto; gap: 11px; align-items: center; padding: 14px; border: 1px solid #e0e7f2; border-radius: 14px; background: #fbfcff; }
.geo-qa-source-icon { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 12px; background: #e9f1ff; color: #2868dd; font-size: 12px; font-weight: 900; }
.geo-qa-source-list strong { display: block; font-size: 14px; }
.geo-qa-source-list p { margin: 5px 0 0; overflow: hidden; color: #738198; font-size: 12px; line-height: 1.45; text-overflow: ellipsis; white-space: nowrap; }
.geo-qa-source-list article > span, .geo-qa-source-list time { color: #7d899c; font-size: 11px; white-space: nowrap; }
.geo-qa-detail { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.geo-qa-detail > div { display: grid; gap: 5px; padding: 14px; border-radius: 12px; background: #f5f8fc; }
.geo-qa-detail > div span { color: #7b879a; font-size: 12px; }
.geo-qa-detail article { grid-column: 1 / -1; }
.geo-qa-detail pre { max-height: 52vh; overflow: auto; padding: 16px; border: 1px solid #dfe6f1; border-radius: 12px; background: #fafcff; color: #273650; font: 13px/1.75 system-ui; white-space: pre-wrap; overflow-wrap: anywhere; }
.geo-qa-item-list { display: grid; max-height: 55vh; gap: 9px; overflow: auto; padding-right: 4px; }
.geo-qa-item-list > section { padding: 14px; border: 1px solid #e0e7f1; border-radius: 12px; background: #fafcff; }
.geo-qa-item-list header { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 9px; align-items: start; }
.geo-qa-item-list header span { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 9px; background: #e9f1ff; color: #2868dd; font-size: 10px; font-weight: 800; }
.geo-qa-item-list header strong { line-height: 1.55; overflow-wrap: anywhere; }
.geo-qa-item-list p { margin: 10px 0 0 39px; color: #53617a; line-height: 1.7; white-space: pre-wrap; overflow-wrap: anywhere; }
.geo-qa-item-list footer { display: flex; flex-wrap: wrap; gap: 6px; margin: 9px 0 0 39px; }
.geo-qa-item-list footer span { padding: 4px 7px; border-radius: 7px; background: #edf3ff; color: #3767b5; font-size: 10px; }

.geo-feed-guide { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); overflow: hidden; border: 1px solid #dce6f5; border-radius: 18px; background: #fff; box-shadow: 0 8px 26px rgba(48, 80, 139, .05); }
.geo-feed-guide article { position: relative; display: flex; gap: 12px; align-items: center; min-width: 0; padding: 18px; }
.geo-feed-guide article:not(:last-child)::after { position: absolute; top: 50%; right: -7px; z-index: 1; width: 14px; height: 14px; border-top: 1px solid #c8d8ef; border-right: 1px solid #c8d8ef; background: #fff; content: ""; transform: translateY(-50%) rotate(45deg); }
.geo-feed-guide article > span { display: grid; flex: 0 0 36px; width: 36px; height: 36px; place-items: center; border-radius: 12px; background: #2868e4; color: #fff; font-weight: 900; }
.geo-feed-guide article div { display: grid; gap: 4px; min-width: 0; }
.geo-feed-guide strong { font-size: 14px; }
.geo-feed-guide small { overflow: hidden; color: #7b879b; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.geo-feed-launch { background: radial-gradient(circle at 92% 0, rgba(48, 190, 239, .12), transparent 28%), linear-gradient(135deg, #fff, #f6f9ff); }
.geo-feed-launch > header { align-items: center; }
.geo-feed-launch > header p { max-width: 820px; font-size: 13px; line-height: 1.7; }
.geo-feed-primary { min-height: 46px; padding-inline: 20px; }
.geo-context-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.geo-context-summary > span { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 2px 10px; align-items: center; padding: 13px; border: 1px solid #e1e8f3; border-radius: 13px; background: rgba(255,255,255,.8); }
.geo-context-summary i { display: grid; grid-row: 1 / 3; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: #e9f2ff; color: #2867dc; font-size: 11px; font-style: normal; font-weight: 900; }
.geo-context-summary b { font-size: 16px; }
.geo-context-summary small { color: #78869a; font-size: 11px; }
.geo-feed-batch-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
.geo-feed-batch { display: grid; gap: 13px; padding: 17px; border: 1px solid #dfe7f2; border-radius: 15px; background: #fbfcff; }
.geo-feed-batch > header, .geo-feed-batch > footer { display: flex; gap: 12px; align-items: center; justify-content: space-between; }
.geo-feed-batch > header > div { display: grid; gap: 5px; min-width: 0; }
.geo-feed-batch > header strong { overflow: hidden; font-size: 15px; text-overflow: ellipsis; white-space: nowrap; }
.geo-feed-batch > header small, .geo-feed-batch > footer > span { color: #748198; font-size: 11px; }
.geo-feed-batch > footer > div { display: flex; gap: 7px; }
.geo-feed-progress { display: grid; grid-template-columns: minmax(0, 1fr) 42px; gap: 10px; align-items: center; }
.geo-feed-progress i { display: block; height: 9px; overflow: hidden; border-radius: 999px; background: #e8edf5; }
.geo-feed-progress u { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2868e8, #32c0e9); transition: width .28s ease; }
.geo-feed-progress span { color: #43658f; font-size: 11px; font-weight: 800; text-align: right; }
.geo-feed-compare { margin-bottom: 18px; border: 1px solid #e1e7f0; border-radius: 13px; }
.geo-feed-insights { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); gap: 14px; margin: 0 0 18px; }
.geo-feed-gap-panel, .geo-feed-recommendations { min-width: 0; padding: 17px; border: 1px solid #e1e8f2; border-radius: 14px; background: #fbfcff; }
.geo-feed-gap-panel > header, .geo-feed-recommendations > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.geo-feed-gap-panel h4, .geo-feed-recommendations h4 { margin: 4px 0 0; font-size: 15px; }.geo-feed-gap-panel header small { color: #8490a3; font-size: 11px; }
.geo-feed-gap-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.geo-feed-gap-grid article { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 10px; padding: 11px; border: 1px solid #e5eaf2; border-radius: 11px; background: #fff; }
.geo-feed-gap-grid article > b { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: #fff0ed; color: #bd463f; font-size: 16px; }
.geo-feed-gap-grid strong { font-size: 12px; }.geo-feed-gap-grid p { margin: 3px 0 0; color: #7a879b; font-size: 10px; line-height: 1.45; }.geo-feed-gap-grid small { display: block; margin-top: 5px; overflow: hidden; color: #506887; font-size: 10px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.geo-feed-recommendations ol { display: grid; gap: 9px; margin: 0; padding-left: 22px; }.geo-feed-recommendations li { padding-left: 3px; color: #4d5d76; font-size: 12px; line-height: 1.65; }
.geo-feed-isolation { grid-column: 1 / -1; margin: 0; padding: 10px 13px; border-radius: 10px; background: #fff7e6; color: #846020; font-size: 11px; line-height: 1.55; }
.geo-feed-result-signals { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 11px; }
.geo-feed-result-signals span { padding: 5px 8px; border-radius: 8px; background: #f0f3f8; color: #69778d; font-size: 11px; }
.geo-feed-result-signals span.hit { background: #e7f8ef; color: #22784e; }.geo-feed-result-signals span.miss { background: #fff1ef; color: #ac4943; }
.geo-feed-modal { width: min(1040px, calc(100vw - 34px)); }
.geo-feed-modal .geo-form { gap: 18px; }
.geo-feed-modal fieldset { min-width: 0; }
.geo-check-toolbar { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; margin-bottom: 10px; }
.geo-check-toolbar button { padding: 6px 9px; border: 1px solid #cfdaea; border-radius: 8px; background: #fff; color: #3765a6; font-size: 11px; font-weight: 700; cursor: pointer; }
.geo-check-toolbar span { color: #7a879a; font-size: 11px; }
.geo-feed-engine-checks { grid-template-columns: repeat(4, minmax(0, 1fr)); max-height: 250px; }
.geo-feed-engine-checks label { align-items: flex-start; }.geo-feed-engine-checks label.disabled { opacity: .55; }
.geo-feed-engine-checks label > span { display: grid; gap: 3px; min-width: 0; }.geo-feed-engine-checks label small { color: #7f8b9e; font-size: 10px; line-height: 1.45; overflow-wrap: anywhere; }.geo-feed-engine-checks label em { color: #9aa5b6; font-size: 10px; font-style: normal; }
.geo-feed-setup-note, .geo-feed-picker-empty { display: flex; grid-column: 1 / -1; align-items: center; justify-content: space-between; gap: 14px; margin: 0 0 11px; padding: 12px 14px; border: 1px solid #dce6f3; border-radius: 11px; background: #f7faff; }
.geo-feed-setup-note.ready { border-color: #bfe5d0; background: #f0fbf5; }.geo-feed-setup-note.warning { border-color: #f0d59d; background: #fff9ed; }
.geo-feed-setup-note strong, .geo-feed-picker-empty strong { display: block; color: #253652; font-size: 12px; }.geo-feed-setup-note p, .geo-feed-picker-empty p { margin: 4px 0 0; color: #718096; font-size: 11px; line-height: 1.55; }
.geo-feed-setup-note button, .geo-feed-picker-empty button { flex: 0 0 auto; min-height: 34px; white-space: nowrap; }
.geo-feed-picker-empty { width: 100%; margin: 0; box-sizing: border-box; }
.geo-feed-loading-state { display: flex; align-items: center; justify-content: center; gap: 16px; min-height: 220px; text-align: left; }
.geo-feed-loading-state > span { width: 30px; height: 30px; border: 3px solid #dbe7fa; border-top-color: #2868e8; border-radius: 50%; animation: geo-feed-loading .8s linear infinite; }
.geo-feed-loading-state strong { color: #233654; font-size: 15px; }.geo-feed-loading-state p { margin: 6px 0 0; color: #7b879b; font-size: 12px; }
@keyframes geo-feed-loading { to { transform: rotate(360deg); } }
.geo-feed-question-checks { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 280px; }
.geo-feed-question-checks label { align-items: flex-start; }.geo-feed-question-checks label span { line-height: 1.45; }.geo-feed-question-checks label b { margin-right: 7px; color: #2868dc; font-size: 10px; }
.geo-feed-context-options { display: grid; grid-template-columns: minmax(0, 1fr) 180px; gap: 10px; margin-bottom: 10px; }
.geo-feed-context-options > label { min-width: 0; padding: 10px; border-radius: 9px; background: #f4f7fb; }
.geo-qa-master, .geo-asset-master { width: max-content; margin: 12px 0 10px; }
.geo-feed-asset-checks { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 220px; }
.geo-feed-asset-checks label { align-items: flex-start; }.geo-feed-asset-checks label > span { display: grid; gap: 3px; min-width: 0; }
.geo-feed-asset-checks label b { overflow-wrap: anywhere; }.geo-feed-asset-checks label small { color: #7e8b9f; font-size: 10px; }
#geo-feed-asset-search { flex: 1 1 180px; min-height: 32px; padding: 5px 9px; border: 1px solid #cfdaea; border-radius: 8px; background: #fff; }
.geo-feed-context-preview { padding: 15px; border: 1px dashed #b9cbe5; border-radius: 12px; background: #f7faff; color: #62718a; }
.geo-context-preview-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); gap: 8px; }
.geo-context-preview-summary span { padding: 9px; border-radius: 9px; background: #fff; color: #68758b; font-size: 11px; text-align: center; }.geo-context-preview-summary b { display: block; color: #245fc9; font-size: 17px; }
.geo-context-preview-sections { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }.geo-context-preview-sections span { padding: 5px 8px; border-radius: 8px; background: #e8f1ff; color: #3768b5; font-size: 11px; }
.geo-context-warnings p, .geo-context-ready, .geo-context-error, .geo-context-empty { margin: 9px 0 0; font-size: 11px; line-height: 1.55; }.geo-context-ready { color: #29734f; }.geo-context-error { color: #b43b45; }.geo-context-empty { color: #8a671f; }.geo-context-loading { color: #356ac0; }

@media (max-width: 1180px) {
    .geo-tool-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .geo-qa-source-list, .geo-feed-batch-list { grid-template-columns: 1fr; }
    .geo-feed-engine-checks { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
    .geo-feed-guide { grid-template-columns: repeat(2, minmax(0, 1fr)); }.geo-feed-guide article::after { display: none; }
    .geo-context-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .geo-feed-engine-checks, .geo-feed-question-checks, .geo-feed-asset-checks { grid-template-columns: 1fr; }
    .geo-feed-context-options { grid-template-columns: 1fr; }
    .geo-feed-insights { grid-template-columns: 1fr; }
    .geo-next-action { grid-template-columns: auto minmax(0, 1fr); }.geo-next-action .primary-btn { grid-column: 2; justify-self: start; }
    .geo-goal-launcher > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
    .geo-tool-grid, .geo-feed-guide, .geo-context-summary, .geo-context-preview-summary { grid-template-columns: 1fr; }
    .geo-next-action { grid-template-columns: 1fr; }.geo-next-action .primary-btn { grid-column: 1; width: 100%; }
    .geo-goal-launcher > header { align-items: flex-start; flex-direction: column; }.geo-goal-launcher > div { grid-template-columns: 1fr; }
    .geo-qa-source-list article { grid-template-columns: 40px minmax(0, 1fr); align-items: start; }.geo-qa-source-list article > span, .geo-qa-source-list time { grid-column: 2; white-space: normal; }.geo-qa-source-list button { grid-column: 1 / -1; width: 100%; }
    .geo-qa-detail { grid-template-columns: 1fr; }.geo-qa-detail article { grid-column: 1; }.geo-qa-item-list p, .geo-qa-item-list footer { margin-left: 0; }
    .geo-feed-batch > header, .geo-feed-batch > footer { align-items: flex-start; flex-direction: column; }
    .geo-feed-gap-grid { grid-template-columns: 1fr; }
    .geo-modal { width: calc(100vw - 18px); max-height: calc(100dvh - 18px); padding: 18px; }
    .geo-modal > footer { position: sticky; bottom: -18px; z-index: 2; flex-wrap: wrap; margin: 18px -18px -18px; padding: 12px 18px; border-top: 1px solid #e3e9f2; background: rgba(255,255,255,.96); }
    .geo-modal > footer button { flex: 1 1 140px; min-height: 42px; }
    .geo-feed-modal .geo-check-toolbar button { flex: 1 1 120px; }
    .geo-feed-setup-note, .geo-feed-picker-empty { align-items: stretch; flex-direction: column; }.geo-feed-setup-note button, .geo-feed-picker-empty button { width: 100%; }
}
