@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap";:root{color:#172033;font-synthesis:none;--blue:#2563eb;--line:#e4e8ee;--muted:#707b8b;background:#f5f7fa;font-family:DM Sans,Noto Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{color:#dce3ef;z-index:10;background:#10192b;flex-direction:column;width:232px;padding:24px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{width:100%;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:11px;padding:0 8px 30px;display:flex}.brand-mark{color:#fff;background:#2563eb;border-radius:9px;flex:none;place-items:center;width:36px;height:36px;display:grid}.brand strong{color:#fff;letter-spacing:.04em;font-size:16px;display:block}.brand span{color:#78849a;text-transform:uppercase;letter-spacing:.12em;font-size:9px}.sidebar nav{gap:5px;display:grid}.nav-button{color:#94a0b4;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:11px;width:100%;height:42px;padding:0 12px;font-size:13px;display:flex}.nav-button svg{width:17px}.nav-button.active{color:#fff;background:#1c2940}.nav-button:hover{color:#e8edf5;background:#17243a}.sidebar nav p{color:#566278;text-transform:uppercase;letter-spacing:.15em;margin:24px 12px 8px;font-size:10px}.side-bottom{margin-top:auto}.account{border-top:1px solid #273249;align-items:center;gap:9px;margin-top:14px;padding:18px 6px 0;display:flex}.account>span{background:#34415a;border-radius:50%;place-items:center;width:32px;height:32px;font-size:12px;display:grid}.account div{flex:1}.account strong,.account small{font-size:11px;display:block}.account small{color:#778399;margin-top:3px}.account svg{color:#69758a;width:14px}main{max-width:1600px;min-height:100vh;margin-left:232px;padding:0 34px 54px}.topbar{justify-content:space-between;align-items:center;height:104px;display:flex}.topbar h1{letter-spacing:-.02em;margin:0 0 6px;font-size:23px}.topbar p{color:var(--muted);margin:0;font-size:12px}.top-actions{align-items:center;gap:10px;display:flex}.connector{color:#7e8795;border:1px solid var(--line);background:#fff;border-radius:7px;padding:9px 12px;font-size:11px}.connector i{background:#f59e0b;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.connector.online i{background:#16a36f}.ghost,.primary-btn{border:1px solid var(--line);color:#475166;background:#fff;border-radius:7px;align-items:center;gap:7px;height:38px;padding:0 13px;font-size:12px;display:flex}.ghost svg,.primary-btn svg{width:15px}.ghost:disabled{opacity:.45}.query-panel{border:1px solid var(--line);background:#fff;border-radius:12px;padding:20px 22px;box-shadow:0 2px 6px #0f172a06}.query-title{justify-content:space-between;align-items:start;display:flex}.query-title span,.card-heading span,.table-head span{text-transform:uppercase;letter-spacing:.11em;color:#8b94a2;font-size:10px}.query-title h2{margin:4px 0 16px;font-size:17px}.query-row{gap:10px;display:flex}.query-row label{border:1px solid #cfd5df;border-radius:7px;flex:1;align-items:center;gap:9px;height:44px;padding:0 13px;display:flex}.query-row label:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb12}.query-row label svg{color:#8b95a5;width:17px}.query-row input{border:0;outline:0;width:100%;font-size:13px}.primary-btn{background:var(--blue);border-color:var(--blue);color:#fff;height:44px;padding:0 20px;font-weight:600}.primary-btn:disabled{opacity:.6}.query-options{align-items:center;gap:8px;margin-top:12px;display:flex}.query-options>span:first-child{color:#9aa2ae;margin-right:auto;font-size:10px}.select-control{background:#f4f6f8;border-radius:5px;align-items:center;display:flex;position:relative}.select-control select{appearance:none;color:#566174;cursor:pointer;background:0 0;border:0;outline:0;padding:6px 25px 6px 8px;font-size:10px}.select-control svg{pointer-events:none;width:11px;position:absolute;right:7px}.auto-toggle{color:#586274;background:#f4f6f8;border:0;border-radius:5px;align-items:center;gap:5px;padding:5px 8px;font-size:10px;display:flex}.auto-toggle i{color:#7d8795;background:#e5e8ed;border-radius:4px;place-items:center;width:17px;height:17px;display:grid}.auto-toggle.enabled i{color:var(--blue);background:#e8efff}.auto-toggle svg{width:11px}.empty-state{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:1.1fr 1fr;align-items:center;min-height:470px;margin-top:18px;padding:42px 8%;display:grid;overflow:hidden}.empty-state img{width:100%;max-width:500px}.empty-state>div{max-width:430px}.empty-state span{text-transform:uppercase;letter-spacing:.12em;color:var(--blue);font-size:10px;font-weight:700}.empty-state h2{margin:9px 0;font-size:25px;line-height:1.35}.empty-state p{color:var(--muted);font-size:13px;line-height:1.8}.empty-state button,.panel-empty button{background:var(--blue);color:#fff;border:0;border-radius:7px;padding:11px 15px;font-size:12px;font-weight:600}.metrics{grid-template-columns:1.35fr 1fr 1fr 1fr;gap:12px;margin:18px 0 12px;display:grid}.metric-card{border:1px solid var(--line);background:#fff;border-radius:10px;min-width:0;padding:17px 18px}.metric-card.primary{border-top:3px solid var(--blue);padding-top:15px}.metric-card span{color:#748092;font-size:11px}.metric-card strong{letter-spacing:-.03em;margin:9px 0 4px;font-size:25px;display:block}.metric-card small{color:#8d96a3;white-space:nowrap;text-overflow:ellipsis;font-size:10px;display:block;overflow:hidden}.dashboard-grid{grid-template-columns:minmax(0,1.75fr) minmax(270px,.8fr);gap:12px;display:grid}.chart-card,.opportunity-card,.table-card{border:1px solid var(--line);background:#fff;border-radius:10px}.chart-card,.opportunity-card{padding:18px}.card-heading{justify-content:space-between;align-items:start;display:flex}.card-heading h3,.table-head h3{margin:4px 0;font-size:15px}.legend{color:#818b9a;font-size:10px}.legend i{background:var(--blue);border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.chart-wrap{height:270px;margin-top:12px}.opportunity-card .card-heading>svg{color:#8a95a6;width:18px}.rank-list{margin-top:9px;display:grid}.rank-list button{text-align:left;background:#fff;border:0;border-top:1px solid #eef1f5;grid-template-columns:28px 1fr auto;align-items:center;gap:7px;padding:11px 5px;display:grid}.rank-list button:first-child{border-top:0}.rank-list button.selected{background:#f7f9fd}.rank-list b{color:#a1a9b5;font-size:10px}.rank-list strong,.rank-list small{white-space:nowrap;text-overflow:ellipsis;max-width:160px;display:block;overflow:hidden}.rank-list strong{font-size:11px}.rank-list small{color:#929ba8;margin-top:3px;font-size:9px}.rank-list em{font-size:10px;font-style:normal}.up{color:#07865d!important}.down{color:#d94747!important}.table-card{margin-top:12px;overflow:hidden}.table-head{justify-content:space-between;padding:17px 18px 12px;display:flex}.table-head label{border:1px solid var(--line);border-radius:6px;align-items:center;gap:6px;width:200px;height:32px;padding:0 9px;display:flex}.table-head label svg{color:#919aa8;width:13px}.table-head input{border:0;outline:0;width:100%;font-size:10px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{color:#7c8696;text-align:left;white-space:nowrap;background:#f8f9fb;border-block:1px solid #edf0f4;padding:10px 18px;font-weight:500}td{color:#455064;white-space:nowrap;border-bottom:1px solid #eff1f4;padding:12px 18px}tbody tr{cursor:pointer}tbody tr:hover{background:#fafbfc}.number{text-align:right;font-variant-numeric:tabular-nums}.type-tag{color:#586477;border:1px solid #dfe3e9;border-radius:4px;padding:3px 6px}.competition{padding-left:11px;position:relative}.competition:before{content:"";border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.c-高:before{background:#e45858}.c-中:before{background:#e5a522}.c-低:before{background:#27a47a}.detail-btn{color:var(--blue);background:0 0;border:0;font-size:10px}.table-card footer{color:#929ba8;padding:12px 18px;font-size:9px}.no-filter-result{text-align:center;color:#9099a6;padding:38px;font-size:12px}.workspace-panel{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:540px;overflow:hidden}.panel-heading{border-bottom:1px solid #eef1f4;justify-content:space-between;align-items:center;padding:22px 24px;display:flex}.panel-heading span{text-transform:uppercase;letter-spacing:.12em;color:#8791a0;font-size:10px}.panel-heading h2{margin:5px 0 0;font-size:18px}.panel-heading>b{color:#7b8595;background:#f4f6f8;border-radius:5px;padding:6px 9px;font-size:11px}.panel-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:500px;padding:30px;display:flex}.panel-empty>svg{color:#b2bac5;width:40px;height:40px}.panel-empty h3{margin:16px 0 5px;font-size:18px}.panel-empty p{color:var(--muted);margin:0 0 18px;font-size:12px}.data-list{padding:0 24px}.data-list>button{text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0f4;grid-template-columns:10px minmax(200px,1fr) 80px 170px;align-items:center;gap:14px;width:100%;padding:18px 4px;display:grid}.data-list>button:hover{background:#fafbfc}.data-list strong,.data-list small{display:block}.data-list strong{font-size:13px}.data-list small,.data-list time{color:#8791a0;margin-top:4px;font-size:10px}.data-list em{color:#566174;font-size:11px;font-style:normal}.status-dot{background:#f59e0b;border-radius:50%;width:7px;height:7px}.s-completed{background:#13a172}.s-failed{background:#dc4d4d}.keyword-library{grid-template-columns:repeat(3,1fr);gap:10px;padding:20px;display:grid}.keyword-library>button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:15px;display:grid}.keyword-library>button:hover{border-color:#b7c9f7}.keyword-library strong{grid-column:1/-1;font-size:13px}.keyword-library small{color:#7d8796;grid-column:1/3;font-size:10px}.keyword-library em{font-size:10px;font-style:normal}.report-grid{grid-template-columns:repeat(3,1fr);gap:12px;padding:20px;display:grid}.report-grid article{border:1px solid var(--line);border-radius:9px;padding:17px}.report-grid article>div{color:#7e8897;align-items:center;gap:7px;font-size:10px;display:flex}.report-grid article>div svg{width:17px}.report-grid h3{margin:17px 0 7px;font-size:15px}.report-grid p,.report-grid time{color:#7d8795;font-size:10px}.report-grid footer{gap:7px;margin-top:17px;display:flex}.report-grid footer button{border:1px solid var(--line);background:#fff;border-radius:6px;align-items:center;gap:4px;padding:7px 9px;font-size:10px;display:flex}.report-grid footer button:first-child{background:var(--blue);border-color:var(--blue);color:#fff}.report-grid footer svg{width:12px}.settings-grid{grid-template-columns:1fr 1.1fr;gap:14px;padding:20px;display:grid}.settings-grid article{border:1px solid var(--line);border-radius:9px;padding:20px}.settings-grid article:first-child{align-items:center;gap:13px;display:flex}.settings-grid article:first-child>svg{width:22px;color:var(--blue)}.settings-grid h3{margin:0 0 6px;font-size:14px}.settings-grid p{color:#7f8998;margin:0;font-size:11px;line-height:1.7}.connection-pill{color:#9a6400;background:#fff6df;border-radius:5px;margin-left:auto;padding:6px 8px;font-size:10px}.connection-pill.online{color:#087b56;background:#e9f8f2}.setup-guide ol{color:#4e596c;padding-left:20px;font-size:12px;line-height:2.2}.setup-guide code{background:#eef2f8;border-radius:4px;padding:2px 5px}.online-text{color:#087b56!important}.offline-text{color:#9a6400!important}.help-steps{grid-template-columns:repeat(3,1fr);gap:12px;padding:20px;display:grid}.help-steps article{border:1px solid var(--line);border-radius:9px;padding:20px}.help-steps b{color:var(--blue);font-size:11px}.help-steps h3{margin:20px 0 7px;font-size:15px}.help-steps p,.faq p{color:#778293;font-size:11px;line-height:1.8}.faq{border-top:1px solid var(--line);margin:0 20px 20px;padding-top:20px}.faq h3{font-size:15px}.faq details{border-bottom:1px solid var(--line);padding:13px 0}.faq summary{cursor:pointer;font-size:12px;font-weight:600}.faq details p{margin-bottom:0}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}@media (width<=1000px){.sidebar{width:78px;padding-inline:12px}.brand>div:last-child,.nav-button{font-size:0}.sidebar nav p,.account div,.account>svg{display:none}.nav-button{justify-content:center}.nav-button svg{width:19px}.brand{padding-inline:9px}.account{justify-content:center}.app-shell main{margin-left:78px}.metrics{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.keyword-library,.report-grid{grid-template-columns:1fr 1fr}.settings-grid{grid-template-columns:1fr}}@media (width<=700px){.sidebar{display:none}.app-shell main{margin-left:0;padding:0 16px 40px}.topbar{align-items:start;height:auto;padding:22px 0}.topbar p,.connector{display:none}.query-row{flex-direction:column}.primary-btn{justify-content:center}.query-options{flex-wrap:wrap}.query-options>span:first-child{width:100%}.metrics{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.empty-state{text-align:left;grid-template-columns:1fr;padding:28px}.empty-state img{object-fit:contain;max-height:240px}.table-head label{display:none}.top-actions{margin-left:10px}.ghost{font-size:0}.ghost svg{margin:0}.metric-card strong{font-size:21px}.data-list>button{grid-template-columns:10px 1fr auto}.data-list time{display:none}.keyword-library,.report-grid,.help-steps,.settings-grid{grid-template-columns:1fr}.workspace-panel{min-height:480px}.panel-heading{padding:18px}.data-list{padding:0 14px}}@media (width<=440px){.metrics{grid-template-columns:1fr}.topbar h1{font-size:20px}.query-panel{padding:18px}.empty-state h2{font-size:21px}}.mobile-nav{display:none}@media (width<=700px){body{padding-bottom:66px}.app-shell main{padding-bottom:28px}.mobile-nav{border-top:1px solid var(--line);z-index:30;height:62px;padding:5px 7px max(5px,env(safe-area-inset-bottom));background:#fff;display:flex;position:fixed;inset:auto 0 0;overflow-x:auto}.mobile-nav button{color:#8791a0;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;min-width:60px;font-size:9px;display:flex}.mobile-nav button svg{width:17px;height:17px}.mobile-nav button.active{color:var(--blue)}}.data-badge{color:#9a6400;background:#fff6df;border-radius:5px;padding:5px 8px;font-size:10px}.data-badge.online{color:#087b56;background:#e9f8f2}.config-card{flex-direction:column;gap:13px;display:flex}.config-card label{gap:6px;display:grid}.config-card label span{color:#667184;font-size:10px}.config-card input{border:1px solid #d5dae2;border-radius:6px;outline:0;height:38px;padding:0 10px;font-size:12px}.config-card input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb12}.config-card>button{background:var(--blue);color:#fff;border:0;border-radius:6px;justify-content:center;align-items:center;gap:7px;height:38px;font-size:11px;font-weight:600;display:flex}.config-card>button:disabled{opacity:.6}.config-card>button svg{width:15px}.config-card small{color:#8993a1;font-size:9px}.config-card .config-error{color:#c83e3e;background:#fff1f1;border-radius:5px;padding:8px 9px}.setup-guide{grid-column:1/-1}.settings-grid form{border:1px solid var(--line);border-radius:9px;padding:20px}.plugin-download{background:#f8faff;border:1px solid #cfdbf7;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;margin:20px 20px 0;padding:18px 20px;display:flex}.plugin-download>div{align-items:center;gap:13px;display:flex}.download-icon{width:40px;height:40px;color:var(--blue);background:#e8efff;border-radius:8px;flex:none;place-items:center;display:grid}.download-icon svg{width:19px}.plugin-download h3{margin:0 0 5px;font-size:14px}.plugin-download p{color:#748093;margin:0;font-size:10px}.plugin-download>a{background:var(--blue);color:#fff;white-space:nowrap;border-radius:6px;align-items:center;gap:7px;height:38px;padding:0 14px;font-size:11px;font-weight:600;text-decoration:none;display:flex}.plugin-download>a svg{width:15px}.install-steps{grid-template-columns:repeat(4,1fr)}@media (width<=1000px){.install-steps{grid-template-columns:1fr 1fr}}@media (width<=700px){.plugin-download{flex-direction:column;align-items:flex-start}.plugin-download>a{justify-content:center;width:100%}.install-steps{grid-template-columns:1fr}}.extension-detect-card{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.extension-detect-card>button{background:var(--blue);color:#fff;border:0;border-radius:6px;justify-content:center;align-items:center;gap:7px;height:38px;padding:0 14px;font-size:11px;font-weight:600;display:flex}.extension-detect-card>button:disabled{opacity:.6}.extension-detect-card>button svg{width:15px}.extension-detect-card small{color:#8993a1;overflow-wrap:anywhere;max-width:100%;font-size:9px}.extension-detect-card code{background:#eef2f8;border-radius:4px;padding:2px 5px}.task-error{color:#a92f2f;background:#fff6f6;border:1px solid #f1caca;border-radius:7px;align-items:center;gap:9px;margin-top:10px;padding:9px 11px;font-size:11px;display:flex}.task-error>svg{flex:none;width:17px}.task-error span{flex:1;align-items:center;gap:8px;display:flex}.task-error strong{font-size:11px}.task-error button{color:#a92f2f;background:0 0;border:0;place-items:center;padding:0;display:grid}.task-error button svg{width:14px}
