/* Locally bundled Kimpo Web fonts; unicode-range shards load only for visible dialog text. */
@import url("assets/fonts/dialog/noto-sans-sc/noto-sans-sc.css");
@font-face{font-family:Roboto;src:url("assets/fonts/dialog/Roboto-Variable.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
body .site-dialog,body .site-dialog *,body .site-dialog *::before,body .site-dialog *::after{font-family:Roboto,'Noto Sans SC',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei','Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji'!important}
/* Only the AI conversation and blueprint windows use this entry point.
   Tokens: current teyvat preset + theme/settings.ts; chrome: ui-kit/KDialog.vue.
   KimpoAI 对话内容（.kai-shell）由 kimpoai/kimpoai.css + kimpoai-site.css 出样式，下面的通用控件规则不进入它。 */
.site-dialog {
 --sd-primary:#0877f4;--sd-primary-hover:#0877f4;--sd-primary-pressed:#0043a8;
 --sd-text:#1f1f1f;--sd-secondary:#666;--sd-hint:#999;--sd-error:#e84f4f;
 --sd-border:#dcdfe6;--sd-border-light:#e4e7ed;--sd-border-lighter:#ebeef5;--sd-border-dark:#d4d7de;--sd-border-deep:#cdd0d6;--sd-border-lightest:#f2f5fc;
 --sd-fill:#f0f2f5;--sd-layout:#f2f5f7;
 box-sizing:border-box;position:fixed;inset:auto;margin:0;padding:0;max-width:none;max-height:none;
 border:0;border-radius:8px;box-shadow:0 12px 40px rgb(0 0 0 / .16);background:#fff;color:var(--sd-text);
 font-family:inherit;font-size:14px;line-height:1.5;overflow:visible;outline:none;isolation:isolate;
}
.site-dialog *{box-sizing:border-box}
.site-dialog[open]{display:flex;flex-direction:column}
.site-dialog::backdrop{background:rgb(0 0 0 / .4);backdrop-filter:none}
.site-dialog.is-maximized{border-radius:0;box-shadow:none}
.site-dialog.is-manipulating{user-select:none}
.site-dialog .site-dialog-header{display:flex;align-items:center;gap:16px;flex-shrink:0;padding:12px 24px;min-height:53px;height:auto;border-bottom:1px solid var(--sd-border-lighter);background:#fff;border-radius:8px 8px 0 0;user-select:none;touch-action:none}
.site-dialog:not(.is-maximized) .site-dialog-header{cursor:move}
.site-dialog .site-dialog-title{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:20px;font-weight:500;line-height:28px;margin:0;color:var(--sd-text)}
.site-dialog .site-dialog-title h2{font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.site-dialog .site-dialog-controls{display:flex;align-items:center;gap:16px;flex-shrink:0;cursor:default}
.site-dialog .site-dialog-control{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;min-height:24px;padding:0;border:0;border-radius:4px;background:transparent;color:var(--sd-secondary);line-height:1;cursor:pointer}
.site-dialog .site-dialog-control svg{width:16px;height:16px;pointer-events:none}
.site-dialog .site-dialog-control:hover{background:var(--sd-fill);color:var(--sd-text)}
.site-dialog .site-dialog-control:disabled{opacity:.4;cursor:default;background:transparent}
.site-dialog .site-dialog-control:focus-visible{outline:2px solid rgb(8 119 244 / .6);outline-offset:1px}
.site-dialog.is-maximized .site-dialog-header{border-radius:0}
.site-dialog.is-auto-maximized .site-dialog-header{height:40px;min-height:40px;padding:5px 16px}
.site-dialog.is-auto-maximized .site-dialog-title{font-size:16px;line-height:24px}
.site-dialog .site-dialog-resize{position:absolute;z-index:20;touch-action:none}
.site-dialog.is-maximized .site-dialog-resize{display:none}
.site-dialog-resize-n,.site-dialog-resize-s{left:12px;right:12px;height:6px;cursor:ns-resize}.site-dialog-resize-n{top:0}.site-dialog-resize-s{bottom:0}
.site-dialog-resize-e,.site-dialog-resize-w{top:12px;bottom:12px;width:6px;cursor:ew-resize}.site-dialog-resize-e{right:0}.site-dialog-resize-w{left:0}
.site-dialog-resize-ne,.site-dialog-resize-nw,.site-dialog-resize-se,.site-dialog-resize-sw{width:12px;height:12px}.site-dialog-resize-ne{top:0;right:0;cursor:nesw-resize}.site-dialog-resize-nw{top:0;left:0;cursor:nwse-resize}.site-dialog-resize-se{bottom:0;right:0;cursor:nwse-resize}.site-dialog-resize-sw{bottom:0;left:0;cursor:nesw-resize}
.site-dialog-resize-se::after{content:'';position:absolute;right:3px;bottom:3px;width:8px;height:8px;border-right:2px solid var(--sd-border-deep);border-bottom:2px solid var(--sd-border-deep);border-radius:0 0 2px}
.site-dialog button,.site-dialog input,.site-dialog select,.site-dialog textarea{font:inherit}
.site-dialog button{cursor:pointer}
.site-dialog button:not(.site-dialog-control,.kai-shell *,.kai-scope *){padding:0 14px;height:34px;min-height:34px;line-height:20px;border:1px solid var(--sd-border);border-radius:4px;background:#fff;color:var(--sd-text);font-size:14px;transition:background .15s,border-color .15s,color .15s}
.site-dialog button:not(.site-dialog-control,.kai-shell *,.kai-scope *):not(:disabled):hover{border-color:var(--sd-primary-hover);color:var(--sd-primary-hover);background:#fff}
.site-dialog button:not(.site-dialog-control,.kai-shell *,.kai-scope *):not(:disabled):active{border-color:var(--sd-primary-pressed);color:var(--sd-primary-pressed)}
.site-dialog button:not(.kai-shell *,.kai-scope *):focus-visible,.site-dialog summary:not(.kai-shell *,.kai-scope *):focus-visible{outline:2px solid rgb(8 119 244 / .6);outline-offset:2px}
.site-dialog button:not(.kai-shell *,.kai-scope *):disabled{color:#333639;border-color:#e0e0e6;background:transparent;opacity:.5;cursor:default}
.site-dialog textarea:not(.kai-shell *,.kai-scope *),.site-dialog select:not(.kai-shell *,.kai-scope *),.site-dialog input:not([type=checkbox]):not([type=radio]):not(.kai-shell *,.kai-scope *){padding:7px 12px;border:1px solid #e0e0e6;border-radius:4px;background:#fff;color:var(--sd-text);outline:none;min-width:0}
.site-dialog :is(textarea,select,input):not(.kai-shell *,.kai-scope *):not(:disabled):hover{border-color:var(--sd-primary-hover)}
.site-dialog :is(textarea,select,input):not(.kai-shell *,.kai-scope *):focus{border-color:var(--sd-primary-hover);box-shadow:0 0 0 2px rgb(8 119 244 / .2)}
.site-dialog :is(textarea,select,input):not(.kai-shell *,.kai-scope *):disabled{background:#fafafc;color:#c2c2c2;cursor:default}
.site-dialog :is(textarea,select,input):not(.kai-shell *,.kai-scope *)[aria-invalid=true]{border-color:var(--sd-error)}
.site-dialog textarea:not(.kai-shell *,.kai-scope *){resize:none;line-height:1.6;width:100%}
.site-dialog textarea:not(.kai-shell *,.kai-scope *)::placeholder{color:#c2c2c2}
.site-dialog textarea:not(.kai-shell *,.kai-scope *):disabled::placeholder{color:#d1d1d1}
.site-dialog :is([type=checkbox],[type=radio]){accent-color:var(--sd-primary)}
.site-dialog .chat-app{height:100%;min-height:0;display:flex;flex-direction:column}
.site-dialog .bsg-identity{display:flex;gap:12px;align-items:center;min-width:0;flex:1}
.site-dialog .bsg-badge{flex-shrink:0;padding:3px 7px;background:#f5f7fa;color:var(--sd-secondary);font-size:12px;border-radius:4px;white-space:nowrap}
.site-dialog .bsg-badge{color:var(--sd-primary-hover);background:#fff}
.site-dialog .bsg-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;min-height:0;flex:1}
.site-dialog .bsg-main{padding:20px 24px;overflow:auto;overscroll-behavior:contain;min-width:0;min-height:0;background:#fff;border-radius:0 0 0 8px}
.site-dialog .bsg-main>section{margin-bottom:20px}
.site-dialog .bsg-main>section{border-color:var(--sd-border-light);border-radius:8px}
.site-dialog .bsg-main>section>h3{font-size:16px;font-weight:500}
.site-dialog .bsg-tabs{display:flex;gap:16px;border-bottom:1px solid var(--sd-border-lighter);margin-bottom:16px;overflow:auto}
.site-dialog .bsg-tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:10px 0;white-space:nowrap;color:var(--sd-secondary)}
.site-dialog .bsg-tabs button.is-active{border-bottom-color:var(--sd-primary);color:var(--sd-primary)}
.site-dialog .bsg-assistant{display:flex;flex-direction:column;width:100%;min-width:0;min-height:0;padding:20px;border:0;border-left:1px solid var(--sd-border-lighter);background:#fafafa;overflow:auto;border-radius:0 0 8px}
.site-dialog .bsg-assistant>h3{font-size:16px;font-weight:500;margin:0 0 14px}
.site-dialog .bsg-assistant form{display:flex;flex-direction:column;gap:12px;min-width:0}
.site-dialog .bsg-assistant textarea{min-height:140px;max-height:280px}
.site-dialog .site-service-notice{line-height:1.8;font-size:13px;overflow-wrap:anywhere}
/* Blueprint/flow scrollbars match ProcessPage and BlueprintStepPage. */
.site-dialog :is(.bsg-main,.bsg-assistant,.bsg-layout)::-webkit-scrollbar{width:10px;height:10px;background:#f3f5f8}
.site-dialog :is(.bsg-main,.bsg-assistant,.bsg-layout)::-webkit-scrollbar-track{background:#f3f5f8}
.site-dialog :is(.bsg-main,.bsg-assistant,.bsg-layout)::-webkit-scrollbar-thumb{background:#b9c0ca;border:1px solid #f3f5f8;border-radius:5px}
.site-dialog :is(.bsg-main,.bsg-assistant,.bsg-layout)::-webkit-scrollbar-thumb:hover{background:#a3abb6}
.site-dialog :is(.bsg-main,.bsg-assistant,.bsg-layout)::-webkit-scrollbar-corner{background:#f3f5f8}
@supports not selector(::-webkit-scrollbar){.site-dialog :is(.bsg-main,.bsg-assistant,.bsg-layout){scrollbar-width:thin;scrollbar-color:#b9c0ca #f3f5f8}}
@media(max-width:760px){.site-dialog .bsg-identity{gap:6px;flex-wrap:nowrap}.site-dialog .bsg-identity .site-dialog-title{font-size:16px;line-height:24px}.site-dialog .bsg-header{height:40px;min-height:40px}.site-dialog .bsg-badge{display:inline-block;font-size:10px;padding:1px 5px}.site-dialog .bsg-layout{display:flex;flex-direction:column;overflow:auto}.site-dialog .bsg-main{overflow:visible;flex-shrink:0;padding:16px}.site-dialog .bsg-assistant{overflow:visible;flex-shrink:0;border:0;border-top:1px solid var(--sd-border-lighter);padding:16px;min-height:240px}.site-dialog .bsg-assistant textarea{min-height:120px}}
@media(prefers-reduced-motion:reduce){.site-dialog button{transition:none}}

/* NaiveUI: 34px / 14px normal controls; 28px / 12px compact actions. */
.site-dialog button:not(.site-dialog-control,.kai-shell *,.kai-scope *){border-color:#e0e0e6;color:#333639}
.site-dialog .site-dialog-control[hidden]{display:none}

/* Keep the business workspace on medium desktop widths; stack only when two panes no longer fit. */


/* 标题栏右侧体验积分胶囊（对话窗 / 蓝图窗共用）：只显示本次体验累计已用。提示样式同产品 ToastHost / 弹层阴影。 */
.site-dialog .kai-credit-pill{position:relative;display:inline-flex;align-items:center;gap:6px;flex:none;height:24px;padding:0 10px;border:1px solid #e4e7ed;border-radius:999px;background:#fafafa;color:#666;font-size:12px;line-height:1;white-space:nowrap;cursor:default;outline:none}
.site-dialog .kai-credit-pill[hidden]{display:none}
.site-dialog .kai-credit-pill b{color:#1f1f1f;font-weight:600;font-variant-numeric:tabular-nums}
.site-dialog .kai-credit-pill.is-stale{color:#9a5b00;border-color:#f0c98a;background:#fcf3e7}
.site-dialog .kai-credit-pill:focus-visible{outline:2px solid rgb(8 119 244 / .6);outline-offset:1px}
.site-dialog .kai-credit-pill::after{content:attr(data-tip);position:absolute;right:0;top:calc(100% + 8px);z-index:30;width:240px;padding:8px 12px;box-sizing:border-box;background:#fff;border:1px solid #ebeef5;border-radius:8px;box-shadow:1px 4px 8.35px rgba(26,37,49,.15);color:#666;font-size:12px;line-height:18px;white-space:normal;opacity:0;visibility:hidden;transform:translateY(-2px);transition:opacity .15s,transform .15s,visibility .15s;pointer-events:none}
.site-dialog .kai-credit-pill:hover::after,.site-dialog .kai-credit-pill:focus-visible::after{opacity:1;visibility:visible;transform:none}
/* 蓝图窗标题旁「第 n 版 ▾」与版本列表浮层。 */
.site-dialog .bsg-version-trigger{display:inline-flex;align-items:center;gap:4px;flex:none;height:24px!important;min-height:24px!important;padding:0 8px!important;border:1px solid #d4e7ff!important;border-radius:4px!important;background:#e6f6ff!important;color:#0755d1!important;font-size:12px!important;line-height:1!important;cursor:pointer}
.site-dialog .bsg-version-trigger:not(:disabled):hover,.site-dialog .bsg-version-trigger[aria-expanded=true]{border-color:#0877f4!important}
.site-dialog .bsg-version-trigger:disabled{opacity:1!important;cursor:default;background:#f5f7fa!important;border-color:#ebeef5!important;color:#666!important}
.site-dialog .bsg-version-trigger:disabled svg{display:none}
.site-dialog .bsg-version-menu{position:absolute;z-index:40;width:340px;max-width:calc(100% - 16px);max-height:min(420px,70%);overflow:auto;padding:6px;box-sizing:border-box;display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid #ebeef5;border-radius:8px;box-shadow:1px 4px 8.35px rgba(26,37,49,.15)}
.site-dialog .bsg-version-menu__head{padding:6px 10px 4px;font-size:12px;color:#999}
.site-dialog .bsg-version-option{display:flex!important;flex-direction:column;align-items:stretch;gap:2px;height:auto!important;min-height:0!important;padding:8px 10px!important;border:0!important;border-radius:6px!important;background:#fff!important;color:#1f1f1f!important;text-align:left;font-size:13px!important;line-height:20px!important}
.site-dialog .bsg-version-option:hover,.site-dialog .bsg-version-option:focus-visible{background:#f5f7fa!important;outline:none}
.site-dialog .bsg-version-option.is-current{background:#e6f6ff!important;color:#0755d1!important}
.site-dialog .bsg-version-option__top{display:flex;align-items:center;gap:8px;font-weight:500}
.site-dialog .bsg-version-option__spacer{flex:1}
.site-dialog .bsg-version-option__tag{padding:0 6px;border-radius:4px;background:#0877f4;color:#fff;font-size:11px;line-height:18px;font-weight:400}
.site-dialog .bsg-version-option__time{font-size:12px;color:#999;font-weight:400}
.site-dialog .bsg-version-option__sum{font-size:12px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* 正在看历史版本：主区顶部一条琥珀色横条（产品蓝图页 banner 口径），一键回到最新版。 */
.site-dialog .bsg-history-banner{display:flex;align-items:center;gap:12px;margin:0 0 12px;padding:8px 12px;border-radius:6px;background:#fcf3e7;color:#9a5b00;font-size:12px;line-height:18px}
.site-dialog .bsg-history-banner__back{height:auto!important;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;color:#0755d1!important;font-size:12px!important;line-height:18px!important}
.site-dialog .bsg-history-banner__back:hover{color:#0877f4!important}
