:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#13211f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#eef4f1;--surface:#fff;--surface-soft:#f7faf8;--ink:#13211f;--muted:#63716d;--line:#d8e5e0;--line-strong:#b9cec7;--accent:#347d72;--accent-strong:#245e56;--accent-soft:#e4f3ef;--danger:#b54848;--danger-soft:#fff1ef;--shadow:0 24px 70px #182b261a;--shadow-soft:0 14px 36px #182b260f;background:#eef4f1;font-family:Geist,Avenir Next,Noto Sans TC,PingFang TC,Microsoft JhengHei,system-ui,-apple-system,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#101615;--surface:#151d1b;--surface-soft:#1b2522;--ink:#eef5f2;--muted:#a8b5b1;--line:#273531;--line-strong:#3b524d;--accent:#73c4b9;--accent-strong:#a6e1d9;--accent-soft:#1d3834;--danger:#ff958d;--danger-soft:#3a211f;--shadow:0 18px 60px #00000042;--shadow-soft:0 12px 34px #0003}*{box-sizing:border-box}body{background:var(--bg);min-width:320px;min-height:100dvh;color:var(--ink);margin:0}button,input,select,textarea{font:inherit}button,a.secondary,.primary,.ghost,.danger{white-space:nowrap;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;min-height:40px;padding:0 14px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .18s cubic-bezier(.16,1,.3,1),border-color .18s cubic-bezier(.16,1,.3,1),background-color .18s cubic-bezier(.16,1,.3,1),box-shadow .18s cubic-bezier(.16,1,.3,1);display:inline-flex}.primary{min-height:44px;padding-inline:18px}button:active,a.secondary:active{transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.52}.primary{color:#fff;border:1px solid var(--accent);background:var(--accent);box-shadow:0 10px 22px color-mix(in srgb, var(--accent) 22%, transparent)}.primary:hover{background:var(--accent-strong);box-shadow:0 12px 24px color-mix(in srgb, var(--accent) 26%, transparent)}.secondary,a.secondary,.ghost{color:var(--ink);border:1px solid var(--line);background:var(--surface)}.secondary:hover,.ghost:hover{border-color:var(--line-strong);background:var(--surface-soft)}.danger{color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 35%, transparent);background:var(--danger-soft)}input,select,textarea{width:100%;min-height:42px;color:var(--ink);border:1px solid var(--line);background:var(--surface);border-radius:12px;outline:none;padding:10px 12px;transition:border-color .18s cubic-bezier(.16,1,.3,1),box-shadow .18s cubic-bezier(.16,1,.3,1),background-color .18s cubic-bezier(.16,1,.3,1)}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent)}label{color:var(--muted);gap:8px;font-size:13px;font-weight:700;display:grid}label small,.setup-copy small{color:var(--muted);font-size:12px;font-weight:600;line-height:1.55}.auth-page{background:linear-gradient(150deg, color-mix(in srgb, var(--accent-soft) 68%, transparent), transparent 44%), var(--bg);place-items:center;min-height:100dvh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);background:var(--surface);width:min(100%,440px);box-shadow:var(--shadow);border-radius:20px;gap:18px;padding:32px;display:grid}.auth-brand{width:fit-content;color:var(--accent-strong);border:1px solid var(--line-strong);background:var(--accent-soft);border-radius:999px;padding:7px 10px;font-weight:800}.auth-card h1,.auth-card p,.topbar h1,.topbar p,.page-head h2,.page-head p,.empty-state h2,.empty-state p,.setup-required h2,.setup-required p,.settings-form h2,.settings-form p,.post-row p,.keyword-row p,.run-row p{margin:0}.auth-card h1{font-size:clamp(30px,6vw,42px);line-height:1.08}.auth-card p,.page-head p,.empty-state p,.setup-required p,.settings-form p,.keyword-row p,.run-row p{color:var(--muted);line-height:1.65}.auth-error,.auth-message{border-radius:12px;padding:12px 14px;font-size:14px;font-weight:700;line-height:1.5}.auth-error,.auth-message.bad{color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 28%, var(--line));background:var(--danger-soft)}.auth-message.warn{color:var(--accent-strong);border:1px solid color-mix(in srgb, var(--accent) 32%, var(--line));background:var(--accent-soft)}.auth-secondary{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:14px;line-height:1.5;display:flex}.auth-link{min-height:auto;color:var(--accent-strong);white-space:normal;background:0 0;border:0;border-radius:0;padding:0;font-weight:800}.auth-link:hover{color:var(--accent);background:0 0}.app-shell{background:linear-gradient(180deg, color-mix(in srgb, var(--accent-soft) 44%, transparent), transparent 340px), var(--bg);grid-template-columns:224px minmax(0,1fr);min-height:100dvh;display:grid}.side-nav{color:#c6d8d4;background:linear-gradient(#14231f 0%,#0f1b18 100%);border-right:1px solid #ffffff0f;grid-template-rows:auto 1fr;gap:28px;height:100dvh;padding:22px 14px;display:grid;position:sticky;top:0}.brand{border-bottom:1px solid #ffffff14;gap:4px;padding:14px 12px 18px;display:grid}.brand strong{color:#f5fffc;font-size:22px}.brand span{color:#91a6a1;font-size:13px}.side-nav nav{align-content:start;gap:8px;display:grid}.side-nav button{color:#b9cac6;background:0 0;border:1px solid #0000;justify-content:flex-start;width:100%;min-height:48px}.side-nav button.active,.side-nav button:hover{color:#f5fffc;background:#1e332f;border-color:#8fd9ce42;box-shadow:inset 0 1px #ffffff0d}.main{align-content:start;gap:24px;width:min(100%,1240px);margin:0 auto;padding:30px;display:grid}.topbar{justify-content:space-between;align-items:center;gap:16px;padding-bottom:2px;display:flex}.topbar p{color:var(--muted);font-size:14px}.status-text{border:1px solid var(--line);background:var(--surface);border-radius:999px;width:fit-content;padding:4px 8px;font-weight:800;display:inline-flex}.status-text.ready{color:var(--accent-strong);border-color:color-mix(in srgb, var(--accent) 34%, var(--line));background:var(--accent-soft)}.status-text.missing{color:var(--muted)}.topbar h1{margin-top:4px;font-size:clamp(34px,4vw,50px);line-height:1.02}.top-actions,.inline-actions,.filter-row,.run-actions,.row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sync-state{color:var(--muted);white-space:nowrap;font-size:13px;font-weight:700}.run-control{grid-template-columns:minmax(220px,320px) auto;align-items:end;gap:12px;display:grid}.run-control button{min-width:132px}.inline-run-control{grid-template-columns:minmax(200px,260px) auto}.setup-required,.onboarding-strip,.keyword-form-panel,.next-action-panel,.empty-panel,.toolbar-panel,.list-panel,.page-head,.settings-intro,.settings-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:18px}.setup-required{border-color:color-mix(in srgb, var(--accent) 24%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--accent-soft) 78%, transparent), transparent 72%), var(--surface);grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:stretch;gap:24px;min-height:420px;padding:30px;display:grid;overflow:hidden}.onboarding-strip{background:color-mix(in srgb, var(--surface) 88%, var(--accent-soft));grid-template-columns:180px minmax(0,1fr);align-items:center;gap:16px;padding:14px;display:grid}.onboarding-strip>strong{padding-left:8px;font-size:14px}.onboarding-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.onboarding-steps button{text-align:left;white-space:normal;border:1px solid var(--line);background:var(--surface);grid-template-columns:auto minmax(0,1fr);grid-template-areas:"num label""num status";justify-content:start;gap:2px 10px;min-height:58px;padding:10px;display:grid}.onboarding-steps button span{background:var(--surface-soft);width:34px;height:34px;color:var(--muted);border-radius:12px;grid-area:num;align-self:center;place-items:center;font-size:12px;display:inline-grid}.onboarding-steps button b{text-overflow:ellipsis;grid-area:label;overflow:hidden}.onboarding-steps button small{color:var(--muted);grid-area:status;font-size:12px}.onboarding-steps button.done span,.onboarding-steps button.active span{color:var(--accent-strong);background:var(--accent-soft)}.onboarding-steps button.active{border-color:color-mix(in srgb, var(--accent) 38%, var(--line));box-shadow:inset 0 1px #ffffff80}.onboarding-steps button.locked{opacity:.7}.onboarding-steps button.locked:hover{border-color:var(--line);background:var(--surface);box-shadow:none}.setup-copy{align-content:center;justify-items:start;gap:18px;max-width:760px;display:grid}.eyebrow{width:fit-content;min-height:28px;color:var(--accent-strong);border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));background:var(--accent-soft);border-radius:999px;align-items:center;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.setup-required h2{max-width:12ch;font-size:clamp(42px,7vw,76px);line-height:.98}.setup-required p{max-width:58ch;font-size:17px}.setup-main-action{border-radius:16px;min-height:52px;padding:0 22px;font-size:16px}.setup-key-form{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--line));background:color-mix(in srgb, var(--surface) 88%, var(--accent-soft));border-radius:20px;gap:14px;width:min(100%,620px);padding:18px;display:grid;box-shadow:inset 0 1px #ffffffa8,0 18px 42px #182b2612}.signup-callout{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--line));background:color-mix(in srgb, var(--surface) 86%, var(--accent-soft));border-radius:18px;justify-items:start;gap:10px;width:min(100%,620px);padding:16px 18px;display:grid}.signup-callout span{color:var(--ink);font-weight:850;line-height:1.55}.setup-steps{border:1px solid color-mix(in srgb, var(--accent) 20%, var(--line));background:color-mix(in srgb, var(--surface) 82%, var(--accent-soft));border-radius:18px;align-content:center;gap:18px;padding:24px;display:grid;box-shadow:inset 0 1px #fff9}.setup-steps>strong{font-size:18px}.setup-steps ol{gap:12px;margin:0;padding:0;list-style:none;display:grid}.setup-steps li{border:1px solid var(--line);background:var(--surface);border-radius:14px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;min-height:56px;padding:10px 12px;font-weight:800;display:grid}.setup-steps li span{width:36px;height:36px;color:var(--accent-strong);background:var(--accent-soft);border-radius:12px;place-items:center;font-size:12px;display:inline-grid}.empty-panel,.page-head,.next-action-panel{justify-content:space-between;align-items:center;gap:20px;padding:22px;display:flex}.next-action-panel{min-height:160px;padding:28px}.next-action-panel>div:first-child{gap:12px;display:grid}.next-action-panel h2{margin:0;font-size:clamp(28px,4vw,44px);line-height:1.05}.next-action-panel p{max-width:62ch;color:var(--muted);margin:0;line-height:1.65}.keyword-form-panel{border-color:color-mix(in srgb, var(--accent) 28%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--accent-soft) 72%, transparent), transparent 70%), var(--surface);box-shadow:var(--shadow);grid-template-columns:1fr;gap:22px;padding:28px;display:grid}.keyword-form-copy{align-content:start;justify-items:start;gap:12px;max-width:720px;display:grid}.keyword-form-copy h2{margin:0;font-size:clamp(30px,4vw,46px);line-height:1.02}.keyword-form-copy p{color:var(--muted);margin:0;line-height:1.65}.keyword-form{border:1px solid color-mix(in srgb, var(--accent) 24%, var(--line));background:var(--surface);border-radius:18px;gap:16px;max-width:820px;padding:20px;display:grid;box-shadow:inset 0 1px #ffffffa8,0 16px 36px #182b260f}.page-stack{gap:16px;display:grid}.summary-strip{border:1px solid var(--line);background:var(--line);border-radius:18px;grid-template-columns:repeat(4,1fr);gap:1px;display:grid;overflow:hidden}.metric{background:var(--surface);gap:6px;min-height:92px;padding:18px;display:grid}.metric strong{font-size:36px;line-height:1}.metric span{color:var(--muted);font-size:14px}.toolbar-panel{justify-content:space-between;gap:16px;padding:16px;display:flex}.filter-row select{min-width:160px}.list-panel{overflow:hidden}.post-row,.keyword-row,.run-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:20px;display:grid}.post-row:last-child,.keyword-row:last-child,.run-row:last-child{border-bottom:0}.post-main{gap:12px;display:grid}.post-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:9px;font-size:13px;display:flex}.post-meta strong{color:var(--ink);font-size:16px}.post-row p{max-width:76ch;font-size:18px;line-height:1.55}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips span,.post-meta span{width:fit-content;color:var(--muted);border:1px solid var(--line);background:var(--surface-soft);border-radius:999px;padding:4px 8px;font-size:12px;font-weight:700}.keyword-row small,.run-row time,.error-text,.inline-actions span{color:var(--muted)}.empty-state{text-align:center;align-content:center;place-items:center;gap:10px;min-height:260px;padding:28px;display:grid}.settings-form{gap:20px;display:grid}.settings-intro{background:linear-gradient(135deg, color-mix(in srgb, var(--accent-soft) 62%, transparent), transparent 76%), var(--surface);padding:24px 28px}.settings-intro>div{justify-items:start;gap:12px;display:grid}.settings-intro h2{font-size:clamp(30px,4vw,48px);line-height:1.05}.connection-panel{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--accent-soft) 76%, transparent), transparent 72%), var(--surface);box-shadow:var(--shadow);border-radius:24px;grid-template-columns:minmax(0,.9fr) minmax(340px,1.1fr);gap:24px;padding:28px;display:grid}.connection-copy,.api-key-card,.settings-card{gap:16px;display:grid}.connection-copy{align-content:start}.connection-copy h2{font-size:clamp(34px,4vw,54px);line-height:1.02}.api-key-card{border:1px solid color-mix(in srgb, var(--accent) 24%, var(--line));background:var(--surface);border-radius:20px;align-content:start;padding:22px;box-shadow:inset 0 1px #ffffffa8,0 18px 42px #182b2612}.section-head{justify-content:space-between;align-items:start;gap:18px;display:flex}.settings-form a,.signup-link{color:var(--accent-strong);font-weight:800}.signup-link{text-underline-offset:4px;width:fit-content}.settings-status{border:1px solid var(--line);background:var(--surface-soft);width:fit-content;color:var(--muted);border-radius:999px;flex:none;padding:6px 10px;font-size:12px;font-weight:800}.settings-status.ready{color:var(--accent-strong);border-color:color-mix(in srgb, var(--accent) 34%, var(--line));background:var(--accent-soft)}.settings-meta{border:1px solid var(--line);background:var(--surface-soft);border-radius:14px;gap:4px;padding:14px;display:grid}.settings-meta span{color:var(--muted);font-size:12px;font-weight:800}.settings-meta strong{overflow-wrap:anywhere;font-size:14px}.api-key-input{border-radius:16px;min-height:56px;font-family:Geist Mono,SFMono-Regular,Consolas,monospace;font-size:15px;font-weight:700}.saved-key{border:1px solid var(--line);background:var(--surface-soft);border-radius:14px;gap:6px;padding:14px;display:grid}.saved-key span{color:var(--muted);font-size:12px;font-weight:900}.saved-key strong{overflow-wrap:anywhere;font-family:Geist Mono,SFMono-Regular,Consolas,monospace;font-size:13px}.connection-actions{flex-wrap:wrap;gap:10px;display:flex}.connection-actions>*{flex:160px}.settings-grid{grid-template-columns:1fr;gap:20px;display:grid}.settings-card{align-content:start;padding:22px}.account-card button{width:fit-content}.notice{z-index:40;border:1px solid var(--line);background:var(--surface);max-width:min(460px,100vw - 44px);box-shadow:var(--shadow);border-radius:14px;align-items:center;gap:12px;padding:12px;display:flex;position:fixed;bottom:22px;right:22px}.notice.good{border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}.notice.bad,.error-text{color:var(--danger)}@media (width<=860px){.app-shell{grid-template-columns:1fr}.side-nav{height:auto;padding:12px;position:static}.brand{padding:8px}.side-nav nav{grid-template-columns:repeat(4,1fr)}.side-nav button{justify-content:center;min-height:42px;padding:0 8px;font-size:13px}.main{padding:18px 14px 34px}.topbar,.empty-panel,.next-action-panel,.page-head,.toolbar-panel{grid-template-columns:1fr;display:grid}.setup-required,.onboarding-strip,.keyword-form-panel,.connection-panel,.settings-grid{grid-template-columns:1fr}.onboarding-strip{align-items:start}.onboarding-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.setup-required{min-height:auto;padding:22px}.setup-required h2{max-width:14ch}.section-head{display:grid}.summary-strip{grid-template-columns:repeat(2,1fr)}.post-row,.keyword-row,.run-row{grid-template-columns:1fr}.row-actions{align-items:stretch}.row-actions>*{flex:130px}}@media (width<=430px){.topbar h1{font-size:34px}.top-actions{grid-template-columns:1fr;display:grid}.top-actions>*{width:100%}.setup-required h2{font-size:38px}.setup-steps,.onboarding-strip,.keyword-form-panel,.next-action-panel,.keyword-form,.api-key-card,.settings-intro,.connection-panel,.settings-card{padding:16px}.summary-strip{grid-template-columns:1fr}.filter-row,.run-actions,.run-control,.inline-actions,.onboarding-steps,.connection-actions{grid-template-columns:1fr;display:grid}.auth-card{padding:22px}}
