:root{--sans:ui-sans-system, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;--bg:#faf8ff;--bg-soft:#f3efff;--surface:#fff;--surface-2:#f6f2ff;--ink:#221c3a;--muted:#6f6690;--primary:#7c3aed;--primary-ink:#fff;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0e0b1a;--bg-soft:#141024;--surface:#1a1430;--surface-2:#221a3d;--ink:#efeaff;--muted:#a79fc9;--primary:#a78bfa;--primary-ink:#1a1033;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-palette=finsight]{--bg:#f2f3ee;--bg-soft:#e9ebe2;--surface:#fbfbf8;--surface-2:#eef0e8;--ink:#26352a;--muted:#6b756b;--primary:#b65d45;--primary-ink:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-palette=finsight][data-theme=dark]{--bg:#131814;--bg-soft:#1b221d;--surface:#1c231e;--surface-2:#232b25;--ink:#e8ece7;--muted:#9aa79b;--primary:#d77a5c;--primary-ink:#1a0f0a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-palette=forest]{--bg:#f3f7f4;--bg-soft:#e8f0ea;--surface:#fff;--surface-2:#eef4f0;--ink:#16241d;--muted:#5f7268;--primary:#2e7d5b;--primary-ink:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-palette=forest][data-theme=dark]{--bg:#0b1512;--bg-soft:#0f1d18;--surface:#12241d;--surface-2:#17302a;--ink:#e4efe9;--muted:#8fa89c;--primary:#5ec394;--primary-ink:#08211a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--primary-2:color-mix(in srgb, var(--primary) 78%, #fff);--primary-soft:color-mix(in srgb, var(--primary) 12%, transparent);--border:color-mix(in srgb, var(--primary) 16%, transparent);--user-bubble:linear-gradient(135deg, var(--primary), var(--primary-2));--shadow:0 12px 32px -12px color-mix(in srgb, var(--primary) 26%, transparent);--banner:linear-gradient(135deg, color-mix(in srgb, var(--primary) 80%, #000) 0%, var(--primary) 55%, var(--primary-2) 100%)}:root[data-theme=dark]{--banner:linear-gradient(135deg, color-mix(in srgb, var(--primary) 55%, #000) 0%, color-mix(in srgb, var(--primary) 78%, #000) 55%, var(--primary) 100%)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--bg:#0e0b1a;--bg-soft:#141024;--surface:#1a1430;--surface-2:#221a3d;--ink:#efeaff;--muted:#a79fc9;--primary:#a78bfa;--primary-ink:#1a1033;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{font-family:var(--sans);color:var(--ink);background:radial-gradient(1200px 500px at 50% -10%, var(--bg-soft), var(--bg));min-height:100svh;margin:0}#root{flex-direction:column;min-height:100svh;display:flex}.shell{flex-direction:column;flex:1;width:100%;max-width:1160px;margin:0 auto;padding:0 20px 24px;display:flex}.muted{color:var(--muted)}.small{font-size:13px}a{color:var(--primary)}.topbar{z-index:10;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);margin:0;padding:14px 0;position:sticky;top:0}.topbar-inner{align-items:center;gap:16px;margin:0;padding:0 12px;display:flex}.brand{letter-spacing:.5px;color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-family:inherit;font-size:20px;font-weight:800;display:flex}.brand-star{background:var(--user-bubble);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:22px}.topnav{background:var(--surface);border:1px solid var(--border);border-radius:999px;gap:4px;padding:3px;display:flex}.topnav button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 16px;font-size:14px}.topnav button.on{background:var(--user-bubble);color:#fff;font-weight:600}.topright{align-items:center;gap:10px;margin-left:auto;display:flex}.status{color:var(--muted);font-size:12px}.status.ok{color:#16a34a}.status.bad{color:#dc2626}.theme-btn{border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:6px 14px;font-size:13px}.theme-btn:hover{border-color:var(--primary)}.top-link{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit;font-size:13px}.top-link:hover{color:var(--primary)}.icon-btn{color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:2px 4px;font-family:inherit;font-size:16px;line-height:1}.icon-btn:hover{background:var(--primary-soft)}.moon-ico{vertical-align:-1px;border-radius:50%;width:13px;height:13px;display:inline-block;box-shadow:inset -3px -2px}.page{flex:1;padding:28px 0}.banner{background:var(--banner);color:#fff;box-shadow:var(--shadow);border-radius:24px;padding:56px 48px;position:relative;overflow:hidden}.banner-glow{pointer-events:none;background:radial-gradient(500px 220px at 85% 10%,#ffffff40,#0000),radial-gradient(400px 300px at 10% 100%,#0003,#0000);position:absolute;inset:0}.banner-kicker{letter-spacing:4px;opacity:.8;margin:0 0 12px;font-size:12px}.banner h1{margin:0 0 12px;font-size:44px;font-weight:800;line-height:1.25}.banner-sub{opacity:.9;margin:0 0 24px;font-size:16px}.banner-cta{gap:12px;display:flex}.btn-primary{cursor:pointer;background:var(--user-bubble);color:#fff;box-shadow:0 8px 20px -8px color-mix(in srgb, var(--primary) 60%, transparent);border:0;border-radius:12px;padding:10px 22px;font-size:15px;font-weight:700}.btn-primary:disabled{opacity:.6;cursor:default}.btn-danger{cursor:pointer;color:#fff;background:linear-gradient(135deg,#dc2626,#ef4444);border:0;border-radius:12px;padding:10px 22px;font-size:15px;font-weight:700;box-shadow:0 8px 20px -8px #dc262699}.btn-danger:hover{filter:brightness(1.08)}.btn-primary.block,.btn-ghost.block{width:100%}.banner .btn-primary{color:var(--primary);box-shadow:none;background:#fff}.btn-ghost{border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:12px;padding:10px 22px;font-size:15px}.banner .btn-ghost{color:#fff;background:#ffffff29;border-color:#fff6}.cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:20px;display:grid}.tool-card{background:var(--surface);border:1px solid var(--border);cursor:pointer;box-shadow:var(--shadow);border-radius:20px;padding:28px;transition:transform .15s,box-shadow .15s}.tool-card:hover{transform:translateY(-3px)}.tool-icon{margin-bottom:12px;font-size:32px}.tool-card h3{margin:0 0 8px;font-size:20px}.tool-card p{color:var(--muted);margin:0 0 16px;font-size:14px;line-height:1.7}.tool-go{color:var(--primary);font-weight:700}.footer{text-align:center;border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:2px;padding:20px 20px 24px;font-size:13px;display:flex}.site-footer p{color:var(--muted);margin:2px 0}.site-footer a{color:var(--muted);text-decoration:none}.site-footer a:hover{color:var(--primary)}.panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:18px}input,textarea,select{background:var(--surface-2);color:var(--ink);border:1px solid var(--border);border-radius:10px;width:100%;padding:8px 12px;font-family:inherit;font-size:14px}input:focus,textarea:focus{outline:2px solid var(--primary);border-color:#0000}textarea{resize:vertical}.theme-radio{width:auto;accent-color:var(--primary)}.link{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:13px}.link.danger{color:#dc2626}.err{color:#b91c1c;white-space:pre-wrap;background:#dc262612;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:13px}.chat-page{flex-direction:column;gap:14px;display:flex}.ctabs{background:var(--surface);border:1px solid var(--border);width:fit-content;box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:4px;padding:4px;display:flex}.ctabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 22px;font-size:14px;font-weight:600}.ctabs button.on{background:var(--user-bubble);color:#fff;box-shadow:0 6px 14px -6px color-mix(in srgb, var(--primary) 55%, transparent)}.chat-grid{grid-template-columns:240px minmax(0,1fr) 230px;align-items:stretch;gap:14px;display:grid}.side{flex-direction:column;gap:10px;max-height:78vh;padding:14px;display:flex}.side-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.side-top .font-ctl{margin-left:0}.sess-list{flex-direction:column;gap:1px;padding-right:2px;display:flex;overflow:auto}.sess{cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:6px;padding:8px 10px;font-size:14px;display:flex}.sess:hover{background:var(--surface-2)}.sess.on{background:var(--primary-soft);font-weight:600}.sess-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sess i{cursor:pointer;color:var(--muted);opacity:0;border-radius:6px;padding:2px 4px;font-size:12px;font-style:normal;transition:opacity .12s}.sess:hover i,.sess.on i{opacity:1}.sess i:hover{color:#dc2626;background:#dc262614}.chat-main{flex-direction:column;min-height:62vh;max-height:78vh;display:flex;overflow:hidden}.chat-toolbar{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:nowrap;align-items:center;gap:6px;padding:10px 12px;display:flex}.chat-toolbar .title-input{flex:auto;min-width:60px;font-weight:700}.chat-toolbar select,.chat-toolbar .chk,.chat-toolbar .btn-small{flex:none}.chat-toolbar select{text-overflow:ellipsis;width:auto;max-width:138px}.chat-toolbar .btn-small{white-space:nowrap;padding:7px 10px;font-size:13px}.chat-toolbar .chk{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;font-size:13px;display:flex}.chat-toolbar .chk input{width:auto;accent-color:var(--primary)}.font-ctl{color:var(--muted);align-items:center;gap:6px;margin-left:auto;font-size:12px;display:flex}.font-ctl button{border:1px solid var(--border);background:var(--surface-2);color:var(--ink);cursor:pointer;border-radius:8px;padding:3px 9px;font-size:12px}.font-ctl button:hover{border-color:var(--primary);color:var(--primary)}.sys-banner{color:var(--muted);background:var(--surface-2);border:1px dashed var(--border);text-overflow:ellipsis;white-space:nowrap;border-radius:10px;margin:10px 14px 0;padding:8px 12px;font-size:12.5px;overflow:hidden}.sys-banner.open{white-space:normal;word-break:break-word;max-height:40vh;overflow:auto}.empty{text-align:center;color:var(--muted);margin:auto;padding:40px}.empty-star{background:var(--user-bubble);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:44px}.msgs{scroll-behavior:auto;flex-direction:column;flex:1;gap:12px;padding:18px;display:flex;overflow:auto}.bubble{max-width:86%;font-size:inherit;border-radius:16px;padding:12px 16px;line-height:1.75;animation:.18s ease-out bubble-in;position:relative}@keyframes bubble-in{0%{opacity:0;transform:translateY(5px)}}.bubble pre{white-space:pre-wrap;word-break:break-word;margin:0;font-family:inherit}.bubble.user{background:var(--user-bubble);color:#fff;box-shadow:0 8px 18px -10px color-mix(in srgb, var(--primary) 55%, transparent);border-bottom-right-radius:4px;align-self:flex-end}.bubble.assistant{background:var(--surface-2);border:1px solid var(--border);border-bottom-left-radius:4px;align-self:flex-start}.bubble.hi{outline-offset:1px;outline:3px solid #f1c40f}.bubble-edit{border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;opacity:0;border-radius:999px;padding:1px 8px;font-size:11px;transition:opacity .12s;position:absolute;top:-9px;right:8px}.bubble:hover .bubble-edit{opacity:1}.bubble-edit:hover{color:var(--primary);border-color:var(--primary)}.thinking{max-width:86%;color:var(--muted);border:1px dashed var(--border);background:color-mix(in srgb, var(--surface-2) 60%, transparent);border-radius:12px;align-self:flex-start;padding:8px 12px;font-size:.88em}.thinking summary{cursor:pointer}.thinking-dots span{font-weight:800;animation:1.2s infinite blink}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}.thinking pre{white-space:pre-wrap;word-break:break-word;font-family:inherit}.composer{border-top:1px solid var(--border);background:var(--surface);align-items:stretch;gap:10px;padding:14px 16px;display:flex}.composer textarea{resize:none;flex:1}.composer .btn-primary{white-space:nowrap}.chat-grid.focus{z-index:40;background:var(--bg);grid-template-columns:minmax(0,1fr) 260px;align-items:stretch;height:100vh;padding:16px;position:fixed;inset:0}.chat-grid.focus .side{display:none}.chat-grid.focus .chat-main,.chat-grid.focus .nav-panel{height:100%;min-height:0;max-height:none;overflow:hidden}.chat-grid.focus .nav-list{flex:1;min-height:0;overflow:auto}.nav-panel{flex-direction:column;max-height:78vh;padding:14px;display:flex;overflow:hidden}.nav-panel h4{margin:0 0 2px;font-size:14px}.nav-count{margin:2px 0 10px}.nav-list{flex-direction:column;flex:1;gap:1px;min-height:0;display:flex;overflow:auto}.nav-item{cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:5px 10px;font-size:13px;display:flex}.nav-item:hover{background:var(--surface-2)}.nav-item.hi{background:#f1c40f24}.nav-idx{background:var(--primary-soft);width:22px;height:22px;color:var(--primary);border-radius:7px;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:flex}.nav-txt{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);flex:1;overflow:hidden}.nav-item i{color:var(--muted);border-radius:6px;padding:2px 5px;font-size:11px;font-style:normal}.nav-item i:hover{color:#dc2626;background:#dc26261a}.nav-tip{z-index:60;background:var(--ink);max-width:340px;max-height:min(60vh,480px);color:var(--bg);word-break:break-all;box-shadow:var(--shadow);pointer-events:auto;border-radius:12px;padding:8px 12px;font-size:13px;line-height:1.7;animation:.12s ease-out bubble-in;position:fixed;overflow:auto}.nav-tip.wide{max-width:560px}.nav-tip a{color:var(--primary-2)}.nav-tip p{margin:4px 0}.nav-tip h1{margin:6px 0 4px;font-size:16px}.nav-tip h2{margin:6px 0 4px;font-size:15px}.nav-tip h3,.nav-tip h4{margin:6px 0 4px;font-size:14px}.nav-tip ul,.nav-tip ol{margin:4px 0;padding-left:18px}.nav-tip li{margin:1px 0}.nav-tip pre{white-space:pre-wrap;margin:6px 0;padding:8px 10px}.nav-tip blockquote{margin:6px 0;padding:4px 10px}.nav-tip hr{margin:8px 0}.nav-tip th,.nav-tip td{padding:5px 8px}.nav-tip table{font-size:12.5px}.modal-mask{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#140a2873;justify-content:center;align-items:center;padding:20px;animation:.15s ease-out fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}}.modal{background:var(--surface);border:1px solid var(--border);width:min(760px,94vw);box-shadow:var(--shadow);border-radius:20px;padding:22px;animation:.18s ease-out bubble-in}.modal h3{margin:0 0 12px;font-size:17px}.modal.confirm{text-align:center;width:min(380px,92vw);padding:28px 24px 22px;animation:.18s ease-out pop-in}@keyframes pop-in{0%{opacity:0;transform:scale(.92)translateY(10px)}}.confirm-icon{color:#dc2626;background:#dc26261a;border-radius:50%;width:52px;height:52px;margin:0 auto 12px;font-size:26px;font-weight:800;line-height:52px}.confirm-title{margin:0 0 6px!important;font-size:17px!important}.confirm-text{word-break:break-all;margin:0 0 4px;font-size:14px;line-height:1.8}.confirm-note{color:var(--muted);margin:0 0 20px;font-size:12.5px}.modal.confirm .modal-btns{justify-content:stretch;gap:12px}.modal.confirm .modal-btns .btn-ghost,.modal.confirm .modal-btns .btn-danger{flex:1;padding:10px 0}.modal textarea{min-height:320px}.modal-btns{justify-content:flex-end;gap:10px;margin-top:12px;display:flex}.prompt-mgr{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:0;min-height:62vh;display:grid;overflow:hidden}.pm-left{border-right:1px solid var(--border);flex-direction:column;gap:10px;min-height:0;padding:16px;display:flex}.pm-topbar{justify-content:space-between;align-items:center;display:flex}.pm-topbar h4{margin:0;font-size:14px}.pm-list{flex-direction:column;flex:1;gap:6px;min-height:200px;max-height:56vh;display:flex;overflow:auto}.pm-list.plain{flex:none;gap:1px;height:480px;min-height:0;max-height:none}.pm-list.plain .pm-item{cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:14px;display:flex}.pm-list.plain .pm-item:hover{background:0 0}.pm-list.plain .pm-item.on{background:var(--primary-soft);font-weight:600}.pm-item.drop-before{box-shadow:0 -2px 0 var(--primary);border-radius:0}.pm-item.dragging{opacity:.4}.drag-handle{cursor:grab;color:var(--muted);letter-spacing:1px;-webkit-user-select:none;user-select:none;flex:none;font-size:11px}.pm-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.row-ops{opacity:0;gap:0;transition:opacity .12s;display:flex}.pm-item:hover .row-ops,.pm-item.on .row-ops,.row-ops.show{opacity:1}.row-ops .link{padding:2px 5px;font-size:14px;text-decoration:none}.pm-list .row-ops .danger{color:var(--muted);font-size:12px;font-style:normal}.pm-list .row-ops .danger:hover{color:#dc2626}.pm-nameedit{gap:6px;display:flex}.pm-nameedit input{flex:1}.pm-btns{flex-wrap:wrap;gap:6px;display:flex}.pm-right{flex-direction:column;gap:10px;min-width:0;padding:16px;display:flex}.pm-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.pm-head b{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.pm-title-input{flex:none;width:220px;font-weight:700}.pm-title-input:disabled{opacity:.6}.pm-head-right{flex:none;align-items:center;gap:8px;display:flex}.pm-right textarea{resize:vertical;height:480px;line-height:1.8}.pm-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.pm-empty{margin:auto}.md-view{height:480px;font-size:14px;line-height:1.8;overflow:auto}.md-view p{margin:8px 0}.md-view h1{margin:14px 0 8px;font-size:20px}.md-view h2{margin:14px 0 8px;font-size:18px}.md-view h3{margin:12px 0 6px;font-size:16px}.md-view h4{margin:12px 0 6px;font-size:15px}.md-view ul,.md-view ol{margin:8px 0;padding-left:22px}.md-view li{margin:3px 0}.md-view a{color:var(--primary)}.md-view hr{border:0;border-top:1px solid var(--border);margin:14px 0}.md-view blockquote{border-left:3px solid var(--primary);color:var(--muted);background:var(--surface-2);border-radius:0 8px 8px 0;margin:10px 0;padding:6px 12px}.md-view code{background:var(--primary-soft);color:var(--primary);border-radius:6px;padding:1px 6px;font-size:.9em}.md-view pre{color:#efeaff;background:#17122b;border-radius:10px;padding:12px 14px;font-size:13px;overflow:auto}.md-view pre code{color:inherit;background:0 0;padding:0}.md-table-wrap{border:1px solid var(--border);border-radius:10px;margin:10px 0;overflow-x:auto}.md-view table{border-collapse:collapse;width:100%;font-size:13.5px}.md-view th,.md-view td{border:1px solid var(--border);text-align:left;padding:7px 10px}.md-view th{background:var(--surface-2);font-weight:700}.msg-md{height:auto;font-size:inherit;line-height:inherit;min-height:0;overflow:auto}.msg-md>:first-child{margin-top:0}.msg-md>:last-child{margin-bottom:0}.msg-md pre{white-space:pre-wrap;word-break:break-word}.bubble.user .msg-md a{color:#fff}.bubble.user .msg-md code{color:#fff;background:#ffffff38}.bubble.user .msg-md pre{color:#fff;background:#00000047}.bubble.user .msg-md pre code{background:0 0}.bubble.user .msg-md th{background:#ffffff29}.bubble.user .msg-md th,.bubble.user .msg-md td{border-color:#ffffff59}.bubble.user .msg-md blockquote{color:inherit;background:#ffffff1f;border-left-color:#ffffffa6}.dl-wrap{flex-direction:column;gap:16px;display:flex}.dl-hero{align-items:center;gap:18px;padding:26px 28px;display:flex}.dl-hero-icon{background:var(--user-bubble);color:#fff;width:58px;height:58px;box-shadow:var(--shadow);border-radius:18px;flex:none;justify-content:center;align-items:center;font-size:26px;display:flex}.dl-hero h2{margin:0 0 4px;font-size:24px}.dl-hero p{margin:0;font-size:14px}.ck-card{padding:14px 18px}.ck-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.ck-status{color:var(--muted);font-size:13px}.ck-status.ok{color:#16a34a}.ck-status.bad{color:#dc2626}.ck-row select{width:auto}.ck-paste{flex-direction:column;gap:8px;margin-top:12px;display:flex}.ck-sites{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.ck-site{color:var(--muted);background:var(--primary-soft);border-radius:6px;padding:1px 8px;font-size:12px}.ck-site.ok{color:#16a34a}.ck-warn{color:#b45309;margin:10px 0 0;font-size:13px}.jobs-list{flex-direction:column;gap:8px;margin-top:12px;display:flex}.jrow{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;display:flex}.jrow.error{border-color:#dc262666}.jrow .pill{text-align:center;min-width:56px}.jrow-main{flex:1;min-width:200px}.jrow .job-url{margin:0 0 4px}.bar.slim{height:4px}.jrow-meta{min-width:92px;color:var(--muted);white-space:nowrap;text-align:right;font-size:12px}.jrow .dl-btns{justify-content:flex-end;min-width:196px}.jrow-err{color:#b45309;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:12px;overflow:hidden}.ck-paste .btn-small{align-self:flex-end}.dl-steps{grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding:0;list-style:none;display:grid}.dl-steps li{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:14px;padding:12px 14px;font-size:13px}.dl-steps b{letter-spacing:1px;color:var(--primary);margin-bottom:3px;font-size:11px;display:block}.dl-input{padding:18px}.dl-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.dl-btns{gap:8px;margin-left:auto;display:flex}.dl-jobs h3{align-items:center;gap:8px;margin:8px 2px 0;font-size:16px;display:flex}.pulse{color:var(--primary);font-size:12px;animation:1.2s infinite blink}@keyframes blink{50%{opacity:.25}}.job-url{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);margin:0 0 10px;font-size:13px;overflow:hidden}.site{color:var(--primary);background:var(--primary-soft);border-radius:6px;margin-right:8px;padding:1px 7px;font-size:11px;font-weight:700;display:inline-block}.btn-small{padding:7px 16px;font-size:13px;text-decoration:none;display:inline-block}.dl-empty{border:1.5px dashed var(--border);text-align:center;border-radius:16px;margin-top:12px;padding:36px}.dl-empty-icon{margin-bottom:8px;font-size:34px}.dl-empty p{margin:0}.more-link{background:var(--surface);border:1px solid var(--border);width:100%;color:var(--primary);cursor:pointer;border-radius:14px;margin-top:12px;padding:12px;font-size:14px;font-weight:700;display:block}.more-link:hover{border-color:var(--primary)}.dl-hist-head{flex-wrap:wrap;align-items:center;gap:14px;padding:16px 20px;display:flex}.dl-hist-head h2{flex:1;margin:0;font-size:20px}.pager{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:8px 0 4px;display:flex}.video-modal{width:calc(100vw - 48px);max-width:860px}.video-modal video{background:#000;border-radius:12px;width:100%;max-height:70vh}.job-url{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:13px;overflow:hidden}.pill{background:var(--primary-soft);color:var(--primary);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700}.pill.done{color:#16a34a;background:#16a34a24}.pill.error{color:#dc2626;background:#dc26261f}.bar{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.bar-fill{background:var(--user-bubble);height:100%;transition:width .4s}.bar-fill.live{background-image:linear-gradient(45deg,#ffffff4d 25%,#0000 25% 50%,#ffffff4d 50% 75%,#0000 75%);background-size:14px 14px;animation:.7s linear infinite stripes}@keyframes stripes{to{background-position:14px 0}}@media (width<=1100px){.chat-grid{grid-template-columns:200px minmax(0,1fr)}.chat-grid.focus{grid-template-columns:minmax(0,1fr);overflow:auto}.chat-grid.focus .nav-panel{max-height:40vh}.nav-panel{grid-column:1/-1;max-height:none}.nav-list{max-height:220px}}@media (width<=900px){.cards,.chat-grid{grid-template-columns:1fr}.side{max-height:none}.chat-main{max-height:78vh}.prompt-mgr{grid-template-columns:1fr}.pm-left{border-right:0;border-bottom:1px solid var(--border)}.banner{padding:36px 24px}.banner h1{font-size:30px}.xq-cols,.xq-board2{grid-template-columns:1fr}.xq-board2 .xq-right{order:-1}.xq-board2>aside{position:static}.xq-left{max-height:none}.xq-side{max-height:220px}}.xq-cols{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:14px;display:grid}.xq-side{max-height:78vh;padding:12px;overflow:auto}.xq-main{flex-direction:column;align-items:center;gap:10px;padding:16px;display:flex}.xq-title{align-self:flex-start;margin:0;font-size:17px}.xq-filters{gap:8px;margin-bottom:10px;display:flex}.xq-filters select{font-size:13px}.xq-list{flex-direction:column;gap:2px;display:flex}.xq-item{cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:7px 10px;font-size:13.5px;display:flex}.xq-item:hover{background:var(--surface-2)}.xq-item.on{background:var(--primary-soft);font-weight:600}.xq-tag{color:var(--primary);background:var(--primary-soft);border-radius:6px;flex:none;padding:1px 7px;font-size:11px;font-weight:700}.xq-item-t{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.xq-board{border:1px solid var(--border);width:100%;max-width:470px;box-shadow:var(--shadow);background:linear-gradient(160deg,#f7ecd2,#f3e2bd);border-radius:12px;padding:10px}:root[data-theme=dark] .xq-board{background:linear-gradient(160deg,#2a2118,#241c14)}.xq-board svg{width:100%;height:auto;display:block}.xq-svg-bg{fill:none}.xq-line{stroke:#5b4632;stroke-width:1.4px;opacity:.85}:root[data-theme=dark] .xq-line{stroke:#c9b48f}.xq-border{fill:none;stroke:#5b4632;stroke-width:3px}:root[data-theme=dark] .xq-border{stroke:#c9b48f}.xq-tick{stroke:#5b4632;stroke-width:1.4px;fill:none;opacity:.9}:root[data-theme=dark] .xq-tick{stroke:#c9b48f}.xq-river-t{letter-spacing:4px;fill:#5b4632;opacity:.75;font-size:23px}:root[data-theme=dark] .xq-river-t{fill:#c9b48f}.xq-file-n{fill:var(--muted);font-size:15px}.xq-file-n.r{fill:#dc2626;opacity:.85}.xq-pt{cursor:pointer}.xq-hov{fill:var(--primary);opacity:0}.xq-pt:hover .xq-hov{opacity:.18}.xq-move-dot{fill:#16a34a;opacity:.85}.xq-cap-ring{fill:none;stroke:#dc2626;stroke-width:3px;opacity:.85}.xq-last-ring{fill:none;stroke:#d97706;stroke-width:2.5px;stroke-dasharray:5 3;opacity:.9}.xq-pc-bg{fill:#fdf6e3;stroke-width:2.4px}.xq-pc-bg.r{stroke:#dc2626}.xq-pc-bg.b{stroke:#334155}:root[data-theme=dark] .xq-pc-bg{fill:#3a2f22}:root[data-theme=dark] .xq-pc-bg.b{stroke:#e2e8f0}.xq-pc.sel .xq-pc-bg{stroke:var(--primary);stroke-width:4px}.xq-pc-t{pointer-events:none;font-size:22px;font-weight:700}.xq-pc-t.r{fill:#dc2626}.xq-pc-t.b{fill:#1e293b}:root[data-theme=dark] .xq-pc-t.b{fill:#e2e8f0}.xq-msg{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;align-self:stretch;margin:0;padding:10px 12px;font-size:14px;line-height:1.7}.xq-msg .r,.xq-item-t.r{color:#dc2626}.xq-btns{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.xq-fenrow{align-self:stretch;gap:8px;display:flex}.xq-fenrow input{flex:1;font-size:12px}.xq-plan{flex-direction:column;gap:10px;padding:20px;display:flex}.xq-plan h4{margin:8px 0 2px}.xq-stat-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px;display:grid}.xq-stat{background:var(--surface-2);border:1px solid var(--border);text-align:center;border-radius:12px;flex-direction:column;gap:2px;padding:12px;display:flex}.xq-stat b{color:var(--primary);font-size:22px}.xq-stat span{color:var(--muted);font-size:12px}.xq-bar-row{grid-template-columns:60px 1fr 70px;align-items:center;gap:8px;font-size:13px;display:grid}.xq-board2{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:14px;display:grid}.xq-left{flex-direction:column;gap:10px;max-height:82vh;padding:12px;display:flex;overflow:auto}.xq-eval-score{color:var(--primary);font-size:30px;font-weight:800;line-height:1.2}.xq-moves{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;max-height:180px;margin:0;padding:8px 8px 8px 12px;font-size:13px;line-height:1.8;list-style:none;overflow:auto}.xq-moves .r{color:#dc2626}.xq-board2 .xq-board{max-width:680px}.xq-board2>aside{position:sticky;top:12px}.xq-side select,.xq-left select{width:100%;font-size:13px}.xq-recs{flex-direction:column;gap:8px;display:flex}.xq-rec{background:var(--surface-2);border:1px solid var(--border);cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex}.xq-rec:hover{border-color:var(--primary)}.xq-rec-m{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.xq-rec-t{font-size:14px;font-weight:600}.xq-badge{color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;font-weight:800;display:flex}.xq-badge.win{background:#16a34a}.xq-badge.loss{background:#dc2626}.xq-badge.draw{background:#64748b}.xq-switch{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;gap:3px;padding:3px;display:flex}.xq-switch button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:4px;padding:8px 4px;font-size:14px;font-weight:700;display:flex}.xq-switch button span{font-size:11px;font-weight:400}.xq-switch button.on.r{color:#dc2626;box-shadow:var(--shadow);background:#fef2f2}.xq-switch button.on.b{color:#fff;box-shadow:var(--shadow);background:#1e293b}.xq-levels{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.xq-levels button{border:1px solid var(--border);background:var(--surface-2);color:var(--ink);cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:1px;padding:7px 2px;font-size:13px;font-weight:700;display:flex}.xq-levels button span{color:var(--muted);font-size:10px;font-weight:400}.xq-levels button.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.xq-levels button.on span{color:var(--primary)}.xq-actions{flex-wrap:wrap;gap:6px;display:flex}.xq-actions button{flex:40%}.xq-curve{align-items:flex-end;gap:6px;min-height:100px;display:flex}.xq-curve-col{color:var(--muted);flex-direction:column;align-items:center;gap:2px;font-size:10px;display:flex}.xq-curve-bar{background:var(--user-bubble);border-radius:4px 4px 0 0;width:18px}.xq-plan-wrap{flex-direction:column;gap:14px;display:flex}.xq-rating{flex-wrap:wrap;align-items:center;gap:18px;padding:18px 20px;display:flex}.xq-rating-tier{color:var(--primary);background:var(--primary-soft);border-radius:16px;flex:none;padding:8px 20px;font-size:34px;font-weight:800}.xq-rating-mid{flex:1;min-width:200px}.xq-rating-mid .bar{margin:6px 0}.xq-rating-mid p{margin:0}.xq-rating-today{color:var(--muted);flex-wrap:wrap;gap:14px;font-size:13px;display:flex}.xq-rating-today b{color:var(--ink)}.xq-tasks{flex-direction:column;gap:8px;padding:16px 20px;display:flex}.xq-task{background:var(--surface-2);border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.xq-task.done{opacity:.75}.xq-task-check,.xq-task-icon{font-size:18px}.xq-task-t{flex:1;font-weight:600}.xq-eval{flex-direction:column;gap:10px;padding:16px 20px;display:flex}.xq-coachbar{flex-direction:column;align-self:stretch;gap:4px;display:flex}.xq-evalbar-wrap{flex-direction:column;gap:4px;display:flex}.xq-evalbar{border:1px solid var(--border);background:var(--surface-2);border-radius:999px;height:14px;display:flex;position:relative;overflow:hidden}.xq-evalbar-b{background:#1e293b}.xq-evalbar-r{background:#dc2626}.xq-evalbar-mid{background:var(--muted);opacity:.7;width:2px;position:absolute;top:-2px;bottom:-2px}.xq-verdict{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;align-self:stretch;margin:0;padding:8px 12px;font-size:14px}.xq-verdict.good{color:#16a34a;border-color:#16a34a}.xq-verdict.warn{color:#d97706;border-color:#d97706}.xq-verdict.bad{color:#dc2626;border-color:#dc2626}.xq-field{flex-direction:column;gap:6px;display:flex}.xq-field-t{color:var(--ink);font-size:13px;font-weight:700}.xq-check{color:var(--ink);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.xq-check input{width:15px;height:15px;accent-color:var(--primary)}.xq-postgame,.xq-report{flex-direction:column;gap:10px;margin-top:12px;padding:16px 18px;display:flex}.xq-post-stats{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.xq-acc{align-items:baseline;gap:6px;display:flex}.xq-acc b{color:var(--primary);font-size:30px;line-height:1}.xq-acc i{color:var(--muted);font-size:12px;font-style:normal}.xq-flagstat{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:3px 10px;font-size:13px}.xq-flagstat b{margin-left:2px}.xq-flagstat.最佳{color:#16a34a;border-color:#16a34a55}.xq-flagstat.好棋{color:var(--ink)}.xq-flagstat.疑问{color:#d97706;border-color:#d9770655}.xq-flagstat.失误{color:#ea580c;border-color:#ea580c55}.xq-flagstat.败着,.xq-flagstat.漏杀{color:#dc2626;border-color:#dc262655}.xq-tag.最佳{color:#16a34a;background:#16a34a1a}.xq-tag.疑问{color:#d97706;background:#d977061a}.xq-tag.失误{color:#ea580c;background:#ea580c1a}.xq-tag.败着,.xq-tag.漏杀{color:#dc2626;background:#dc26261a}.xq-phases{flex-wrap:wrap;gap:8px;display:flex}.xq-phase{color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:4px 9px;font-size:12.5px}.xq-blunders{margin:0;padding-left:20px;font-size:13.5px;line-height:1.9}.xq-blunders li::marker{color:#dc2626}.xq-mis-stats{margin:0 0 8px}.xq-mis-row{flex-direction:column;align-items:stretch;gap:2px}.xq-mis-line{align-items:center;gap:8px;min-width:0;display:flex}.xq-mis-sub{flex-wrap:wrap;gap:10px;display:flex}.xq-mis-sub span{white-space:nowrap}.xq-mis-ok{border-color:#16a34a}.xq-mis-del{color:#dc2626}.xq-mis-busy{opacity:.85}.xq-course-wrap{flex-direction:column;gap:14px;display:flex}.xq-course-warn{align-self:stretch}.xq-course-prog,.xq-course-steps,.xq-course-ref{flex-direction:column;gap:10px;padding:16px 18px;display:flex}.xq-course-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.xq-course-stat{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.xq-course-stat b{color:var(--primary);font-size:20px}.xq-course-stat span{color:var(--muted);font-size:12px}.xq-course-step{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;gap:12px;padding:12px 14px;display:flex}.xq-course-step.done{border-color:var(--primary)}.xq-course-no{width:30px;height:30px;color:var(--primary);background:var(--primary-soft);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.xq-course-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.xq-course-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.xq-course-head b{font-size:15px}.xq-course-points{color:var(--muted);margin:0;padding-left:18px;font-size:13px;line-height:1.7}.xq-course-table{border-collapse:collapse;width:100%;font-size:13px}.xq-course-table th,.xq-course-table td{border:1px solid var(--border);text-align:center;padding:6px 8px}.xq-course-table th{background:var(--surface-2);color:var(--muted);font-weight:600}.xq-course-table td{color:var(--primary);font-weight:700}.xq-course-note{color:var(--muted);margin:0;font-size:13px;line-height:1.8}.xq-course-note b{color:var(--primary)}.finance-scope{--f-bg:var(--bg);--f-surface:var(--surface);--f-panel:var(--surface-2);--f-panel-2:var(--surface-2);--f-ink:var(--ink);--f-ink-strong:var(--ink);--f-muted:var(--muted);--f-muted-2:var(--muted);--f-border:var(--border);--f-accent:var(--primary);--f-up:#e5484d;--f-down:#16a34a;color:var(--f-ink);background:var(--f-bg);font-synthesis:none;font-family:Georgia,Times New Roman,serif}.finance-scope *{box-sizing:border-box}.finance-scope{min-width:320px;margin:0}.finance-scope .app-shell{background:radial-gradient(circle at 85% 5%, color-mix(in srgb, var(--f-accent) 14%, transparent) 0, transparent 30%), var(--f-bg);grid-template-columns:244px 1fr;min-height:calc(100svh - 160px);display:grid}.finance-scope aside{border-right:1px solid var(--f-border);background:linear-gradient(180deg, color-mix(in srgb, var(--f-surface) 96%, transparent), color-mix(in srgb, var(--f-surface) 88%, transparent));flex-direction:column;padding:30px 18px 24px;display:flex}.finance-scope .brand{align-items:center;gap:10px;margin-bottom:30px;display:flex}.finance-scope .brand>span{background:var(--f-accent);color:#fff;letter-spacing:.02em;border-radius:8px;place-items:center;width:34px;height:34px;font:700 13px ui-sans-serif,sans-serif;display:grid}.finance-scope .brand strong{letter-spacing:-.01em;color:var(--f-ink-strong);font:700 20px/1.1 ui-sans-serif,sans-serif;display:block}.finance-scope .brand small{color:var(--f-muted-2);letter-spacing:.14em;text-transform:uppercase;margin-top:3px;font:10px ui-sans-serif,sans-serif;display:block}.finance-scope .sidebar-note,.finance-scope .eyebrow,.finance-scope .status-dot{letter-spacing:.12em;text-transform:uppercase;font:11px ui-sans-serif,sans-serif}.finance-scope .sidebar-hero{border-bottom:1px solid var(--f-border);margin-bottom:24px;padding-bottom:22px}.finance-scope .sidebar-hero .eyebrow{letter-spacing:.16em;margin-bottom:8px;font-size:10px}.finance-scope .sidebar-hero h1{letter-spacing:-.01em;color:var(--f-ink-strong);margin:0;font-size:21px;font-weight:500;line-height:1.4}.finance-scope nav{gap:4px;display:grid}.finance-scope nav a{color:var(--f-muted);border-radius:7px;align-items:center;gap:10px;padding:10px 12px;font:600 13.5px ui-sans-serif,sans-serif;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative}.finance-scope nav a:hover,.finance-scope nav a.active{background:var(--f-panel-2);color:var(--f-ink)}.finance-scope nav a.active:before{content:"";background:var(--f-accent);border-radius:0 2px 2px 0;width:3px;position:absolute;top:9px;bottom:9px;left:0}.finance-scope .sidebar-note{border-top:1px solid var(--f-border);color:var(--f-muted-2);margin-top:auto;padding-top:18px;line-height:1.7}.finance-scope .sidebar-note span{color:var(--f-accent);letter-spacing:0;text-transform:none;font-size:11px}.finance-scope main{width:min(100%,1400px);margin:0 auto;padding:46px clamp(24px,6vw,90px)}.finance-scope .eyebrow{color:var(--f-accent);margin:0 0 13px;font-weight:700}.finance-scope h1,.finance-scope h2{letter-spacing:-.02em;margin:0;font-weight:500}.finance-scope h1{font-size:clamp(32px,5vw,58px)}.finance-scope h2{margin-bottom:24px;font-size:32px}.finance-scope .dashboard-section{max-width:1200px}.finance-scope .section-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.finance-scope .section-heading h2{margin-bottom:0}.finance-scope .stock-count{color:var(--f-muted-2);letter-spacing:.12em;padding-bottom:5px;font:11px ui-sans-serif,sans-serif}.finance-scope .stock-search{border:1px solid var(--f-border);background:var(--f-surface);color:var(--f-muted-2);align-items:center;gap:12px;margin:29px 0 12px;padding:0 14px;display:flex}.finance-scope .stock-search-wrap{position:relative}.finance-scope .search-results{z-index:20;border:1px solid var(--f-border);background:var(--f-surface);max-height:320px;box-shadow:0 12px 24px color-mix(in srgb, var(--f-ink) 8%, transparent);border-top:0;position:absolute;left:0;right:0;overflow-y:auto}.finance-scope .search-result{border:0;border-bottom:1px solid var(--f-border);cursor:pointer;text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:11px 14px;display:flex}.finance-scope .search-result:last-child{border-bottom:0}.finance-scope .search-result:hover{background:var(--f-panel)}.finance-scope .search-result-name{color:var(--f-ink-strong);font:600 14px ui-sans-serif,sans-serif}.finance-scope .search-result-meta{color:var(--f-muted-2);font:11px ui-sans-serif,sans-serif}.finance-scope .search-hint{color:var(--f-muted-2);padding:12px 14px;font:12px ui-sans-serif,sans-serif;display:block}.finance-scope .stock-search:focus-within{border-color:var(--f-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--f-accent) 12%, transparent)}.finance-scope .stock-search input{min-width:0;height:48px;color:var(--f-ink);background:0 0;border:0;outline:0;flex:1;font:14px ui-sans-serif,sans-serif}.finance-scope .stock-search input::placeholder{color:var(--f-muted-2)}.finance-scope .stock-search button{background:var(--f-accent);color:#fff;cursor:pointer;border:0;place-items:center;width:30px;height:30px;display:grid}.finance-scope .stock-search button:hover{background:var(--f-accent)}.finance-scope .search-message{color:var(--f-accent);margin:0 0 12px;font:12px ui-sans-serif,sans-serif}.finance-scope .watchlist{border:1px solid var(--f-border);background:var(--f-surface);overflow-x:auto}.finance-scope .watchlist-header,.finance-scope .stock-row{grid-template-columns:minmax(190px,1.7fr) minmax(90px,.8fr) minmax(90px,.8fr) minmax(90px,.8fr) minmax(210px,1.7fr) 130px;align-items:center;gap:16px;padding:0 20px;display:grid}.finance-scope .watchlist-header{border-bottom:1px solid var(--f-border);min-height:40px;color:var(--f-muted-2);letter-spacing:.08em;text-transform:uppercase;font:11px ui-sans-serif,sans-serif}.finance-scope .stock-row{border-bottom:1px solid var(--f-border);min-height:108px;padding-top:10px;padding-bottom:10px;transition:background .15s,opacity .15s}.finance-scope .stock-row:last-child{border-bottom:0}.finance-scope .stock-row:hover{background:var(--f-panel-2)}.finance-scope .stock-row:active{opacity:.72}.finance-scope .stock-identity{align-items:center;gap:8px;min-width:0;display:flex}.finance-scope .drag-handle{color:var(--f-muted-2);cursor:grab;flex:none}.finance-scope .stock-name{width:fit-content;color:var(--f-ink-strong);font-size:17px;text-decoration:none;display:block}.finance-scope .stock-name:hover{color:var(--f-accent);text-underline-offset:4px;text-decoration:underline}.finance-scope .stock-symbol{color:var(--f-muted-2);letter-spacing:.08em;margin-top:5px;font:11px ui-sans-serif,sans-serif;display:block}.finance-scope .stock-price{font:600 15px ui-sans-serif,sans-serif}.finance-scope .change{align-items:center;gap:3px;width:fit-content;font:600 13px ui-sans-serif,sans-serif;display:inline-flex}.finance-scope .change.up{color:var(--f-up)}.finance-scope .change.down{color:var(--f-down)}.finance-scope .market-cap{color:var(--f-muted);font:13px ui-sans-serif,sans-serif}.finance-scope .analysis-link{width:fit-content;color:var(--f-accent);align-items:center;gap:5px;font:600 13px ui-sans-serif,sans-serif;text-decoration:none;display:inline-flex}.finance-scope .analysis-link:hover{color:var(--f-accent)}.finance-scope .row-actions{align-items:center;gap:10px;display:inline-flex}.finance-scope .delete-button{border:1px solid var(--f-border);width:28px;height:28px;color:var(--f-accent);cursor:pointer;background:0 0;place-items:center;display:grid}.finance-scope .delete-button:hover{background:color-mix(in srgb, var(--f-accent) 12%, transparent);border-color:var(--f-accent)}.finance-scope .section-actions{align-items:center;gap:12px;display:flex}.finance-scope .refresh-button{border:1px solid var(--f-border);background:var(--f-surface);color:var(--f-muted);cursor:pointer;align-items:center;gap:6px;padding:7px 12px;font:600 12px ui-sans-serif,sans-serif;display:inline-flex}.finance-scope .refresh-button:hover{border-color:var(--f-accent);color:var(--f-ink)}.finance-scope .refresh-button:disabled{opacity:.6;cursor:default}.finance-scope .spinning{animation:1s linear infinite spin}@keyframes spin{}.finance-scope .board-conclusions{gap:7px;display:grid}.finance-scope .conclusion-line{grid-template-columns:62px 1fr;align-items:center;gap:6px;display:grid}.finance-scope .conclusion-method{text-align:center;white-space:nowrap;background:var(--f-panel);color:var(--f-muted);padding:3px 6px;font:600 10px ui-sans-serif,sans-serif}.finance-scope .verdict-tag{text-align:center;white-space:nowrap;padding:3px 6px;font:600 10px ui-sans-serif,sans-serif;display:block}.finance-scope .verdict-tag.muted{background:var(--f-panel);color:var(--f-muted-2)}.finance-scope .state-panel{border:1px solid var(--f-border);background:var(--f-surface);color:var(--f-muted);justify-content:space-between;align-items:center;gap:16px;margin:12px 0;padding:22px;font:13px ui-sans-serif,sans-serif;display:flex}.finance-scope .state-panel p{margin:0}.finance-scope .state-panel button{border:1px solid var(--f-border);background:var(--f-surface);color:var(--f-accent);cursor:pointer;padding:7px 12px;font:600 12px ui-sans-serif,sans-serif}.finance-scope .state-panel button:hover{border-color:var(--f-accent)}.finance-scope .value-up{color:var(--f-up)}.finance-scope .value-down{color:var(--f-down)}.finance-scope .status-dot{color:var(--f-muted);letter-spacing:.04em;text-transform:none;align-items:center;gap:7px;font:600 12px ui-sans-serif,sans-serif;display:flex}.finance-scope .sidebar-note .status-dot{margin-bottom:8px}.finance-scope .status-dot i{background:var(--f-accent);width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in srgb, var(--f-accent) 18%, transparent);border-radius:50%}.finance-scope .detail-section{max-width:1200px}.finance-scope .back-link{color:var(--f-muted-2);align-items:center;gap:6px;margin-bottom:34px;font:12px ui-sans-serif,sans-serif;text-decoration:none;display:inline-flex}.finance-scope .back-link:hover{color:var(--f-accent)}.finance-scope .detail-title{justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px;display:flex}.finance-scope .detail-title h2{margin-bottom:8px}.finance-scope .detail-symbol{color:var(--f-muted-2);letter-spacing:.08em;font:12px ui-sans-serif,sans-serif}.finance-scope .external-link{border:1px solid var(--f-border);color:var(--f-accent);align-items:center;gap:7px;padding:10px 13px;font:600 12px ui-sans-serif,sans-serif;text-decoration:none;display:inline-flex}.finance-scope .external-link:hover{border-color:var(--f-accent);background:var(--f-panel)}.finance-scope .basic-info-panel{border:1px solid var(--f-border);background:var(--f-surface)}.finance-scope .panel-heading{border-bottom:1px solid var(--f-border);justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.finance-scope .panel-heading h3{margin:0;font-size:18px;font-weight:500}.finance-scope .panel-heading span{color:var(--f-muted-2);letter-spacing:.08em;text-transform:uppercase;font:11px ui-sans-serif,sans-serif}.finance-scope .basic-info-grid{grid-template-columns:repeat(3,1fr);display:grid}.finance-scope .basic-info-grid>div{border-right:1px solid var(--f-border);border-bottom:1px solid var(--f-border);gap:8px;min-height:95px;padding:19px 22px;display:grid}.finance-scope .basic-info-grid>div:nth-child(3n){border-right:0}.finance-scope .basic-info-grid>div:nth-last-child(-n+3){border-bottom:0}.finance-scope .basic-info-grid span{color:var(--f-muted-2);font:11px ui-sans-serif,sans-serif}.finance-scope .basic-info-grid strong{color:var(--f-ink-strong);font:600 16px ui-sans-serif,sans-serif}.finance-scope .detail-note{color:var(--f-muted-2);background:var(--f-panel-2);align-items:center;gap:10px;margin-top:18px;padding:14px 16px;display:flex}.finance-scope .detail-note svg{color:var(--f-accent);flex:none}.finance-scope .detail-note p{margin:0;font:12px ui-sans-serif,sans-serif}.finance-scope .detail-tabs{border-bottom:1px solid var(--f-border);gap:2px;margin:30px 0 24px;display:flex}.finance-scope .detail-tabs button{color:var(--f-muted-2);cursor:pointer;background:0 0;border:0;padding:10px 20px 13px;font:600 14px ui-sans-serif,sans-serif;position:relative}.finance-scope .detail-tabs button:hover{color:var(--f-ink)}.finance-scope .detail-tabs button.active{color:var(--f-accent)}.finance-scope .detail-tabs button.active:after{content:"";background:var(--f-accent);height:2px;position:absolute;bottom:-1px;left:18px;right:18px}.finance-scope .analysis-tab-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:26px;display:flex}.finance-scope .analysis-tab-head .recommendation-scale{margin-bottom:0}.finance-scope .conclusion-section{margin-top:34px}.finance-scope .conclusion-section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:6px;display:flex}.finance-scope .conclusion-section-heading h3{margin:0;font-size:26px;font-weight:500}.finance-scope .conclusion-section-heading>span{color:var(--f-muted-2);padding-bottom:5px;font:11px ui-sans-serif,sans-serif}.finance-scope .conclusion-card{border:1px solid var(--f-border);background:var(--f-surface);margin-top:14px}.finance-scope .conclusion-heading{border-bottom:1px solid var(--f-border);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.finance-scope .conclusion-heading>div{align-items:center;gap:12px;display:flex}.finance-scope .conclusion-heading h3{margin:0 0 3px;font-size:17px;font-weight:500}.finance-scope .conclusion-heading p{color:var(--f-muted-2);margin:0;font:11px ui-sans-serif,sans-serif}.finance-scope .conclusion-link{color:var(--f-accent);align-items:center;gap:4px;font:600 12px ui-sans-serif,sans-serif;text-decoration:none;display:inline-flex}.finance-scope .conclusion-link:hover{color:var(--f-accent)}.finance-scope .conclusion-meta{grid-template-columns:repeat(3,1fr);display:grid}.finance-scope .conclusion-meta>div{border-right:1px solid var(--f-border);gap:7px;min-height:82px;padding:18px 20px;display:grid}.finance-scope .conclusion-meta>div:last-child{border-right:0}.finance-scope .conclusion-meta>div>span:first-child{color:var(--f-muted-2);font:11px ui-sans-serif,sans-serif}.finance-scope .conclusion-meta>div>strong{color:var(--f-ink-strong);font:600 17px ui-sans-serif,sans-serif}.finance-scope .band-scale{border-top:1px solid var(--f-border);grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding:16px 20px 20px;display:grid}.finance-scope .band-segment{opacity:.85;gap:3px;padding:10px 9px;transition:opacity .15s;display:grid}.finance-scope .band-segment.active{opacity:1;box-shadow:inset 0 0 0 2px var(--f-ink)}.finance-scope .band-segment strong{font:600 12px ui-sans-serif,sans-serif}.finance-scope .band-segment small{font:10px ui-sans-serif,sans-serif}.finance-scope .band-segment span{opacity:.85;white-space:nowrap;font:10px ui-sans-serif,sans-serif}.finance-scope .analysis-disclaimer{color:var(--f-muted-2);border:1px solid var(--f-border);padding:7px 9px;font:11px ui-sans-serif,sans-serif}.finance-scope .recommendation-scale{color:var(--f-muted-2);gap:8px;margin-bottom:22px;font:11px ui-sans-serif,sans-serif;display:grid}.finance-scope .recommendation-scale>div{grid-template-columns:repeat(7,1fr);gap:4px;height:8px;display:grid}.finance-scope .recommendation-scale i{display:block}.finance-scope .recommendation-scale small{color:var(--f-muted-2);font:11px ui-sans-serif,sans-serif}.finance-scope .recommendation-scale b{color:var(--f-accent);margin:0 8px}.finance-scope .analysis-card{border:1px solid var(--f-border);background:var(--f-surface);margin-bottom:18px}.finance-scope .analysis-card-heading{border-bottom:1px solid var(--f-border);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px;display:flex}.finance-scope .analysis-card-heading>div{align-items:flex-start;gap:13px;display:flex}.finance-scope .method-number{color:var(--f-accent);letter-spacing:.08em;padding-top:2px;font:700 11px ui-sans-serif,sans-serif}.finance-scope .analysis-card h3{margin:0 0 5px;font-size:19px;font-weight:500}.finance-scope .analysis-card-heading p{color:var(--f-muted-2);margin:0;font:12px ui-sans-serif,sans-serif}.finance-scope .data-source{color:var(--f-muted-2);letter-spacing:.08em;text-transform:uppercase;font:10px ui-sans-serif,sans-serif}.finance-scope .analysis-inputs{border-bottom:1px solid var(--f-border);grid-template-columns:repeat(3,1fr);gap:12px;padding:18px 22px;display:grid}.finance-scope .analysis-input{color:var(--f-muted-2);gap:8px;font:11px ui-sans-serif,sans-serif;display:grid}.finance-scope .analysis-input>div{border-bottom:1px solid var(--f-border);align-items:center;display:flex}.finance-scope .analysis-input input{width:100%;min-width:0;color:var(--f-ink-strong);background:0 0;border:0;outline:0;padding:4px 0 7px;font:600 17px ui-sans-serif,sans-serif}.finance-scope .analysis-input em{color:var(--f-muted-2);padding-bottom:7px;font:11px ui-sans-serif,sans-serif}.finance-scope .valuation-table-header,.finance-scope .valuation-table-row{grid-template-columns:1fr 1.4fr 1fr 1.2fr;align-items:center;gap:14px;padding:0 22px;display:grid}.finance-scope .valuation-table-header{min-height:38px;color:var(--f-muted-2);letter-spacing:.08em;text-transform:uppercase;font:10px ui-sans-serif,sans-serif}.finance-scope .valuation-table-row{border-top:1px solid var(--f-border);min-height:60px;color:var(--f-muted);font:13px ui-sans-serif,sans-serif}.finance-scope .valuation-table-row>strong{color:var(--f-ink-strong)}.finance-scope .recommendation-badge{justify-items:start;gap:3px;width:88px;padding:6px 9px;display:inline-grid}.finance-scope .recommendation-badge strong{font:600 12px ui-sans-serif,sans-serif}.finance-scope .recommendation-badge small{opacity:.75;font:10px ui-sans-serif,sans-serif}.finance-scope .strong-buy,.finance-scope .recommendation-badge.strong-buy{color:#fff;background:#2e8b57}.finance-scope .buy,.finance-scope .recommendation-badge.buy{color:#10361f;background:#6cbf85}.finance-scope .light-buy,.finance-scope .recommendation-badge.light-buy{color:#264d27;background:#bce3b4}.finance-scope .hold,.finance-scope .recommendation-badge.hold{color:#6b5518;background:#f1d98a}.finance-scope .light-sell,.finance-scope .recommendation-badge.light-sell{color:#6e3d10;background:#f2b273}.finance-scope .sell,.finance-scope .recommendation-badge.sell{color:#fff;background:#dd6a4d}.finance-scope .strong-sell,.finance-scope .recommendation-badge.strong-sell{color:#fff;background:#b8342a}.finance-scope .recommendation-badge.muted{background:var(--f-panel);color:var(--f-muted-2)}.finance-scope .method-note{color:var(--f-muted-2);border-top:1px solid var(--f-border);margin:0;padding:14px 22px;font:11px/1.6 ui-sans-serif,sans-serif}.finance-scope .metric-strip,.finance-scope .range-result{grid-template-columns:repeat(3,1fr);gap:0;display:grid}.finance-scope .metric-strip>div,.finance-scope .range-result>div{border-right:1px solid var(--f-border);gap:7px;min-height:80px;padding:18px 22px;display:grid}.finance-scope .metric-strip>div:last-child,.finance-scope .range-result>div:last-child{border-right:0}.finance-scope .metric-strip>div>span:first-child,.finance-scope .range-result>div>span:first-child{color:var(--f-muted-2);font:11px ui-sans-serif,sans-serif}.finance-scope .metric-strip>div>strong,.finance-scope .range-result>div>strong{color:var(--f-ink-strong);font:600 17px ui-sans-serif,sans-serif}.finance-scope .range-result{border-top:1px solid var(--f-border)}.finance-scope .history-pills{border-top:1px solid var(--f-border);flex-wrap:wrap;gap:8px;padding:15px 22px 19px;display:flex}.finance-scope .history-pills span{color:var(--f-muted-2);background:var(--f-panel);padding:6px 8px;font:10px ui-sans-serif,sans-serif}.finance-scope .history-pills b{color:var(--f-muted);margin-left:5px}.finance-scope .single-input{grid-template-columns:minmax(180px,260px) 1fr;align-items:end}.finance-scope .correction-rule{color:var(--f-muted-2);gap:5px;padding-bottom:7px;font:11px ui-sans-serif,sans-serif;display:grid}.finance-scope .correction-rule strong{color:var(--f-accent);font:600 17px ui-sans-serif,sans-serif}.finance-scope .correction-rule small{font:11px ui-sans-serif,sans-serif}.finance-scope .dvd-slider-row{border-top:1px solid var(--f-border);gap:10px;padding:16px 22px;display:grid}.finance-scope .dvd-slider-row label{color:var(--f-muted-2);justify-content:space-between;align-items:baseline;font:11px ui-sans-serif,sans-serif;display:flex}.finance-scope .dvd-slider-row label strong{color:var(--f-accent);font:600 17px ui-sans-serif,sans-serif}.finance-scope .dvd-slider-row input[type=range]{appearance:none;background:linear-gradient(90deg, var(--f-panel-2), var(--f-accent));border-radius:3px;outline:none;width:100%;height:5px}.finance-scope .dvd-slider-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--f-accent);cursor:pointer;border:2px solid #fff;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 4px #00000026}.finance-scope .dvd-slider-row input[type=range]::-moz-range-thumb{background:var(--f-accent);cursor:pointer;border:2px solid #fff;border-radius:50%;width:16px;height:16px}@media (width<=900px){.finance-scope .app-shell{display:block}.finance-scope aside{border-right:0;border-bottom:1px solid var(--f-border);padding:18px 20px}.finance-scope .brand{margin-bottom:18px}.finance-scope .sidebar-hero{display:none}.finance-scope nav{display:flex;overflow-x:auto}.finance-scope nav a{white-space:nowrap}.finance-scope nav a.active:before,.finance-scope .sidebar-note{display:none}.finance-scope main{padding:32px 20px}.finance-scope .watchlist{background:0 0;border:0;overflow:visible}.finance-scope .watchlist-header{display:none}.finance-scope .stock-row{border:1px solid var(--f-border);background:var(--f-surface);grid-template-columns:minmax(120px,1fr) auto auto;gap:10px;margin-bottom:8px;padding:15px 12px}.finance-scope .stock-price,.finance-scope .market-cap{display:none}.finance-scope .change,.finance-scope .analysis-link,.finance-scope .row-actions{justify-self:end}.finance-scope .board-conclusions{display:none}}@media (width<=700px){.finance-scope .detail-title{display:block}.finance-scope .external-link{margin-top:22px}.finance-scope .basic-info-grid{grid-template-columns:repeat(2,1fr)}.finance-scope .basic-info-grid>div:nth-child(3n){border-right:1px solid var(--f-border)}.finance-scope .basic-info-grid>div:nth-child(2n){border-right:0}.finance-scope .basic-info-grid>div:nth-last-child(-n+3){border-bottom:1px solid var(--f-border)}.finance-scope .basic-info-grid>div:nth-last-child(-n+2){border-bottom:0}.finance-scope .analysis-disclaimer{margin-top:18px;display:inline-block}.finance-scope .analysis-card-heading{display:block}.finance-scope .data-source{margin-top:14px;display:inline-block}.finance-scope .analysis-inputs,.finance-scope .single-input{grid-template-columns:1fr}.finance-scope .valuation-table-header,.finance-scope .valuation-table-row{grid-template-columns:.7fr 1fr .8fr 1.2fr;gap:7px;padding:0 12px}.finance-scope .valuation-table-header{font-size:9px}.finance-scope .valuation-table-row{font-size:11px}.finance-scope .valuation-table-row .recommendation-badge{padding:5px 6px}.finance-scope .recommendation-badge strong{font-size:10px}.finance-scope .metric-strip>div,.finance-scope .range-result>div{padding:14px 12px}.finance-scope .metric-strip strong,.finance-scope .range-result strong{font-size:13px}.finance-scope .method-note,.finance-scope .history-pills{padding:12px}.finance-scope .detail-tabs{overflow-x:auto}.finance-scope .detail-tabs button{white-space:nowrap}.finance-scope .analysis-tab-head{display:block}.finance-scope .analysis-tab-head .recommendation-scale{margin-bottom:14px}.finance-scope .conclusion-section-heading{display:block}.finance-scope .conclusion-section-heading>span{margin-top:10px;display:inline-block}.finance-scope .conclusion-heading{display:block}.finance-scope .conclusion-link{margin-top:12px}.finance-scope .conclusion-meta{grid-template-columns:1fr}.finance-scope .conclusion-meta>div{border-right:0;border-bottom:1px solid var(--f-border);min-height:64px;padding:14px 16px}.finance-scope .conclusion-meta>div:last-child{border-bottom:0}.finance-scope .band-scale{grid-template-columns:repeat(7,minmax(88px,1fr));overflow-x:auto}}.finance-scope .tools-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;display:grid}.finance-scope .tool-card{border:1px solid var(--f-border);background:var(--f-surface);color:inherit;gap:16px;padding:22px 24px;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.finance-scope .tool-card:hover{background:var(--f-panel-2);border-color:var(--f-accent)}.finance-scope .tool-card-icon{background:var(--f-panel-2);width:46px;height:46px;color:var(--f-accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.finance-scope .tool-card-body{flex:1;min-width:0}.finance-scope .tool-card-tag{background:var(--f-panel);color:var(--f-muted);letter-spacing:.06em;margin-bottom:6px;padding:2px 8px;font:600 10px ui-sans-serif,sans-serif;display:inline-block}.finance-scope .tool-card h3{color:var(--f-ink-strong);margin:0 0 4px;font:500 17px ui-sans-serif,sans-serif}.finance-scope .tool-card p{color:var(--f-muted-2);margin:0;font:13px/1.5 ui-sans-serif,sans-serif}.finance-scope .tool-badge{background:var(--f-panel);color:var(--f-muted);letter-spacing:.06em;white-space:nowrap;padding:5px 14px;font:600 11px ui-sans-serif,sans-serif}.finance-scope .tool-panel{border:1px solid var(--f-border);background:var(--f-surface);margin-bottom:24px;padding:20px 22px}.finance-scope .tool-panel-title{color:var(--f-ink-strong);margin:0 0 16px;font:500 16px ui-sans-serif,sans-serif}.finance-scope .tool-input-group{margin-bottom:14px}.finance-scope .tool-input-group label{color:var(--f-muted);justify-content:space-between;align-items:center;margin-bottom:4px;font:500 13px ui-sans-serif,sans-serif;display:flex}.finance-scope .tool-input-unit{color:var(--f-muted-2);font-size:12px;font-weight:400}.finance-scope .tool-input-group input[type=number]{border:1px solid var(--f-border);background:var(--f-surface);width:100%;color:var(--f-ink);outline:none;padding:9px 12px;font:500 14px ui-sans-serif,sans-serif;transition:border-color .15s}.finance-scope .tool-input-group input[type=number]:focus{border-color:var(--f-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--f-accent) 12%, transparent)}.finance-scope .tool-input-group input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}.finance-scope .tool-input-group input[type=number]{-moz-appearance:textfield}.finance-scope .tool-input-hint{color:var(--f-muted-2);margin-top:2px;font:11px ui-sans-serif,sans-serif;display:block}.finance-scope .tool-input-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.finance-scope .tool-hint-footer{text-align:right;color:var(--f-muted-2);margin:8px 0 0;font:11px ui-sans-serif,sans-serif}.finance-scope .tool-intro{color:var(--f-muted-2);margin:0 0 24px;font:14px/1.6 ui-sans-serif,sans-serif}.finance-scope .tool-layout-grid{grid-template-columns:300px 1fr;gap:24px;margin-bottom:24px;display:grid}@media (width<=900px){.finance-scope .tool-layout-grid{grid-template-columns:1fr}}.finance-scope .tool-results{flex-direction:column;gap:14px;display:flex}.finance-scope .tool-result-cards{grid-template-columns:1fr 1fr 1fr;gap:12px;display:grid}@media (width<=700px){.finance-scope .tool-result-cards{grid-template-columns:1fr}}.finance-scope .tool-result-card{border:1px solid var(--f-border);background:var(--f-surface);padding:16px 18px}.finance-scope .tool-result-card.highlight{background:var(--f-panel-2);border-color:var(--f-border)}.finance-scope .tool-result-label{color:var(--f-muted-2);margin-bottom:4px;font:500 12px ui-sans-serif,sans-serif;display:block}.finance-scope .tool-result-value{color:var(--f-ink-strong);letter-spacing:-.02em;font:700 24px ui-sans-serif,sans-serif;display:block}.finance-scope .tool-result-card.highlight .tool-result-value{color:var(--f-accent)}.finance-scope .tool-result-value small{color:var(--f-muted-2);margin-left:2px;font-size:13px;font-weight:500}.finance-scope .tool-result-sub{color:var(--f-muted-2);margin-top:4px;font:12px ui-sans-serif,sans-serif;display:block}.finance-scope .tool-detail-row{grid-template-columns:1fr 1fr 1fr;gap:12px;display:grid}.finance-scope .tool-detail-item{border:1px solid var(--f-border);background:var(--f-surface);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.finance-scope .tool-detail-item span{color:var(--f-muted-2);font:12px ui-sans-serif,sans-serif}.finance-scope .tool-detail-item strong{color:var(--f-ink-strong);font:600 14px ui-sans-serif,sans-serif}.finance-scope .tool-chart-section{border-top:1px solid var(--f-border);margin-top:20px;padding-top:20px}.finance-scope .tool-chart-section h3{color:var(--f-ink-strong);margin:0 0 12px;font:500 16px ui-sans-serif,sans-serif}.finance-scope .tool-charts-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:24px;display:grid}@media (width<=860px){.finance-scope .tool-charts-grid{grid-template-columns:1fr}}.finance-scope .tool-chart-box{border:1px solid var(--f-border);background:var(--f-surface);padding:16px 18px}.finance-scope .tool-chart-box h3{color:var(--f-ink-strong);margin:0 0 8px;font:500 14px ui-sans-serif,sans-serif}.finance-scope .tool-table-section{border-top:1px solid var(--f-border);margin-top:20px;padding-top:20px}.finance-scope .tool-table-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.finance-scope .tool-table-header h3{color:var(--f-ink-strong);margin:0;font:500 15px ui-sans-serif,sans-serif}.finance-scope .tool-table-header span{color:var(--f-muted-2);font:12px ui-sans-serif,sans-serif}.finance-scope .tool-table-wrap{border:1px solid var(--f-border);background:var(--f-surface);overflow-x:auto}.finance-scope .tool-table-wrap table{border-collapse:collapse;width:100%;min-width:500px;font:13px ui-sans-serif,sans-serif}.finance-scope .tool-table-wrap thead{background:var(--f-panel)}.finance-scope .tool-table-wrap th{text-align:right;color:var(--f-muted-2);letter-spacing:.06em;text-transform:uppercase;padding:10px 14px;font:600 11px ui-sans-serif,sans-serif}.finance-scope .tool-table-wrap th:first-child{text-align:center}.finance-scope .tool-table-wrap td{text-align:right;border-bottom:1px solid var(--f-border);font-variant-numeric:tabular-nums;vertical-align:middle;padding:9px 14px}.finance-scope .tool-table-wrap td:first-child{text-align:center;color:var(--f-muted);font-weight:500}.finance-scope .tool-table-wrap tbody tr:hover{background:var(--f-panel-2)}.finance-scope .tool-table-wrap tbody tr:last-child td{border-bottom:0}.finance-scope .tool-highlight-row td{background:var(--f-panel-2);color:var(--f-accent);font-weight:600}.finance-scope .tool-sliders-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px 24px;display:grid}.finance-scope .tool-slider-group{flex-direction:column;gap:4px;display:flex}.finance-scope .tool-slider-group label{color:var(--f-muted);justify-content:space-between;align-items:center;font:500 13px ui-sans-serif,sans-serif;display:flex}.finance-scope .tool-slider-val{color:var(--f-ink-strong);background:var(--f-panel);border-radius:30px;padding:1px 10px;font-size:13px;font-weight:700}.finance-scope .tool-slider-group input[type=range]{appearance:none;background:linear-gradient(90deg, var(--f-panel-2), var(--f-accent));border-radius:3px;outline:none;width:100%;height:5px}.finance-scope .tool-slider-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--f-accent);cursor:pointer;border:2px solid #fff;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 4px #00000026}.finance-scope .tool-slider-group input[type=range]::-moz-range-thumb{background:var(--f-accent);cursor:pointer;border:2px solid #fff;border-radius:50%;width:16px;height:16px}.finance-scope .tool-plans-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px;display:grid}@media (width<=900px){.finance-scope .tool-plans-grid{grid-template-columns:1fr}}.finance-scope .tool-plan-card{border:1px solid var(--f-border);background:var(--f-surface);padding:20px 22px;transition:transform .15s}.finance-scope .tool-plan-card:hover{transform:translateY(-2px)}.finance-scope .tool-plan-badge{border-radius:30px;margin-bottom:10px;padding:3px 12px;font:600 11px ui-sans-serif,sans-serif;display:inline-block}.finance-scope .tool-plan-badge.plan-a{background:var(--f-panel-2);color:var(--f-down)}.finance-scope .tool-plan-badge.plan-b{color:#2e6b4a;background:#dce9d7}.finance-scope .tool-plan-badge.plan-c{color:#6b5518;background:#f1d98a}.finance-scope .tool-plan-title{color:var(--f-ink-strong);margin-bottom:2px;font:700 18px ui-sans-serif,sans-serif}.finance-scope .tool-plan-desc{color:var(--f-muted-2);margin-bottom:14px;font:13px ui-sans-serif,sans-serif}.finance-scope .tool-plan-metrics{grid-template-columns:1fr 1fr;gap:8px 16px;display:grid}.finance-scope .tool-plan-metrics>div{flex-direction:column;display:flex}.finance-scope .tool-plan-metrics span{color:var(--f-muted-2);font:11px ui-sans-serif,sans-serif}.finance-scope .tool-plan-metrics strong{color:var(--f-ink-strong);margin-top:1px;font:600 16px ui-sans-serif,sans-serif}.finance-scope .tool-plan-metrics strong small{color:var(--f-muted-2);margin-left:1px;font-size:12px;font-weight:400}.finance-scope .tool-plan-metrics strong.positive{color:var(--f-down)}.finance-scope .tool-plan-metrics strong.negative{color:var(--f-accent)}.finance-scope .tool-stock-toolbar{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.finance-scope .tool-stock-toolbar input{border:1px solid var(--f-border);background:var(--f-surface);color:var(--f-ink);outline:none;flex:260px;padding:11px 16px;font:14px ui-sans-serif,sans-serif;transition:border-color .15s}.finance-scope .tool-stock-toolbar input:focus{border-color:var(--f-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--f-accent) 12%, transparent)}.finance-scope .tool-stock-toolbar button{background:var(--f-ink);color:#fff;cursor:pointer;white-space:nowrap;border:0;align-items:center;gap:6px;padding:10px 20px;font:600 13px ui-sans-serif,sans-serif;transition:background .15s;display:inline-flex}.finance-scope .tool-stock-toolbar button:hover{background:var(--f-ink-strong)}.finance-scope .tool-stock-toolbar button:disabled{opacity:.5;cursor:default}.finance-scope .tool-stock-toolbar .tool-btn-outline{border:1px solid var(--f-border);color:var(--f-muted);background:0 0}.finance-scope .tool-stock-toolbar .tool-btn-outline:hover{border-color:var(--f-accent);color:var(--f-ink);background:color-mix(in srgb, var(--f-accent) 8%, transparent)}.finance-scope .tool-status{color:var(--f-muted);margin:0 0 10px;font:13px ui-sans-serif,sans-serif}.finance-scope .tool-empty{text-align:center;color:var(--f-muted-2);border:1px dashed var(--f-border);background:var(--f-panel);padding:40px 20px}.finance-scope .tool-stock-list{flex-direction:column;gap:14px;max-height:500px;padding-right:4px;display:flex;overflow-y:auto}.finance-scope .tool-stock-card{border:1px solid var(--f-border);background:var(--f-surface);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;transition:border-color .15s;display:flex}.finance-scope .tool-stock-card:hover{border-color:var(--f-accent)}.finance-scope .tool-stock-info{flex:auto;align-items:center;gap:12px;min-width:0;display:flex}.finance-scope .tool-stock-name{min-width:100px;color:var(--f-ink-strong);flex:auto;font:700 15px ui-sans-serif,sans-serif}.finance-scope .tool-stock-code{background:var(--f-panel);color:var(--f-muted-2);border-radius:20px;margin-left:6px;padding:2px 8px;font:500 11px ui-sans-serif,sans-serif;display:inline-block}.finance-scope .tool-stock-price-block,.finance-scope .tool-stock-metric{border:1px solid var(--f-border);background:var(--f-panel);align-items:baseline;gap:6px;padding:4px 14px;display:flex}.finance-scope .tool-stock-price-block{flex:0 0 215px}.finance-scope .tool-stock-metric{flex:0 0 160px}.finance-scope .tool-stock-metric.wide{flex-wrap:wrap;flex-basis:260px;row-gap:2px}.finance-scope .tool-stock-price-block span,.finance-scope .tool-stock-metric span{color:var(--f-muted-2);font:12px ui-sans-serif,sans-serif}.finance-scope .tool-stock-price-block strong,.finance-scope .tool-stock-metric strong{color:var(--f-ink-strong);font:600 14px ui-sans-serif,sans-serif}.finance-scope .tool-stock-price-block strong.up,.finance-scope .tool-stock-metric strong.up{color:var(--f-up)}.finance-scope .tool-stock-price-block strong.down,.finance-scope .tool-stock-metric strong.down{color:var(--f-down)}.finance-scope .tool-stock-price-block strong small,.finance-scope .tool-stock-metric strong small{color:var(--f-muted-2);margin-left:2px;font-size:11px;font-weight:400}.finance-scope .tool-delete-btn{width:34px;height:34px;color:var(--f-accent);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.finance-scope .tool-delete-btn:hover{background:color-mix(in srgb, var(--f-accent) 12%, transparent)}.finance-scope .tool-dividend-summary{border-top:1px solid var(--f-border);color:var(--f-muted-2);justify-content:flex-end;align-items:baseline;gap:10px;margin-top:16px;padding-top:14px;font:13px ui-sans-serif,sans-serif;display:flex}.finance-scope .tool-dividend-summary strong{color:var(--f-accent);font:700 18px ui-sans-serif,sans-serif}@media (width<=700px){.finance-scope .tool-stock-info{flex-wrap:wrap}.finance-scope .tool-stock-name{flex:100%}.finance-scope .tool-stock-price-block,.finance-scope .tool-stock-metric,.finance-scope .tool-stock-metric.wide{flex:140px}}.finance-scope .tool-pe-input{border:1px solid var(--f-border);width:80px;color:var(--f-ink);padding:7px 8px;font:14px ui-sans-serif,sans-serif}.finance-scope .tool-pe-input:focus{border-color:var(--f-accent);outline:2px solid color-mix(in srgb, var(--f-accent) 15%, transparent)}.finance-scope .tool-target-price{color:var(--f-accent);font-weight:700}.finance-scope .tool-row-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex}.finance-scope .tool-action-btn{border:1px solid var(--f-border);width:28px;height:28px;color:var(--f-muted-2);cursor:pointer;background:0 0;place-items:center;transition:all .15s;display:grid}.finance-scope .tool-action-btn:hover:not(:disabled){background:var(--f-panel-2);border-color:var(--f-accent);color:var(--f-ink)}.finance-scope .tool-action-btn:disabled{opacity:.35;cursor:not-allowed}.finance-scope .tool-action-btn.danger:hover{background:color-mix(in srgb, var(--f-accent) 12%, transparent);border-color:var(--f-accent);color:var(--f-accent)}.finance-scope .tool-stock-name-cell{font-weight:700}.finance-scope .tool-stock-title-cell{text-align:left;justify-content:center;align-items:center;gap:6px;display:flex}.finance-scope .tool-stock-code-cell{color:var(--f-muted-2);margin-top:3px;font:11px ui-sans-serif,sans-serif;display:block}.finance-scope{padding-top:20px}.finance-scope .app-shell>aside{align-self:start;max-height:calc(100svh - 96px);position:sticky;top:76px;overflow-y:auto}@media (width<=900px){.finance-scope .app-shell>aside{max-height:none;position:static}}
