.toaster[data-v-d3f66f93]{z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:8px;max-width:min(380px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.toast[data-v-d3f66f93]{pointer-events:auto;background:var(--ink);color:#fff;box-shadow:var(--shadow-float);border:1px solid #ffffff14;border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:12.5px;line-height:1.45;display:flex}.toast .ico[data-v-d3f66f93]{color:#fffc;margin-top:2px}.toast-success .ico[data-v-d3f66f93]{color:#8fe3b5}.toast-error .ico[data-v-d3f66f93]{color:#f6b8b8}.toast-txt[data-v-d3f66f93]{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.toast-txt b[data-v-d3f66f93]{font-weight:500}.toast-act[data-v-d3f66f93]{color:#fff;text-underline-offset:2px;white-space:nowrap;font-weight:500;text-decoration:underline}.toast-x[data-v-d3f66f93]{color:#fff9;border-radius:4px;place-items:center;padding:2px;display:grid}.toast-x[data-v-d3f66f93]:hover{color:#fff}.tst-enter-active[data-v-d3f66f93],.tst-leave-active[data-v-d3f66f93]{transition:all .18s}.tst-enter-from[data-v-d3f66f93]{opacity:0;transform:translateY(8px)}.tst-leave-to[data-v-d3f66f93]{opacity:0;transform:translate(12px)}:root{--bg:#f6f5f2;--surface:#fff;--sunken:#f1efeb;--raised:#fbfaf8;--line:#e6e3dd;--line-2:#efede8;--line-strong:#cfcbc3;--line-hover:#d6d2cb;--ink:#191816;--ink-2:#5c5955;--ink-3:#6f6b65;--ink-inverse:#fff;--brand:#489ad3;--accent:#2f54eb;--accent-ink:#1e3fc9;--accent-soft:#eef1fd;--accent-line:#dce2f8;--focus-ring:#c8cfef;--pos:#1e8a5a;--pos-ink:#176b46;--pos-soft:#e6f4ec;--pos-line:#cde8d9;--neu:#a39f98;--neu-ink:#6c6862;--neu-soft:#f0eeea;--neu-bar:#d5d1ca;--neu-spark:#b8b3ab;--neg:#d14343;--neg-ink:#b13232;--neg-soft:#fbeaea;--neg-line:#f3cfcf;--neg-bg:#fff9f9;--warn:#b7791f;--warn-ink:#8a5a12;--warn-soft:#fbf3e1;--warn-line:#ebd4a0;--glyph-orange-bg:#ffe8d6;--glyph-orange-ink:#b4461b;--glyph-green-bg:#e3efe9;--glyph-green-ink:#176b46;--glyph-red-bg:#ffe1e1;--glyph-red-ink:#b13232;--glyph-blue-bg:#e6e9f6;--glyph-blue-ink:#2b3e9e;--avatar-grad:linear-gradient(135deg, #dde3f9, #bfcbf4);--sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--serif:"Instrument Serif", Georgia, serif;--r-xs:6px;--r-sm:8px;--r:12px;--r-md:14px;--r-lg:18px;--r-pill:999px;--shadow-1:0 1px 2px #1918160a;--shadow-card:0 1px 2px #1918160a, 0 8px 24px -16px #1918162e;--shadow-float:0 1px 2px #1918160a, 0 16px 40px -20px #19181659;--shadow-hero:0 1px 2px #1918160a, 0 24px 60px -36px #1918164d;--shadow-composer:0 1px 2px #1918160a, 0 10px 30px -18px #19181640;--sidebar-w:272px;--topbar-h:56px;--page-max:1320px;--content-max:840px;--thread-max:720px;--bp-mobile:760px;--bp-tablet:980px;--z-sticky:5;--z-menu:30;--z-drawer:40;--z-modal:50;--z-toast:60}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{min-height:100%}html{-webkit-text-size-adjust:100%}body{font-family:var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5;overflow-x:hidden}#app{flex-direction:column;min-height:100vh;display:flex}#app>*{flex:1}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{cursor:not-allowed}a{color:inherit}svg{display:block}img{max-width:100%;display:block}input,textarea,select{font:inherit;color:inherit}table{border-collapse:collapse;width:100%}ul,ol{list-style:none}strong,b{font-weight:500}.ico{stroke:currentColor;fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.mono{font-family:var(--mono)}.serif{font-family:var(--serif);font-weight:400}.h-display{font-family:var(--serif);letter-spacing:-.01em;font-size:34px;font-weight:400;line-height:1.1}.h-display em{color:var(--ink-3);font-style:italic}.h-page{font-family:var(--serif);letter-spacing:-.01em;font-size:30px;font-weight:400;line-height:1.1}.h-page em{color:var(--ink-3);font-style:italic}.sub{color:var(--ink-3);margin-top:6px;font-size:13px}.eyebrow{font-family:var(--mono);color:var(--ink-3);letter-spacing:.02em;align-items:center;gap:8px;font-size:11.5px;display:inline-flex}.eyebrow i{background:var(--accent);border-radius:50%;width:6px;height:6px}.side-label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);font-size:11px;font-weight:500}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}input:focus-visible,textarea:focus-visible{outline:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.page{max-width:var(--page-max);flex-direction:column;gap:20px;width:100%;margin:0 auto;padding:32px 24px 56px;display:flex}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:4px;display:flex}.page-head .meta{font-family:var(--mono);color:var(--ink-3);gap:14px;font-size:11.5px;display:flex}.page-head .meta i{background:var(--pos);vertical-align:1px;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.g2{grid-template-columns:1.7fr 1fr;gap:12px;display:grid}.g2b,.g3{grid-template-columns:1fr 1.7fr;gap:12px;display:grid}.row2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.row3{grid-template-columns:1fr 1fr 1fr;gap:12px;display:grid}.kpis{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.kpis-4{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}@media (width<=1100px){.kpis{grid-template-columns:repeat(3,1fr)}.kpis-4{grid-template-columns:1fr 1fr}.g2,.g2b,.g3{grid-template-columns:1fr}}@media (width<=760px){.page{padding:20px 16px 40px}.page-head{flex-direction:column;align-items:flex-start}.h-display{font-size:28px}.kpis{grid-template-columns:1fr 1fr}}@media (width<=480px){.kpis,.kpis-4,.row2,.row3{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.btn{white-space:nowrap;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;height:34px;padding:0 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.btn .ico{width:14px;height:14px}.btn-primary{background:var(--ink);color:#fff;border-color:var(--ink)}.btn-primary:hover:not(:disabled){background:#000}.btn-primary .ico{color:#fffc}.btn-ghost{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn-ghost:hover:not(:disabled){border-color:var(--line-strong);background:var(--raised)}.btn-ghost .ico{color:var(--ink-3)}.btn-subtle{color:var(--ink-2);background:0 0}.btn-subtle:hover:not(:disabled){background:var(--line-2);color:var(--ink)}.btn-danger{background:var(--surface);border-color:var(--neg-line);color:var(--neg-ink)}.btn-danger:hover:not(:disabled){background:var(--neg-soft)}.btn-accent{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-accent:hover:not(:disabled){background:var(--accent-ink)}.btn-sm{border-radius:8px;height:28px;padding:0 10px;font-size:12.5px}.btn-sm .ico{width:12px;height:12px}.btn-lg{border-radius:11px;gap:8px;height:44px;padding:0 16px;font-size:14px}.btn-lg .ico{width:16px;height:16px}.btn-block{width:100%}.btn-icon{width:34px;padding:0}.btn-icon.btn-sm{width:28px}.btn:disabled{opacity:.55}.btn-loading{position:relative;color:#0000!important}.btn-loading .ico{visibility:hidden}.btn-loading:after{content:"";width:14px;height:14px;color:var(--ink-3);border:2px solid;border-top-color:#0000;border-radius:50%;animation:.7s linear infinite cm-spin;position:absolute}.btn-primary.btn-loading:after,.btn-accent.btn-loading:after{color:#fff}.icon-btn{width:28px;height:28px;color:var(--ink-3);border-radius:7px;place-items:center;display:grid}.icon-btn:hover{background:var(--line-2);color:var(--ink)}.badge{border-radius:var(--r-pill);white-space:nowrap;align-items:center;gap:6px;padding:2px 8px;font-size:11.5px;font-weight:500;line-height:1.5;display:inline-flex}.badge i{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.badge-md{padding:3px 9px;font-size:12px;line-height:1.4}.badge-neg{background:var(--neg-soft);color:var(--neg-ink)}.badge-pos{background:var(--pos-soft);color:var(--pos-ink)}.badge-neu{background:var(--neu-soft);color:var(--neu-ink)}.badge-ok{background:var(--pos-soft);color:var(--pos-ink)}.badge-err{background:var(--neg-soft);color:var(--neg-ink)}.badge-warn{background:var(--warn-soft);color:var(--warn-ink)}.badge-off{background:var(--sunken);color:var(--ink-3)}.badge-chain{background:var(--accent-soft);color:var(--accent-ink)}.badge-brand{background:var(--glyph-orange-bg);color:var(--glyph-orange-ink)}.badge-single{background:var(--sunken);color:var(--ink-2)}.badge-ghost{border:1px dashed var(--line-strong);color:var(--ink-3);background:0 0}.tag{background:var(--sunken);border:1px solid var(--line-2);color:var(--ink-2);white-space:nowrap;border-radius:6px;align-items:center;gap:5px;padding:2px 8px;font-size:11.5px;display:inline-flex}.tag-md{border-radius:7px;padding:3px 9px;font-size:12px}.tag-hot{background:var(--neg-soft);border-color:var(--neg-line);color:var(--neg-ink)}.tag-mono{font-family:var(--mono)}.dot{border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.dot-pos{background:var(--pos)}.dot-neu{background:var(--neu)}.dot-neg{background:var(--neg)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-1);min-width:0}.card-dark{background:var(--ink);color:#fff;border-color:var(--ink)}.card-h{justify-content:space-between;align-items:center;gap:12px;padding:16px 18px 0;display:flex}.card-h h3{font-size:14px;font-weight:500}.card-h p{color:var(--ink-3);margin-top:1px;font-size:12px}.card-h .more{color:var(--ink-3);align-items:center;gap:4px;font-size:12.5px;text-decoration:none;display:inline-flex}.card-h .more .ico{width:13px;height:13px}.card-h .more:hover{color:var(--ink)}.card-b{flex-direction:column;gap:14px;padding:16px 18px 18px;display:flex}.card-f{border-top:1px solid var(--line-2);background:var(--raised);border-radius:0 0 var(--r-md) var(--r-md);justify-content:flex-end;align-items:center;gap:8px;padding:12px 18px;display:flex}.card-f .saved{color:var(--ink-3);align-items:center;gap:6px;margin-right:auto;font-size:12px;display:flex}.card-f .saved .ico{width:12px;height:12px;color:var(--pos)}.ai-box{border:1px solid var(--accent-line);border-radius:var(--r-md);background:linear-gradient(160deg,#fff 0%,#f4f6fe 100%);flex-direction:column;gap:12px;padding:18px 20px 16px;display:flex;position:relative;overflow:hidden}.ai-box:before{content:"";background:var(--accent);width:3px;position:absolute;inset:0 auto 0 0}.ai-box .lab{color:var(--accent-ink);align-items:center;gap:8px;font-size:12px;font-weight:500;display:flex}.ai-box .lab .ico{width:14px;height:14px}.ai-box .lab .ts{font-family:var(--mono);color:var(--ink-3);margin-left:auto;font-weight:400}.ai-box .lead{font-family:var(--serif);letter-spacing:-.005em;color:var(--ink);font-size:21px;line-height:1.35}.ai-box ul{color:var(--ink-2);flex-direction:column;gap:7px;font-size:13px;display:flex}.ai-box li{gap:9px;display:flex}.ai-box li i{background:var(--accent);border-radius:50%;flex:none;width:5px;height:5px;margin-top:8px}.note{background:var(--raised);border:1px solid var(--line-2);color:var(--ink-2);border-radius:12px;gap:10px;padding:12px 14px;font-size:12.5px;line-height:1.5;display:flex}.note .ico{color:var(--ink-3);width:14px;height:14px;margin-top:2px}.note a{color:var(--ink);text-underline-offset:2px;font-weight:500;text-decoration:underline}.note-plain{color:var(--ink-3);background:0 0;border:0;gap:9px;padding:0}.callout-err{border:1px solid var(--neg-line);background:var(--neg-bg);border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.callout-err .t{color:var(--neg-ink);align-items:center;gap:8px;font-size:13.5px;font-weight:500;display:flex}.callout-err .t .ico{width:14px;height:14px}.callout-err p{color:var(--ink-2);font-size:12.5px;line-height:1.5}.callout-err .code{font-family:var(--mono);color:var(--ink-3);font-size:10.5px}.err-detail{color:var(--ink-3);font-size:10.5px}.err-detail summary{cursor:pointer;align-items:center;gap:4px;width:fit-content;list-style:none;display:inline-flex}.err-detail summary::-webkit-details-marker{display:none}.err-detail summary:before{content:"›";transition:transform .12s;display:inline-block}.err-detail[open] summary:before{transform:rotate(90deg)}.err-detail summary:hover{color:var(--ink-2);text-underline-offset:2px;text-decoration:underline}.err-detail .code{overflow-wrap:anywhere;margin-top:4px;font-size:10px;display:block}.callout-ok{border:1px solid var(--pos-line);background:var(--pos-soft);color:var(--pos-ink);border-radius:12px;align-items:center;gap:10px;padding:12px 14px;font-size:12.5px;display:flex}.callout-ok .ico{width:14px;height:14px}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>label,.field-label{color:var(--ink-2);justify-content:space-between;gap:8px;font-size:12.5px;display:flex}.field-label a{color:var(--accent-ink);font-size:12.5px;text-decoration:none}.field-hint{color:var(--ink-3);font-size:12px}.field-error{color:var(--neg-ink);align-items:center;gap:5px;font-size:12px;display:flex}.field-error .ico{width:12px;height:12px}.in{border:1px solid var(--line);height:42px;color:var(--ink);background:var(--surface);border-radius:10px;outline:0;align-items:center;gap:8px;width:100%;min-width:0;padding:0 12px;font-size:14px;transition:border-color .12s,box-shadow .12s;display:flex}.in input,.in textarea{min-width:0;height:100%;color:inherit;font-size:inherit;background:0 0;border:0;outline:0;flex:1}.in input::placeholder,.in textarea::placeholder{color:var(--ink-3)}.in .ico{color:var(--ink-3);width:14px;height:14px}.in:focus-within,.in.focus{border-color:var(--focus-ring);box-shadow:0 0 0 3px var(--accent-soft)}.in.in-error{border-color:#e9a3a3}.in.in-error:focus-within{box-shadow:0 0 0 3px var(--neg-soft)}.in.in-ok{border-color:var(--pos-line)}.in.in-ro{background:var(--raised);color:var(--ink-2)}.in.in-mono{font-family:var(--mono);font-size:13px}.in.in-sm{border-radius:9px;height:38px}.in.in-lg{border-radius:11px;height:44px;padding:0 14px}.in-textarea{align-items:flex-start;height:auto;min-height:84px;padding:10px 12px}.in-textarea textarea{resize:vertical;line-height:1.5}.cb{border:1px solid var(--line-strong);background:var(--surface);color:#fff;border-radius:4px;flex:none;place-items:center;width:16px;height:16px;transition:background .12s,border-color .12s;display:grid}.cb.on{background:var(--ink);border-color:var(--ink)}.cb.accent.on{background:var(--accent);border-color:var(--accent)}.cb .ico{stroke-width:2.6px;width:11px;height:11px}.tog{border-radius:var(--r-pill);background:var(--ink);flex:none;width:36px;height:20px;transition:background .15s;position:relative}.tog:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:left .15s;position:absolute;top:2px;left:18px}.tog.off{background:var(--neu-bar)}.tog.off:after{left:2px}.choice{border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);height:32px;color:var(--ink-2);align-items:center;gap:7px;padding:0 12px;font-size:13px;display:inline-flex}.choice:hover{border-color:var(--line-strong);color:var(--ink)}.choice.on{background:var(--ink);color:#fff;border-color:var(--ink)}.choice.on .ico{stroke-width:2.2px;width:12px;height:12px}.fpill{border-radius:var(--r-pill);border:1px solid var(--line);height:28px;color:var(--ink-2);background:var(--surface);align-items:center;gap:6px;padding:0 10px;font-size:12.5px;display:inline-flex}.fpill.on{background:var(--ink);color:#fff;border-color:var(--ink)}.sel{border:1px solid var(--line);height:32px;color:var(--ink);background:var(--surface);white-space:nowrap;border-radius:9px;align-items:center;gap:7px;padding:0 10px;font-size:13px;display:inline-flex}.sel .k{color:var(--ink-3)}.sel .ico{width:13px;height:13px;color:var(--ink-3)}.sel:hover{border-color:var(--line-strong)}.sel.on{border-color:var(--ink);background:var(--ink);color:#fff}.sel.on .k,.sel.on .ico{color:#ffffffa6}.menu{z-index:var(--z-menu);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-float);border-radius:12px;min-width:180px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden}.menu-right{left:auto;right:0}.menu .menu-search{border-bottom:1px solid var(--line-2);align-items:center;gap:8px;padding:10px 12px;font-size:13.5px;display:flex}.menu .menu-search .ico{color:var(--ink-3);width:14px;height:14px}.menu .menu-search input{background:0 0;border:0;outline:0;flex:1;min-width:0}.menu ul{max-height:280px;padding:4px;overflow:auto}.menu li,.menu-item{color:var(--ink-2);cursor:pointer;text-align:left;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:8px 10px;font-size:13.5px;text-decoration:none;display:flex}.menu li.hl,.menu li:hover,.menu-item:hover,.menu-item.hl{background:var(--sunken);color:var(--ink)}.menu li[aria-selected=true]{color:var(--ink);font-weight:500}.menu li mark{color:var(--ink);background:0 0;font-weight:500}.menu li .sub,.menu-item .sub{color:var(--ink-3);font-size:11.5px}.menu .menu-ft{border-top:1px solid var(--line-2);font-family:var(--mono);color:var(--ink-3);gap:12px;padding:7px 12px;font-size:10.5px;display:flex}.menu .menu-ft kbd{border:1px solid var(--line);background:var(--sunken);border-radius:4px;padding:0 4px;font-family:inherit}.menu .menu-empty{color:var(--ink-3);text-align:center;padding:14px 12px;font-size:12.5px}.menu-sep{background:var(--line-2);height:1px;margin:4px 0}.menu-item.danger{color:var(--neg-ink)}.menu-item .ico{width:14px;height:14px;color:var(--ink-3)}.tbl th{color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em;text-align:left;border-bottom:1px solid var(--line-2);white-space:nowrap;padding:14px 18px 8px;font-size:11px;font-weight:500}.tbl td{border-bottom:1px solid var(--line-2);vertical-align:middle;padding:11px 18px;font-size:13.5px}.tbl tr:last-child td{border-bottom:0}.tbl th.r,.tbl td.r{text-align:right}.tbl td .sub{color:var(--ink-3);font-size:11.5px;display:block}.tbl tbody tr:hover td{background:var(--raised)}.tbl-head-bg th{border-top:1px solid var(--line-2);background:var(--raised);padding:9px 14px}.tbl-head-bg td{padding:10px 14px;font-size:13px}.tbl tbody tr.cur td{background:var(--accent-soft)}.tbl tbody tr.cur td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.tbl-wrap{overflow-x:auto}.tfoot{color:var(--ink-3);border-top:1px solid var(--line-2);justify-content:space-between;align-items:center;padding:10px 14px;font-size:12.5px;display:flex}.tfoot a{color:var(--accent-ink);text-decoration:none}.heat{background:var(--sunken);vertical-align:middle;border-radius:3px;width:52px;height:6px;margin-right:8px;display:inline-block;overflow:hidden}.heat b{background:var(--neg);border-radius:3px;height:100%;display:block}.arrow{font-family:var(--mono);align-items:center;gap:2px;font-size:12px;display:inline-flex}.arrow.bad{color:var(--neg-ink)}.arrow.good{color:var(--pos-ink)}.arrow.flat{color:var(--ink-3)}.arrow .ico{stroke-width:2.2px;width:11px;height:11px}.delta{font-family:var(--mono);border-radius:6px;align-items:center;gap:3px;padding:2px 6px;font-size:11.5px;display:inline-flex}.delta.good{color:var(--pos-ink);background:var(--pos-soft)}.delta.bad{color:var(--neg-ink);background:var(--neg-soft)}.delta.flat{color:var(--ink-2);background:var(--sunken)}.delta .ico{stroke-width:2.2px;width:11px;height:11px}.feed-item{border-top:1px solid var(--line-2);grid-template-columns:180px 1fr auto;align-items:start;gap:18px;padding:14px 18px;display:grid}.feed-item:first-child{border-top:0}.feed-who{align-items:flex-start;gap:10px;display:flex}.feed-who .bx{background:var(--sunken);border:1px solid var(--line-2);width:30px;height:30px;color:var(--ink-2);border-radius:8px;flex:none;place-items:center;font-size:10px;font-weight:600;display:grid}.feed-who .bx .ico{width:14px;height:14px}.feed-who .t{font-size:13px;font-weight:500;line-height:1.3}.feed-who .s{color:var(--ink-3);font-size:11.5px}.feed-txt .meta{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:5px;display:flex}.feed-txt p{color:var(--ink);font-size:13.5px;line-height:1.5}.feed-when{font-family:var(--mono);color:var(--ink-3);white-space:nowrap;padding-top:4px;font-size:11.5px}@media (width<=760px){.feed-item{grid-template-columns:1fr;gap:8px}.feed-when{padding-top:0}}.msg{gap:14px;max-width:600px;display:flex}.msg.user{flex-direction:row-reverse;align-self:flex-end}.msg .body{flex-direction:column;gap:10px;min-width:0;display:flex}.msg.bot p{color:var(--ink);font-size:15px;line-height:1.6}.msg.user p{background:var(--sunken);border-radius:16px 16px 4px;max-width:460px;padding:10px 14px;font-size:15px;line-height:1.55}.bot-mark{background:var(--sunken);width:28px;height:28px;color:var(--brand);border-radius:8px;flex:none;place-items:center;margin-top:1px;display:grid}.bot-mark svg{width:58%;height:58%}.brand-chip{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);width:fit-content;box-shadow:var(--shadow-1);align-items:center;gap:8px;padding:6px 10px 6px 6px;font-size:13px;display:inline-flex}.brand-chip .sub{color:var(--ink-3)}.brand-chip .ok{color:var(--pos);margin-left:2px}.glyph{background:var(--sunken);width:22px;height:22px;color:var(--ink-2);border-radius:6px;flex:none;place-items:center;font-size:11px;font-weight:600;display:grid}.glyph-round{border-radius:50%}.typing{align-items:center;gap:4px;padding:8px 2px;display:inline-flex}.typing i{background:var(--ink-3);border-radius:50%;width:6px;height:6px;animation:1.2s infinite cm-blink}.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}.legend{color:var(--ink-2);flex-wrap:wrap;gap:14px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend :is(.i-pos,.i-neu,.i-neg,.dot){border-radius:3px;flex:none;width:9px;height:9px}.legend .i-pos{background:var(--pos)}.legend .i-neu{background:var(--neu-bar)}.legend .i-neg{background:var(--neg)}.sk-line{background:linear-gradient(90deg, var(--sunken) 25%, #e9e6e0 50%, var(--sunken) 75%);background-size:200% 100%;border-radius:4px;height:8px;animation:1.4s infinite cm-shimmer}.spinner{border:2px solid var(--line);border-top-color:var(--ink);border-radius:50%;flex:none;width:12px;height:12px;animation:.8s linear infinite cm-spin}.seg{border:1px solid var(--line);background:var(--surface);border-radius:9px;height:32px;display:inline-flex;overflow:hidden}.seg button{color:var(--ink-3);align-items:center;gap:6px;height:100%;padding:0 10px;font-size:12.5px;display:inline-flex}.seg button.on{background:var(--sunken);color:var(--ink)}.seg button+button{border-left:1px solid var(--line)}.seg-sm{border-radius:8px;height:26px}.seg-sm button{font-size:12px}.tabs{gap:4px;display:flex;position:relative;overflow-x:auto}.tabs a,.tabs button{color:var(--ink-3);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1px;padding:10px 12px 12px;font-size:13.5px;text-decoration:none;display:flex}.tabs .c{font-family:var(--mono);color:var(--ink-3);background:var(--sunken);border-radius:5px;padding:0 5px;font-size:11px}.tabs .on{color:var(--ink);border-bottom-color:var(--ink);font-weight:500}.tabs-pill{gap:2px}.tabs-pill a,.tabs-pill button{border-bottom:0;border-radius:7px;margin:0;padding:6px 10px;font-size:13px;font-weight:500}.tabs-pill .on{background:var(--sunken)}.pager{color:var(--ink-3);justify-content:space-between;align-items:center;padding:14px 24px;font-size:12.5px;display:flex}.pager .pg{gap:4px;display:flex}.pager .pg button{border:1px solid var(--line);width:28px;height:28px;font-family:var(--mono);color:var(--ink-2);border-radius:7px;font-size:12px}.pager .pg button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.pager .pg .gap{width:20px;height:28px;font-family:var(--mono);color:var(--ink-3);place-items:center;font-size:12px;display:grid}@keyframes cm-spin{to{transform:rotate(360deg)}}@keyframes cm-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes cm-blink{0%,80%,to{opacity:.25}40%{opacity:1}}@keyframes cm-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes cm-slide-in-right{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}@media (width<=760px) and (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select{font-size:16px!important}.icon-btn{width:36px;height:36px}.btn-sm{height:34px}.btn-icon.btn-sm{width:34px}}
