:root{--sm-page-bg: #f6f7fb;--sm-text: #1f2544;--sm-panel: #fff;--sm-border: #edf0f7;--sm-header-bg: rgba(255, 255, 255, .9);--sm-text-muted: #6f7488;--sm-text-subtle: #8c91a3;--sm-accent: #6d5dfc;--sm-accent-strong: #5d4de1;--sm-accent-soft: #eeeaff;--sm-accent-softer: #f4f3ff;--sm-accent-softer-alt: #f5f4ff;--sm-bubble-user: #6d5dfc;--sm-bubble-assistant: #f1f2f7;--sm-scrollbar-thumb: #c4c8d4;--sm-scrollbar-thumb-hover: #aeb3c4;--sm-cover-placeholder: #dbe5ff;--sm-login-glow: #e8e4ff;--sm-card-shadow: rgba(52, 44, 115, .12);--sm-brand-gradient: linear-gradient(135deg, #8a7bff, #5d4de1);--sm-hero-gradient: linear-gradient(110deg, #1f2550, #5d4de1);--sm-hero-button-text: #29205e;--sm-hero-button-bg: #fff;--workspace-panel: var(--sm-panel);--workspace-border: #d0d7e2;--workspace-text: #1f2937;--workspace-scrollbar-thumb: var(--sm-scrollbar-thumb);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--sm-text);background:var(--sm-page-bg);font-synthesis:none;text-rendering:optimizeLegibility}[data-theme=dark]{color-scheme:dark;--sm-page-bg: #0f1117;--sm-text: #e6e8f2;--sm-panel: #191c26;--sm-border: #2a2f3f;--sm-header-bg: rgba(25, 28, 38, .9);--sm-text-muted: #9aa1b5;--sm-text-subtle: #7f869b;--sm-accent: #8b7dff;--sm-accent-strong: #a99bff;--sm-accent-soft: #272350;--sm-accent-softer: #21203a;--sm-accent-softer-alt: #21203a;--sm-bubble-user: #6152e8;--sm-bubble-assistant: #232735;--sm-scrollbar-thumb: #3a4155;--sm-scrollbar-thumb-hover: #4b5470;--sm-cover-placeholder: #262a38;--sm-login-glow: #241f4a;--sm-card-shadow: rgba(0, 0, 0, .55);--sm-brand-gradient: linear-gradient(135deg, #7a6bf0, #4a3cc4);--sm-hero-gradient: linear-gradient(110deg, #16193a, #4a3cc4);--sm-hero-button-text: #1a1440;--sm-hero-button-bg: #f0eefe;--workspace-border: #2a2f3f;--workspace-text: #e6e8f2}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--sm-page-bg)}button,input,textarea{font:inherit}.boot-screen,.center-loading{min-height:220px;display:grid;place-items:center}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 10% 10%,var(--sm-login-glow),transparent 40%),var(--sm-page-bg)}.login-card{width:min(430px,100%);border-radius:24px;box-shadow:0 24px 70px var(--sm-card-shadow)}.login-brand{text-align:center;margin-bottom:28px}.login-brand h2{margin:10px 0 4px}.brand-mark,.hero-orb{display:grid;place-items:center;color:#fff;background:var(--sm-brand-gradient);border-radius:50%}.brand-mark{width:56px;height:56px;margin:auto;font-size:25px}.login-alert{margin-bottom:18px}.app-layout{min-height:100vh}.app-sider{background:var(--sm-panel);border-right:1px solid var(--sm-border)}.app-sider .ant-layout-sider-children{display:flex;flex-direction:column;height:100%;min-height:0}.app-logo{flex:none;height:72px;display:flex;align-items:center;gap:10px;padding:0 22px;font-size:18px;color:var(--sm-accent-strong)}.app-logo span{font-size:25px}.app-sider .ant-menu{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border-inline-end:0;padding:8px 10px;scrollbar-width:thin;scrollbar-color:var(--sm-scrollbar-thumb) transparent}.app-sider .ant-menu::-webkit-scrollbar{width:6px}.app-sider .ant-menu::-webkit-scrollbar-track{background:transparent}.app-sider .ant-menu::-webkit-scrollbar-thumb{background:var(--sm-scrollbar-thumb);border-radius:3px}.app-sider .ant-menu::-webkit-scrollbar-thumb:hover{background:var(--sm-scrollbar-thumb-hover)}.sider-bottom{flex:none;padding:8px 14px 18px}.sider-bottom .ant-btn{width:100%;text-align:left;color:var(--sm-text-muted)}.app-header{height:72px;padding:0 28px;background:var(--sm-header-bg);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--sm-border)}.app-content{padding:0;overflow:auto}.page-stack{padding:28px;max-width:1440px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.page-heading h2{margin:0 0 4px}.hero-card{min-height:240px;border-radius:24px;background:var(--sm-hero-gradient);color:#fff;display:flex;justify-content:space-between;align-items:center;overflow:hidden;margin-bottom:20px}.hero-card .ant-typography{color:inherit}.hero-card .ant-btn-primary{color:var(--sm-hero-button-text);background:var(--sm-hero-button-bg);border-color:var(--sm-hero-button-bg)}.hero-orb{width:180px;height:180px;margin-right:40px;font-size:70px;background:#ffffff26}.eyebrow{letter-spacing:.2em;font-size:11px;opacity:.65}.overview-stat-card{height:100%}.overview-stats{margin-bottom:20px}.overview-language-card .ant-card-body{display:flex;flex-direction:column;gap:12px}.overview-language-label{display:flex;align-items:center;gap:8px;color:var(--sm-text-muted);font-size:14px;line-height:1.5}.recent-list{display:grid;gap:8px}.recent-item{border:0;border-radius:12px;padding:12px;background:transparent;display:flex;gap:12px;align-items:center;text-align:left;cursor:pointer}.recent-item:hover{background:var(--sm-accent-softer)}.recent-avatar{width:34px;height:34px;display:grid;place-items:center;background:var(--sm-accent-soft);color:var(--sm-accent);border-radius:50%}.recent-copy{display:grid;gap:2px}.recent-copy small{color:var(--sm-text-subtle)}.nav-pills,.character-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:18px}.character-filters>.ant-input-affix-wrapper{width:min(360px,100%)}.character-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}.character-card-button{border:0;padding:0;background:transparent;text-align:left;cursor:pointer;min-width:0}.character-card{border-radius:18px;overflow:hidden;height:100%}.character-cover{height:210px;margin:12px 12px 0;border-radius:14px;display:grid;place-items:center;overflow:hidden;background:var(--sm-cover-placeholder)}.character-cover img,.character-cover-fallback{width:100%;height:100%;border-radius:14px}.character-cover img{object-fit:cover}.character-cover-fallback{display:grid;place-items:center;font-size:56px;font-weight:600}.character-card-title{display:flex;align-items:center;gap:8px}.character-card-title h4{margin:0;flex:1}.character-summary{min-height:66px;color:var(--sm-text-muted)}.character-tags{min-height:24px;white-space:nowrap;overflow:hidden}.load-more{text-align:center;padding:24px}.conversation-list{background:var(--sm-panel);border-radius:16px;padding:4px 16px}.conversation-list-item{cursor:pointer;border-radius:10px;padding-inline:10px!important}.conversation-list-item:hover{background:var(--sm-accent-softer-alt)}.list-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;display:inline-grid;place-items:center}.list-avatar-fallback{background:var(--sm-accent-soft);color:var(--sm-accent)}.chat-page{min-height:calc(100vh - 145px);display:flex;flex-direction:column;background:var(--sm-panel);border-radius:0 0 14px 14px}.chat-header{padding:16px 24px;border-bottom:1px solid var(--sm-border);display:flex;justify-content:space-between;align-items:center}.chat-subtitle{display:block;font-size:11px}.chat-character-trigger{display:inline-flex;align-items:center;gap:10px;padding:0;border:0;color:inherit;background:transparent;text-align:left;cursor:pointer}.chat-character-trigger:focus-visible{outline:2px solid var(--sm-accent);outline-offset:4px;border-radius:8px}.chat-content{position:relative;flex:1;min-height:0;display:flex}.chat-character-info{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:grid;grid-template-rows:0fr;visibility:hidden;pointer-events:none;opacity:0;background:var(--sm-panel);border-bottom:1px solid transparent;transition:grid-template-rows .22s ease,opacity .18s ease,border-color .22s ease,visibility 0s linear .22s}.chat-character-info-open{grid-template-rows:1fr;visibility:visible;pointer-events:auto;opacity:1;border-bottom-color:var(--sm-border);transition-delay:0s}.chat-character-info-inner{min-height:0;height:100%;overflow-y:auto;scrollbar-width:none;max-width:900px;width:100%;margin:0 auto;padding:0 24px;transition:padding .22s ease}.chat-character-info-inner::-webkit-scrollbar{display:none}.chat-character-info-open .chat-character-info-inner{padding-top:16px;padding-bottom:8px}.chat-character-info-item{margin-bottom:8px}.chat-character-info-item .ant-typography{margin-bottom:4px}.chat-model-select{min-width:132px;width:168px;max-width:40vw}.chat-messages{flex:1;min-height:0;overflow-y:auto;width:100%}.chat-messages::-webkit-scrollbar{width:8px;height:8px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--sm-scrollbar-thumb);border-radius:4px}.chat-messages::-webkit-scrollbar-thumb:hover{background:var(--sm-scrollbar-thumb-hover)}@supports not selector(::-webkit-scrollbar){.chat-messages{scrollbar-width:thin;scrollbar-color:var(--sm-scrollbar-thumb) transparent}}.chat-messages-inner{max-width:900px;width:100%;margin:0 auto;padding:24px}.message-row{display:flex;margin-bottom:14px}.message-row-user{justify-content:flex-end}.message-bubble{max-width:min(75%,680px);padding:11px 15px;border-radius:16px;line-height:1.55;white-space:pre-wrap;display:flex;gap:8px;align-items:flex-start}.message-bubble>.ant-avatar{flex:none}.message-bubble-user{color:#fff;background:var(--sm-bubble-user);border-bottom-right-radius:5px}.message-bubble-assistant{background:var(--sm-bubble-assistant);border-bottom-left-radius:5px}.message-typing-cursor{width:2px;height:1.1em;margin-top:.2em;background:currentColor;animation:message-typing-blink .9s steps(1,end) infinite}@keyframes message-typing-blink{50%{opacity:0}}.chat-error{display:block;margin-top:8px}.chat-composer{display:flex;gap:12px;padding:16px 24px 20px;border-top:1px solid var(--sm-border);max-width:900px;width:100%;margin:auto}.chat-composer .ant-input{flex:1}@media(max-width:767px){.app-layout{min-height:100dvh}.app-content{overflow:visible}.mobile-sider-backdrop{position:fixed;z-index:999;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;border:0;background:#0f111747;cursor:default}.app-sider-mobile{position:fixed;z-index:1000;top:0;bottom:0;left:0;height:100dvh;visibility:hidden;pointer-events:none;transform:translate(-100%);transition:transform .22s ease,visibility 0s linear .22s}.app-sider-mobile-open{visibility:visible;pointer-events:auto;transform:translate(0);box-shadow:12px 0 32px #00000029;transition-delay:0s}.page-stack{padding:16px}.app-header{padding:0 14px}.app-header>.ant-space:last-child .ant-typography{display:none}.hero-orb{width:110px;height:110px;margin-right:-20px;font-size:44px}.hero-card{min-height:210px}.character-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.character-cover{height:155px}.character-card .ant-card-body{padding:12px}.chat-header,.chat-composer{padding-inline:14px}.chat-messages-inner{padding:16px 14px}.chat-character-info-inner{padding-inline:14px}.chat-page{min-height:calc(100dvh - 112px)}.chat-content{display:block}.chat-messages{overflow:visible}.chat-composer{position:sticky;bottom:0;z-index:4;box-sizing:border-box;background:var(--sm-panel);padding-bottom:calc(20px + env(safe-area-inset-bottom))}.message-bubble{max-width:88%}}@media(min-width:768px){.layout-workspace-scroll{--workspace-scrollbar-gutter: 12px;height:100vh;min-height:0;overflow:hidden}.layout-workspace-scroll>.ant-layout{height:100%;min-height:0}.layout-workspace-scroll .app-header{flex:none}.layout-workspace-scroll .app-content{flex:1;min-height:0;padding:0 var(--workspace-scrollbar-gutter, 12px) 0 0;overflow:hidden}.layout-workspace-scroll .app-content .ant-tabs{height:100%;display:flex;flex-direction:column}.layout-workspace-scroll .app-content .ant-tabs>.ant-tabs-nav{flex:none}.layout-workspace-scroll .app-content .ant-tabs-content-holder{flex:1;min-height:0;overflow:visible}.layout-workspace-scroll .app-content .ant-tabs-content,.layout-workspace-scroll .app-content .ant-tabs-tabpane{height:100%}.layout-workspace-scroll .workspace-kit-tab-body{position:relative;box-sizing:border-box;height:100%;min-height:0;padding:0;overflow:visible}.layout-workspace-scroll .workspace-kit-tab-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border-radius:inherit;scrollbar-width:none}.layout-workspace-scroll .workspace-kit-tab-content{box-sizing:border-box;width:100%;min-height:100%;padding:0}.layout-workspace-scroll .workspace-kit-tab-scroll::-webkit-scrollbar{display:none}.layout-workspace-scroll .workspace-kit-scrollbar{position:absolute;top:-1px;right:calc(0px - var(--workspace-scrollbar-gutter, 12px));bottom:-1px;display:block;width:8px;background:transparent;border:0;border-radius:4px;opacity:0;pointer-events:none;touch-action:none;transition:opacity .16s ease;-webkit-user-select:none;user-select:none}.layout-workspace-scroll .workspace-kit-scrollbar[data-scrollable=true]{pointer-events:auto}.layout-workspace-scroll .workspace-kit-scrollbar[data-active=true]{opacity:1}.layout-workspace-scroll .workspace-kit-scrollbar-thumb{position:absolute;top:0;right:0;left:2px;min-height:32px;background:var(--workspace-scrollbar-thumb, var(--sm-scrollbar-thumb));border-radius:3px;cursor:grab;will-change:height,transform}.layout-workspace-scroll .workspace-kit-scrollbar-thumb:active{cursor:grabbing}.layout-workspace-chat .app-content{padding-right:0}.layout-workspace-chat .app-content .ant-tabs>.ant-tabs-nav{padding-right:var(--workspace-scrollbar-gutter, 12px)}.layout-workspace-chat .workspace-kit-tab-scroll{overflow-y:hidden}.layout-workspace-chat .workspace-kit-scrollbar{display:none}.layout-workspace-chat .workspace-kit-tab-content{height:100%;min-height:0;display:flex;flex-direction:column}.layout-workspace-chat .chat-page{flex:1;height:auto;min-height:0;border-radius:0}.layout-workspace-chat .chat-header,.layout-workspace-chat .chat-composer{flex:none}.layout-workspace-chat .chat-messages{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.layout-workspace-chat .chat-header{padding-right:calc(24px + var(--workspace-scrollbar-gutter, 12px))}.layout-workspace-chat .chat-composer{margin:0 auto}}.workspace-kit-tabs.ant-tabs-card>.ant-tabs-nav{margin-bottom:var(--workspace-kit-tabs-nav-margin-bottom, 0)!important;border:0;border-radius:0}.workspace-kit-tabs.ant-tabs-card>.ant-tabs-nav:before{border-bottom-color:var(--workspace-kit-border, var(--workspace-border, #d0d7e2))}.workspace-kit-tabs.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab{position:relative;margin-bottom:0;border-bottom-color:var(--workspace-kit-border, var(--workspace-border, #d0d7e2))}.workspace-kit-tabs.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active{border-bottom-color:transparent;background:var(--workspace-kit-panel, var(--workspace-panel, #fff));z-index:1;overflow:hidden}.workspace-kit-tabs.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab-active:before{content:"";position:absolute;bottom:1px;left:1px;width:var(--workspace-kit-loading-indicator-width, 42%);height:var(--workspace-kit-indicator-height, 3px);background:linear-gradient(90deg,var(--workspace-kit-accent, #1677ff) 0%,var(--workspace-kit-accent-soft, #91caff) 50%,var(--workspace-kit-accent, #1677ff) 100%);border-radius:var(--workspace-kit-indicator-radius, 1px);opacity:0;pointer-events:none;transition:none}.workspace-kit-tabs.workspace-kit-indicator-loading.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab-active:before{opacity:1;transition:none;animation:workspace-kit-refresh-slide var(--workspace-kit-loading-animation-duration, .9s) linear infinite}.workspace-kit-tabs.ant-tabs .ant-tabs-tab-remove{box-sizing:border-box;border:1px solid transparent;border-radius:3px}.workspace-kit-tabs.ant-tabs .ant-tabs-tab-remove:hover{border-color:var( --workspace-kit-tab-close-hover-border-color, var(--workspace-kit-tab-border-color) )}.workspace-kit-active-label{display:inline-flex;gap:6px;align-items:center}.workspace-kit-tab-actions{align-items:center}.workspace-kit-close-menu .ant-dropdown-menu .ant-dropdown-menu-title-content .ant-dropdown-menu-item-extra{margin-inline-start:0;padding-inline-start:0}.workspace-kit-close-menu-action{flex:none;color:var(--workspace-kit-close-menu-icon-color);background:transparent;border:0;cursor:pointer}.workspace-kit-close-menu-action:hover{color:var(--workspace-kit-close-menu-icon-hover-color)}.workspace-kit-action-button{width:var(--workspace-kit-action-button-width, 34px);height:var(--workspace-kit-action-button-height, 32px)}.workspace-kit-tab-body{min-height:var(--workspace-kit-content-min-height, calc(100vh - 124px) );padding:var(--workspace-kit-content-padding, 16px);background:var(--workspace-kit-panel, var(--workspace-panel, #fff));border:1px solid var(--workspace-kit-border, var(--workspace-border, #d0d7e2));border-top:0;border-radius:0 0 var(--workspace-kit-content-radius, 6px) var(--workspace-kit-content-radius, 6px)}.workspace-kit-tab-scroll,.workspace-kit-tab-content{min-width:0}.workspace-kit-scrollbar,.workspace-kit-scrollbar-thumb{box-sizing:border-box}.workspace-kit-scrollbar{display:none}.workspace-kit-refresh-icon.workspace-kit-refreshing{animation:workspace-kit-refresh-spin var(--workspace-kit-refresh-animation-duration, .8s) linear infinite}.workspace-kit-mobile-action-bar{position:var(--workspace-kit-mobile-action-position, fixed);right:0;bottom:calc(10px + env(safe-area-inset-bottom));left:0;z-index:var(--workspace-kit-mobile-action-z-index, 19);isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;min-height:var(--workspace-kit-mobile-action-min-height, 40px);padding:var(--workspace-kit-mobile-action-padding, 4px 8px);color:var(--workspace-kit-text, var(--workspace-text, #1f2937));background:var(--workspace-kit-panel, var(--workspace-panel, #fff));border:1px solid var(--workspace-kit-border, var(--workspace-border, #d0d7e2));border-radius:0;box-shadow:var(--workspace-kit-mobile-action-shadow, 0 8px 24px rgba(15, 23, 42, .14))}.workspace-kit-mobile-action-bar:before{content:"";position:absolute;right:0;bottom:calc(-18px - env(safe-area-inset-bottom));left:0;z-index:-1;height:calc(18px + env(safe-area-inset-bottom));background:var(--workspace-kit-panel, var(--workspace-panel, #fff))}.workspace-kit-mobile-action-side{display:flex;flex:1;align-items:center}.workspace-kit-mobile-action-side-right{justify-content:flex-end}.workspace-kit-mobile-action-title{max-width:var(--workspace-kit-mobile-title-max-width, 44vw);overflow:hidden;font-size:13px;font-weight:500;line-height:30px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.workspace-kit-mobile-action-button.ant-btn{width:var(--workspace-kit-mobile-action-button-width, 34px);height:var(--workspace-kit-mobile-action-button-height, 30px);padding-inline:0}@keyframes workspace-kit-refresh-slide{0%{transform:translate(-120%)}to{transform:translate(260%)}}@keyframes workspace-kit-refresh-spin{to{transform:rotate(360deg)}}.workspace-kit-tabs-mobile .workspace-kit-tab-body{min-height:var(--workspace-kit-mobile-content-min-height, calc(100vh - 112px) );padding:var(--workspace-kit-mobile-content-padding, 10px);border-radius:0 0 var(--workspace-kit-mobile-content-radius, 4px) var(--workspace-kit-mobile-content-radius, 4px)}
