.assistant-root[data-v-8bcc4c06]{--assistant-ink: var(--ink);--assistant-muted: var(--ink-3);--assistant-accent: var(--seal);position:fixed;right:25px;bottom:24px;z-index:40;font-family:inherit}.assistant-launcher[data-v-8bcc4c06]{display:grid;place-items:center;width:60px;height:60px;padding:0;border:0;border-radius:50%;color:var(--assistant-accent);background:transparent;box-shadow:none;transition:transform .2s}.assistant-launcher[data-v-8bcc4c06]:hover{transform:translateY(-2px) scale(1.04);box-shadow:none}.assistant-launcher[data-v-8bcc4c06]:focus-visible{outline:2px solid var(--assistant-accent);outline-offset:3px}.assistant-launcher-mark[data-v-8bcc4c06]{display:grid;place-items:center;width:56px;height:56px}.assistant-launcher-avatar[data-v-8bcc4c06]{width:56px;height:56px;border:0;border-radius:50%;object-fit:cover;filter:drop-shadow(0 3px 5px rgba(38,27,20,.22))}.assistant-launcher-mark .assistant-mark-spark[data-v-8bcc4c06],.assistant-avatar .assistant-mark-spark[data-v-8bcc4c06]{position:absolute;right:-5px;top:-4px;padding:1px;border:1px solid var(--surface);border-radius:50%;color:var(--assistant-accent);background:var(--surface)}.assistant-panel[data-v-8bcc4c06]{position:absolute;right:0;bottom:76px;display:flex;flex-direction:column;width:370px;height:min(590px,calc(100vh - 125px));min-height:340px;overflow:hidden;border:1px solid var(--rule);border-radius:15px;color:var(--assistant-ink);background:var(--surface);box-shadow:0 18px 58px #19171233}.assistant-header[data-v-8bcc4c06]{display:flex;align-items:center;gap:10px;min-height:66px;padding:12px 14px;border-bottom:1px solid var(--rule-2);background:var(--paper)}.assistant-avatar[data-v-8bcc4c06]{position:relative;display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;overflow:visible;border:1px solid var(--rule);border-radius:50%;background:var(--paper)}.assistant-avatar img[data-v-8bcc4c06]{width:100%;height:100%;border-radius:inherit;object-fit:cover;object-position:50% 34%}.assistant-heading[data-v-8bcc4c06]{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.assistant-heading strong[data-v-8bcc4c06]{color:var(--assistant-ink);font-size:13px}.assistant-heading span[data-v-8bcc4c06]{color:var(--assistant-muted);font-size:10px}.assistant-icon-button[data-v-8bcc4c06]{display:grid;place-items:center;flex:0 0 auto;width:30px;height:30px;border-radius:7px;color:var(--assistant-muted);background:transparent}.assistant-icon-button[data-v-8bcc4c06]:hover:not(:disabled){color:var(--assistant-accent);background:var(--paper-2)}.assistant-icon-button[data-v-8bcc4c06]:disabled{cursor:default;opacity:.38}.assistant-messages[data-v-8bcc4c06]{display:flex;flex:1;flex-direction:column;gap:15px;overflow-y:auto;padding:19px 15px;overscroll-behavior:contain}.assistant-welcome[data-v-8bcc4c06]{display:flex;flex:1;flex-direction:column;justify-content:center;align-items:center;padding:15px 12px 28px;text-align:center}.assistant-welcome-portrait[data-v-8bcc4c06]{width:122px;aspect-ratio:761 / 1087;margin-bottom:14px;border:1px solid var(--rule);border-radius:7px;object-fit:cover;object-position:center 38%;box-shadow:0 7px 18px #261b1421}.assistant-welcome strong[data-v-8bcc4c06]{color:var(--assistant-ink);font-size:14px}.assistant-welcome p[data-v-8bcc4c06]{max-width:275px;margin:9px 0 0;color:var(--assistant-muted);font-size:11px;line-height:1.8}.assistant-message[data-v-8bcc4c06]{max-width:91%;align-self:flex-start}.assistant-message.user[data-v-8bcc4c06]{align-self:flex-end}.assistant-message-label[data-v-8bcc4c06]{display:block;margin:0 0 5px 2px;color:var(--assistant-muted);font-size:9px}.assistant-message.user .assistant-message-label[data-v-8bcc4c06]{text-align:right}.assistant-message p[data-v-8bcc4c06]{margin:0;padding:10px 12px;border:1px solid var(--rule-2);border-radius:4px 12px 12px;color:var(--ink-2);background:var(--paper-2);font-size:12px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}.assistant-message.user p[data-v-8bcc4c06]{border-color:var(--seal);border-radius:12px 4px 12px 12px;color:var(--surface);background:var(--assistant-accent)}.assistant-typing[data-v-8bcc4c06]{display:flex;align-items:center;gap:4px}.assistant-typing i[data-v-8bcc4c06]{width:5px;height:5px;border-radius:50%;background:var(--assistant-accent);animation:assistant-pulse-8bcc4c06 1s ease-in-out infinite alternate}.assistant-typing i[data-v-8bcc4c06]:nth-child(2){animation-delay:.15s}.assistant-typing i[data-v-8bcc4c06]:nth-child(3){animation-delay:.3s}.assistant-typing span[data-v-8bcc4c06]{margin-left:5px;color:var(--assistant-muted);font-size:10px}@keyframes assistant-pulse-8bcc4c06{to{opacity:.35;transform:translateY(-2px)}}.assistant-composer[data-v-8bcc4c06]{padding:10px 12px 12px;border-top:1px solid var(--rule-2);background:var(--paper)}.assistant-composer textarea[data-v-8bcc4c06]{display:block;width:100%;min-height:62px;max-height:120px;resize:vertical;padding:9px 10px;border:1px solid var(--rule);border-radius:8px;color:var(--ink);background:var(--surface);font-size:11px;line-height:1.65}.assistant-composer textarea[data-v-8bcc4c06]::placeholder{color:var(--ink-4)}.assistant-composer textarea[data-v-8bcc4c06]:focus-visible{outline:2px solid rgba(163,58,43,.22);border-color:var(--assistant-accent)}.assistant-composer-footer[data-v-8bcc4c06]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px}.assistant-composer-footer>span[data-v-8bcc4c06]{color:var(--assistant-muted);font-size:9px}.assistant-send[data-v-8bcc4c06]{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:70px;height:31px;padding:0 10px;border-radius:7px;color:var(--surface);background:var(--assistant-accent);font-size:10px}.assistant-send[data-v-8bcc4c06]:disabled{cursor:default;opacity:.45}.assistant-error[data-v-8bcc4c06]{margin:0 0 8px;color:var(--assistant-accent);font-size:10px;line-height:1.5}.assistant-panel-enter-active[data-v-8bcc4c06],.assistant-panel-leave-active[data-v-8bcc4c06]{transition:opacity .16s ease,transform .16s ease}.assistant-panel-enter-from[data-v-8bcc4c06],.assistant-panel-leave-to[data-v-8bcc4c06]{opacity:0;transform:translateY(8px) scale(.985)}@media(max-width:600px){.assistant-root[data-v-8bcc4c06]{right:14px;bottom:max(14px,env(safe-area-inset-bottom))}.assistant-launcher[data-v-8bcc4c06]{width:54px;height:54px;border-radius:50%}.assistant-launcher-mark[data-v-8bcc4c06],.assistant-launcher-avatar[data-v-8bcc4c06]{width:50px;height:50px}.assistant-panel[data-v-8bcc4c06]{position:fixed;right:9px;bottom:calc(max(14px,env(safe-area-inset-bottom)) + 64px);width:calc(100vw - 18px);height:min(570px,calc(100dvh - 100px));min-height:300px;border-radius:13px}}@media(prefers-reduced-motion:reduce){.assistant-launcher[data-v-8bcc4c06],.assistant-panel-enter-active[data-v-8bcc4c06],.assistant-panel-leave-active[data-v-8bcc4c06]{transition-duration:.01ms}.assistant-typing i[data-v-8bcc4c06]{animation:none}}:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#202942;background:#f5f6f8;font-synthesis:none;text-rendering:optimizeLegibility;--primary: #3b5bdb;--primary-dark: #253e9c;--ink: #1f2d5c;--muted: #7e8798;--line: #e7eaf0;--panel: #fff;--soft: #f7f8fb;--success: #2b8a3e;--orange: #e67700;--red: #e03131}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f5f6f8}button,input,textarea,select{font:inherit}button{border:0;cursor:pointer;color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(59,91,219,.22);outline-offset:2px}.app-shell{min-height:100vh}.topbar{height:68px;padding:0 30px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:48px;position:sticky;top:0;z-index:10}.brand-lockup{display:inline-flex;align-items:center;gap:10px;background:transparent}.brand-lockup strong{font-size:20px;color:var(--ink);letter-spacing:.01em}.brand-lockup span{color:#a2a9b6;font-size:11px;letter-spacing:.03em}.brand-mark{width:33px;height:33px;display:grid;place-items:center;color:#fff;background:var(--primary);border-radius:9px;box-shadow:0 5px 12px #3b5bdb33}.top-brand{padding:0}.top-nav{display:flex;gap:26px;height:100%;align-items:center}.top-nav button{font-size:13px;color:#70798a;background:transparent;height:100%;position:relative}.top-nav button:first-child{color:var(--ink);font-weight:600}.top-nav button:first-child:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--primary)}.top-actions{margin-left:auto;display:flex;align-items:center;gap:13px}.icon-button{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:7px;background:transparent;color:#7e8798;transition:.2s}.icon-button:hover{background:#f1f3f8;color:var(--primary)}.top-divider{height:22px;width:1px;background:var(--line);margin:0 3px}.profile-button{display:inline-flex;align-items:center;gap:8px;color:#596276;background:transparent;font-size:12px}.account-menu-wrap{position:relative}.account-menu{position:absolute;z-index:30;top:calc(100% + 10px);right:0;display:grid;gap:7px;min-width:210px;padding:13px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 30px #232d461f}.account-menu strong{color:var(--ink);font-size:12px}.account-menu small{color:#8992a2;font-size:11px}.account-menu button{display:flex;align-items:center;gap:8px;margin-top:5px;padding:9px 0 0;border-top:1px solid var(--line);color:#687386;background:transparent;font-size:11px;text-align:left}.avatar{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;color:var(--primary-dark);background:#e6eaff;font-weight:700;font-size:12px}.mobile-menu{display:none}.workspace{display:flex}.sidebar{width:224px;flex:0 0 224px;min-height:calc(100vh - 68px);padding:27px 15px 18px;border-right:1px solid var(--line);background:#fafbfc;display:flex;flex-direction:column}.side-section{display:flex;flex-direction:column;gap:4px}.side-label{padding:0 12px 10px;color:#a0a8b7;font-size:10px;letter-spacing:.11em;text-transform:uppercase}.side-item{min-height:40px;padding:0 12px;display:flex;align-items:center;gap:11px;background:transparent;color:#737c8d;border-radius:8px;font-size:13px;text-align:left;transition:.2s}.side-item:hover{color:var(--ink);background:#f0f2f8}.side-item.active{color:var(--primary);background:#e9edff;font-weight:600}.side-count{margin-left:auto;min-width:19px;height:19px;display:grid;place-items:center;border-radius:10px;background:#fff;color:var(--primary);font-size:10px}.service-status{display:flex;align-items:center;gap:8px;width:100%;min-height:32px;padding:0 12px;margin-top:10px;color:#7e8798;background:transparent;border-top:1px solid var(--line);font-size:10px;text-align:left}.service-status svg{margin-left:auto;color:#a6adba}.service-status-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#adb5bd}.service-status.ready{color:var(--success)}.service-status.ready .service-status-dot{background:var(--success)}.service-status.unavailable{color:var(--orange)}.service-status.unavailable .service-status-dot{background:var(--orange)}.side-bottom{margin-top:auto}.side-project{display:flex;align-items:center;gap:9px;padding:10px 11px;margin-bottom:8px;border:1px solid #e7eaf4;background:#fff;border-radius:8px;text-align:left}.side-project>span:nth-child(2){flex:1;min-width:0}.side-project b,.side-project small,.sidebar-user b,.sidebar-user small{display:block}.side-project b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3a4560;font-size:12px}.side-project small{color:var(--muted);font-size:10px;margin-top:3px}.project-dot,.sidebar-user:before{width:7px;height:7px;background:var(--primary);border-radius:50%;display:block}.sidebar-user{margin-top:16px;padding:13px 10px 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:9px}.sidebar-user span:nth-child(2){flex:1}.sidebar-user b{color:#3a4560;font-size:12px}.sidebar-user small{color:var(--muted);font-size:10px;margin-top:2px}.main-content{min-width:0;width:calc(100% - 224px)}.page{max-width:1360px;margin:0 auto;padding:42px 58px 64px}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:34px}.eyebrow{color:var(--primary);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px}.page-header h1{margin:0;color:var(--ink);font-size:29px;letter-spacing:-.025em;font-weight:700}.page-header p{margin:9px 0 0;color:#8991a0;font-size:13px;line-height:1.7}.page-actions,.config-actions,.writing-actions{display:flex;gap:10px;align-items:center}.primary-button,.secondary-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 15px;border-radius:7px;font-size:12px;font-weight:600;transition:.2s;white-space:nowrap}.primary-button{color:#fff;background:var(--primary);box-shadow:0 5px 12px #3b5bdb26}.primary-button:hover{background:#2f4dcc;transform:translateY(-1px)}.primary-button.locked{background:var(--success);box-shadow:0 5px 12px #2b8a3e21}.secondary-button{color:#657086;background:#fff;border:1px solid #e2e6ee}.secondary-button:hover{color:var(--primary);border-color:#bbc7ef;background:#fbfcff}.text-button{color:var(--primary);background:transparent;font-size:12px;padding:0}.text-button:hover{text-decoration:underline}.dashboard-toolbar,.library-toolbar{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:22px}.filter-tabs{display:flex;gap:22px}.filter-tabs button{position:relative;background:transparent;color:#8d95a4;font-size:12px;padding:0 0 9px}.filter-tabs button.active{color:var(--ink);font-weight:600}.filter-tabs button.active:after{content:"";position:absolute;left:0;right:0;bottom:-15px;height:2px;background:var(--primary)}.filter-tabs button span{margin-left:5px;padding:2px 5px;border-radius:5px;color:var(--primary);background:#e9edff;font-size:10px}.sort-button{display:inline-flex;gap:7px;align-items:center;color:#778093;background:transparent;font-size:12px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.project-card{overflow:hidden;background:#fff;border:1px solid #e8ebf1;border-radius:11px;cursor:pointer;opacity:0;transform:translateY(8px);animation:cardIn .45s ease forwards;transition:.22s}.project-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #1f2d5c17;border-color:#dfe4f2}@keyframes cardIn{to{opacity:1;transform:translateY(0)}}.cover{height:185px;padding:19px 21px;position:relative;overflow:hidden;color:#fff;display:flex;flex-direction:column;justify-content:flex-end}.cover:before,.cover:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.25);border-radius:50%}.cover:before{width:270px;height:270px;top:-150px;right:-100px}.cover:after{width:190px;height:190px;bottom:-130px;left:-75px}.cover-night{background:linear-gradient(132deg,#18264f,#4156a5)}.cover-space{background:linear-gradient(132deg,#26336f,#6674cb)}.cover-rain{background:linear-gradient(132deg,#31668b,#99b9cc)}.cover-new{background:linear-gradient(132deg,#3b5bdb,#8494e6)}.cover-kicker{position:absolute;top:18px;left:21px;font-size:8px;letter-spacing:.18em;opacity:.7}.cover strong{position:relative;z-index:1;font-family:"DM Serif Display",serif;font-size:30px;font-weight:400;letter-spacing:.02em}.cover-subtitle{position:relative;z-index:1;margin-top:6px;font-size:10px;opacity:.78}.cover-line{position:absolute;right:22px;bottom:22px;width:34px;height:1px;background:#ffffffbf}.delete-project-button{position:absolute;top:14px;right:15px;z-index:2;width:28px;height:28px;display:grid;place-items:center;color:#ffffffd1;background:#0a122a2e;border:1px solid rgba(255,255,255,.22);border-radius:50%;opacity:0;transition:.2s}.project-card:hover .delete-project-button{opacity:1}.delete-project-button:hover{color:#fff;background:#d84d57eb;border-color:#ffffff59}.project-card-body{padding:18px 20px 17px}.card-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.card-actions{display:inline-flex;align-items:center;gap:4px}.project-menu-wrap{position:relative}.project-menu-wrap .icon-button{position:relative;z-index:4}.project-menu-wrap .icon-button.menu-open{color:var(--primary);background:#edf1ff}.project-menu{position:absolute;top:calc(100% + 7px);right:0;z-index:5;min-width:156px;padding:5px;border:1px solid #e1e6f0;border-radius:8px;background:#fff;box-shadow:0 12px 28px #1f2d5c24;animation:menuIn .16s ease}.project-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:9px 10px;color:#56627a;border-radius:5px;background:transparent;text-align:left;font-size:11px;white-space:nowrap}.project-menu button:hover{color:var(--primary);background:#f1f4ff}.project-menu button svg{flex:0 0 auto}.project-menu .danger-menu-item{color:#d84d57}.project-menu .danger-menu-item:hover{color:#c63843;background:#fff1f2}.project-menu-divider{display:block;height:1px;margin:4px 5px;background:#edf0f5}@keyframes menuIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.card-title-row h3{margin:0 0 4px;color:var(--ink);font-size:15px}.card-title-row span{color:#929aaa;font-size:11px}.project-card-body>p{height:39px;overflow:hidden;margin:17px 0;color:#81899a;font-size:11px;line-height:1.75}.progress-meta,.card-footer,.asset-meta,.model-row,.config-top,.chapter-main-head,.chapter-sidebar-head,.usage-panel-head,.section-heading,.route-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.progress-meta{color:#8b94a3;font-size:10px}.status-badge{display:inline-flex;align-items:center;min-height:21px;padding:0 8px;border-radius:5px;font-size:10px;line-height:1;white-space:nowrap}.status-badge.blue{color:var(--primary);background:#e5eafb}.status-badge.violet{color:#7950f2;background:#eee9ff}.status-badge.orange{color:var(--orange);background:#fff4e0}.status-badge.green{color:var(--success);background:#e6f6ea}.status-badge.gray{color:#868e96;background:#f1f3f5}.progress-track{height:5px;overflow:hidden;background:#eef0f4;border-radius:5px}.progress-track>span{display:block;height:100%;border-radius:inherit}.progress-track .blue{background:var(--primary)}.progress-track .violet{background:#7950f2}.progress-track .orange{background:var(--orange)}.progress-track .green{background:var(--success)}.project-card-body .progress-track{margin-top:9px}.card-footer{margin-top:13px;color:#a0a7b2;font-size:10px}.card-footer span:first-child{display:inline-flex;align-items:center;gap:4px}.new-project-card{min-height:365px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;background:#ffffff73;border:1px dashed #cdd4e1;border-radius:11px;color:#8b94a4}.new-project-card:hover{background:#fff;border-color:#9dadde;color:var(--primary)}.new-project-card>span{width:43px;height:43px;display:grid;place-items:center;border:1px solid #ccd4e4;border-radius:50%}.new-project-card strong{font-size:13px;color:#667188}.new-project-card small{font-size:10px}.upload-project-button{position:relative;cursor:pointer}.hidden-file-input{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important}.upload-card{position:relative;cursor:pointer;background:#fbfcff}.upload-card>span{color:var(--primary);background:#eef2ff;border-color:#cbd5fb}.upload-card:hover strong{color:var(--primary)}.dashboard-note{display:flex;align-items:center;gap:12px;max-width:680px;margin:42px auto 0;padding:13px 15px;border:1px solid #e5e8f2;background:#fbfcff;border-radius:8px}.note-icon{width:33px;height:33px;display:grid;place-items:center;color:var(--primary);background:#e9edff;border-radius:7px}.dashboard-note div:nth-child(2){flex:1}.dashboard-note b{color:var(--ink);font-size:11px}.dashboard-note p{margin:5px 0 0;color:#858e9d;font-size:11px}.narrow-page{max-width:960px}.back-link{display:inline-flex;align-items:center;gap:7px;padding:0;margin-bottom:27px;background:transparent;color:#818a9a;font-size:12px}.back-link:hover{color:var(--primary)}.steps{display:flex;align-items:center;max-width:520px;margin:-4px auto 28px}.steps>i{height:1px;flex:1;background:#dde2eb;margin:0 14px}.step{display:flex;align-items:center;gap:8px;color:#9aa3b1;font-size:11px;white-space:nowrap}.step b{width:24px;height:24px;display:grid;place-items:center;border:1px solid #d9dfe9;border-radius:50%;font-size:10px;font-weight:500}.step.active{color:var(--primary)}.step.active b{color:#fff;border-color:var(--primary);background:var(--primary)}.form-panel{padding:30px 34px 24px;border:1px solid #e6e9f0;background:#fff;border-radius:11px;box-shadow:0 2px 6px #1f2d5c06}.form-section-title{display:flex;gap:13px;align-items:flex-start;padding-bottom:24px;margin-bottom:25px;border-bottom:1px solid var(--line)}.section-icon{width:31px;height:31px;display:grid;place-items:center;color:var(--primary);background:#e9edff;border-radius:7px}.form-section-title h3,.config-form-head h3,.route-head h3,.usage-panel-head h3{margin:0;color:var(--ink);font-size:15px}.form-section-title p,.config-form-head p,.route-head p,.usage-panel-head p{margin:6px 0 0;color:#929aaa;font-size:11px}.large-field,.field-grid label,.route-grid label{position:relative;display:flex;flex-direction:column;gap:8px;color:#667187;font-size:11px}.large-field{margin:22px 0}.optional{color:#a5acb8;margin-left:4px}.large-field input,.large-field textarea,.field-grid input,.field-grid textarea,.field-grid select,.route-grid select{width:100%;padding:11px 12px;color:#3c4660;border:1px solid #dfe4ec;border-radius:6px;background:#fff;font-size:12px;resize:vertical}.large-field input:focus,.large-field textarea:focus,.field-grid input:focus,.field-grid textarea:focus,.field-grid select:focus,.route-grid select:focus{border-color:#8294e3;box-shadow:0 0 0 3px #3b5bdb14;outline:none}.large-field small{color:#a7afba;font-size:10px;text-align:right;margin-top:-4px}.field-invalid input{border-color:#ef6b73;box-shadow:0 0 0 3px #ef6b7314}.path-invalid{border-color:#ef6b73!important;box-shadow:0 0 0 3px #ef6b7314!important}.large-field .form-error{color:#d84d57}.form-error{color:#d84d57!important}.config-error{margin-bottom:14px;padding:11px 13px;color:#b4232d;border:1px solid #f1c4c7;border-radius:7px;background:#fff5f5;font-size:11px;line-height:1.5}.form-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:17px;margin-top:12px;border-top:1px solid var(--line)}.save-note{display:inline-flex;align-items:center;gap:5px;margin-right:auto;color:#8e97a6;font-size:11px}.save-note svg{color:var(--success)}.location-options{display:grid;gap:12px}.location-card{display:flex;align-items:center;gap:13px;width:100%;padding:15px;text-align:left;border:1px solid #e1e6ee;border-radius:8px;background:#fff}.location-card.selected{border-color:#94a4e7;background:#f8f9ff;box-shadow:0 0 0 3px #3b5bdb0f}.location-radio{width:17px;height:17px;display:grid;place-items:center;border:1px solid #bec7d5;border-radius:50%;color:#fff}.selected .location-radio{border-color:var(--primary);background:var(--primary)}.location-icon{color:var(--primary)}.location-icon.muted{color:#a5adba}.location-card>span:nth-child(3){flex:1}.location-card b,.location-card small{display:block}.location-card b{color:#47526a;font-size:12px}.location-card small{color:#989fad;margin-top:4px;font-size:10px}.location-tag,.disabled-tag{padding:4px 6px;border-radius:4px;font-size:9px}.location-tag{color:var(--primary);background:#e9edff}.disabled-tag{color:#a0a7b1;background:#f0f2f5}.custom-path-panel{padding:14px 15px;border:1px solid #e1e6ee;border-radius:8px;background:#fff}.custom-path-panel.selected{border-color:#94a4e7;background:#f8f9ff;box-shadow:0 0 0 3px #3b5bdb0f}.custom-path-head{display:flex;align-items:center;gap:13px;margin-bottom:11px}.custom-path-head>div{flex:1}.custom-path-head b,.custom-path-head small{display:block}.custom-path-head b{color:#47526a;font-size:12px}.custom-path-head small{margin-top:4px;color:#989fad;font-size:10px}.custom-path-head .secondary-button{min-height:31px;padding:0 10px;font-size:10px}.custom-path-panel input{width:100%;min-height:40px;padding:0 12px;color:#3f4962;border:1px solid #dce3ed;border-radius:6px;background:#fff;font-size:11px}.custom-path-panel input:focus{border-color:#8294e3;outline:none;box-shadow:0 0 0 3px #3b5bdb14}.custom-path-panel p{margin:8px 0 0;color:#9aa2af;font-size:10px;line-height:1.5}.confirm-illustration{display:grid;place-items:center;margin:18px auto 15px}.confirm-illustration span{width:70px;height:70px;display:grid;place-items:center;color:var(--primary);background:#e9edff;border-radius:50%}.confirm-copy{text-align:center;padding-bottom:16px}.confirm-copy h3{color:var(--ink);font-size:18px;margin:0 0 15px}.confirm-copy p{color:#838c9c;font-size:12px}.confirm-copy b{color:#4d5871}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:20px;background:#1b254347;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.export-modal{width:min(430px,100%);padding:27px 28px 23px;border:1px solid #e2e7f0;border-radius:11px;background:#fff;box-shadow:0 22px 60px #1f2d5c33;animation:modalIn .18s ease}.export-modal-icon{width:43px;height:43px;display:grid;place-items:center;margin-bottom:15px;color:var(--primary);border-radius:9px;background:#e9edff}.export-modal h2{margin:0;color:var(--ink);font-size:19px}.export-modal p{margin:10px 0 0;color:#59667d;font-size:12px;line-height:1.7}.export-modal small{display:block;margin-top:9px;color:#9aa3b1;font-size:10px;line-height:1.6}.export-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.export-modal-actions button:disabled{cursor:wait;opacity:.65}@keyframes modalIn{0%{opacity:0;transform:translateY(5px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.config-top{margin-bottom:21px}.config-top .back-link{margin:0}.config-page .page-header{margin-bottom:24px}.config-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;align-items:start}.config-tabs{display:flex;flex-direction:column;gap:3px}.config-tabs button{display:flex;align-items:center;gap:7px;padding:12px 11px;color:#7d8797;border-radius:7px;background:transparent;text-align:left;font-size:12px}.config-tabs button svg{margin-left:auto;opacity:0}.config-tabs button.active{color:var(--primary);background:#e9edff;font-weight:600}.config-tabs button.active svg{opacity:1}.config-tip{display:flex;gap:7px;margin-top:28px;padding:11px;color:#98a0ad;font-size:10px;line-height:1.6;border-top:1px solid var(--line)}.config-tip svg{flex:0 0 auto;color:#aeb5c1}.compact{padding:25px 28px}.config-form-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:23px}.config-head-actions{display:flex;align-items:center;gap:12px}.field-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:31px}.field-label-row>span:first-child{display:inline-flex;align-items:center;gap:3px}.ai-field-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.hot-topic-list{display:grid;gap:7px;margin-top:10px}.hot-topic-list button{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;width:100%;padding:9px 10px;color:#5f6d83;border:1px solid #e0e6f0;border-radius:6px;background:#fbfcff;text-align:left}.hot-topic-list button:hover{border-color:#aebcf0;background:#f5f7ff}.hot-topic-list b{color:var(--ink);font-size:10px;line-height:1.5}.hot-topic-list small{flex:0 0 auto;color:#99a3b2;font-size:9px}.ai-generate-button,.optimize-button{min-height:31px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border-radius:6px;font-size:10px;font-weight:600;transition:.2s}.ai-generate-button{color:var(--primary);border:1px solid #cbd5fb;background:#f4f6ff}.optimize-button{color:#148a4a;border:1px solid #ccebd7;background:#f2fbf5}.ai-generate-button:hover{color:#fff;border-color:var(--primary);background:var(--primary)}.optimize-button:hover{color:#fff;border-color:#148a4a;background:#148a4a}.ai-generate-button:disabled,.optimize-button:disabled{cursor:wait;opacity:.65}.autosave{display:inline-flex;align-items:center;gap:6px;color:#9ba3ae;font-size:10px}.autosave span{width:6px;height:6px;background:var(--success);border-radius:50%}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 17px}.full-field{grid-column:1 / -1}.field-grid input,.field-grid textarea,.field-grid select{margin-top:1px}.field-grid select,.route-grid select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' stroke='%237e8798' stroke-width='1.5' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 11px center}.custom-subgenre-field{grid-column:1 / -1;margin-top:-7px;padding:13px 14px 12px;border:1px solid #dbe3ff;border-radius:8px;background:#f8faff;color:#59698b!important}.custom-subgenre-field input{margin-top:1px;background:#fff}.custom-subgenre-field .field-hint{margin-top:3px}.required{color:var(--red)}.field-hint{color:#a0a8b4;font-size:10px;margin-top:-3px}.framework-page .page-header{margin-bottom:19px}.generation-state{display:inline-flex;align-items:center;gap:7px;color:var(--success);font-size:11px}.generation-state span{width:6px;height:6px;background:var(--success);border-radius:50%}.framework-progress{max-width:520px;margin:0 0 25px}.framework-progress>div:first-child{display:flex;justify-content:space-between;margin-bottom:8px;color:#98a0ad;font-size:10px}.framework-progress b{color:var(--success);font-weight:600}.framework-layout{display:grid;grid-template-columns:205px minmax(0,1fr);gap:20px}.framework-tabs{display:flex;flex-direction:column;gap:3px}.framework-tabs button{display:flex;align-items:center;gap:11px;padding:13px 11px;background:transparent;border-radius:8px;text-align:left;color:#737d8e}.framework-tabs button.active{background:#fff;box-shadow:0 2px 7px #1f2d5c0d;color:var(--ink)}.framework-tabs button>span:nth-child(2){flex:1;font-size:12px}.framework-tabs button small{display:block;color:#a0a8b5;margin-top:4px;font-size:9px}.framework-tabs button>svg{color:var(--success)}.tab-index{color:#b0b7c2;font-size:10px}.framework-tabs button.active .tab-index{color:var(--primary)}.framework-detail{position:relative;display:flex;flex-direction:column;height:min(720px,calc(100vh - 250px));min-height:470px;box-sizing:border-box;padding:30px 32px;border:1px solid #dfe5ef;background:linear-gradient(180deg,#fff,#fbfcff);border-radius:12px;box-shadow:0 16px 40px #1f2d5c0f;overflow:hidden}.framework-detail:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary),#28a745,#8b5cf6,#f59f00)}.detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:22px;border-bottom:1px solid #e5e9f2;position:relative;z-index:1}.detail-head h2{margin:10px 0 0;color:#102a5f;font-size:24px;letter-spacing:0}.premise-box{padding:43px 35px 29px;margin-top:27px;background:#f9faff;border:1px solid #e3e8fb;border-radius:8px;position:relative}.premise-box p{max-width:620px;margin:0 auto;color:#45516d;font-family:"DM Serif Display",serif;font-size:24px;line-height:1.65;text-align:center}.quote-mark{position:absolute;top:16px;left:23px;color:#b9c6fa;font-family:Georgia,serif;font-size:53px;line-height:1}.quote-mark.end{top:auto;left:auto;right:23px;bottom:-5px}.premise-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;padding-top:28px;margin-top:28px;border-top:1px solid #e6eafb}.premise-tags span{padding:6px 9px;color:#75809b;background:#fff;border:1px solid #e5e9f4;border-radius:5px;font-size:10px}.character-map{height:350px;margin-top:20px;position:relative;overflow:hidden;background:#fbfcff;border:1px solid #eef0f5;border-radius:7px}.character-map-caption{position:absolute;left:0;right:0;bottom:14px;text-align:center;color:#9ca4b2;font-size:10px}.character-node{position:absolute;min-width:90px;padding:11px 13px;color:var(--ink);border:1px solid #dce3f4;background:#fff;border-radius:8px;box-shadow:0 4px 10px #1f2d5c0f;text-align:center;z-index:1}.character-node span,.character-node small{display:block}.character-node span{font-weight:700;font-size:12px}.character-node small{margin-top:4px;color:#929bab;font-size:9px}.character-node.main{top:128px;left:43%;border-color:#a7b5ee;background:#f5f7ff}.character-node.node-a{top:47px;left:15%}.character-node.node-b{top:48px;right:14%}.character-node.node-c{bottom:65px;left:18%}.map-line{position:absolute;height:1px;background:#bdc9ee;transform-origin:left center}.line-a{width:195px;top:124px;left:25%;transform:rotate(21deg)}.line-b{width:205px;top:140px;right:23%;transform:rotate(-20deg)}.world-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:24px}.world-card{padding:19px;border:1px solid #e7eaf1;border-radius:8px;background:#fbfcff}.world-icon{display:inline-grid;place-items:center;width:27px;height:27px;color:var(--primary);border-radius:6px;background:#e9edff;font-size:11px}.world-card b{display:block;margin-top:15px;color:var(--ink);font-size:13px}.world-card p{margin:7px 0 0;color:#8d96a5;font-size:11px;line-height:1.7}.outline-layout{display:grid;grid-template-columns:210px 1fr;gap:20px;margin-top:23px}.outline-tree{padding-right:16px;border-right:1px solid var(--line)}.outline-volume{display:flex;align-items:center;gap:3px;padding:10px 0;color:#697388;font-size:11px}.outline-volume small{margin-left:auto;color:#a3aab5;font-size:9px}.outline-volume.active{color:var(--ink);font-weight:600}.outline-tree button{display:flex;align-items:center;gap:9px;width:100%;padding:9px 7px 9px 17px;color:#929aaa;background:transparent;border-radius:5px;text-align:left;font-size:11px}.outline-tree button span{color:#b2bac7;font-size:9px}.outline-tree button.active{color:var(--primary);background:#f0f2ff;font-weight:600}.outline-tree button svg{margin-left:auto}.outline-detail{padding:4px 8px}.outline-detail h3{margin:15px 0 10px;color:var(--ink);font-size:21px}.outline-detail p{max-width:450px;color:#7c8697;font-size:12px;line-height:1.8}.outline-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}.outline-meta span{padding:12px;color:#7d8797;background:#f8f9fc;border-radius:6px;font-size:10px}.outline-meta b{display:block;margin-bottom:5px;color:var(--ink);font-size:10px}.lock-note{position:absolute;left:29px;right:29px;bottom:18px;display:flex;align-items:center;gap:6px;padding-top:16px;border-top:1px solid var(--line);color:var(--success);font-size:10px}.lock-note button{margin-left:auto;color:var(--primary);background:transparent;font-size:11px;font-weight:600}.framework-editor{flex:1 1 auto;min-height:0;margin-top:24px;padding-right:6px;position:relative;z-index:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c7cfda transparent}.framework-editor::-webkit-scrollbar{width:6px}.framework-editor::-webkit-scrollbar-thumb{background:#c7cfda;border-radius:999px}.framework-editor label{display:block;color:#66738a;font-size:11px;font-weight:700}.framework-editor textarea,.framework-editor input{width:100%;margin-top:8px;box-sizing:border-box;border:1px solid #dfe5ef;background:#ffffffe6;transition:border-color .18s,box-shadow .18s,background .18s}.framework-editor textarea:focus,.framework-editor input:focus{border-color:#8ea0e8;background:#fff;box-shadow:0 0 0 3px #3b5bdb14}.framework-editor textarea{min-height:88px;resize:vertical;line-height:1.75}.framework-two-col{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:16px}.framework-two-col label,.premise-editor>label{padding:16px;border:1px solid #e4e9f3;border-radius:10px;background:#fff;box-shadow:0 8px 20px #1f2d5c0a}.framework-two-col textarea{min-height:112px}.premise-editor>label textarea{min-height:130px;color:#31415e;font-size:15px;line-height:1.8}.premise-editor .premise-tags{justify-content:flex-start;padding-top:18px;margin-top:18px}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding:12px 14px;color:#6c778c;border:1px solid #e4e9f3;border-radius:10px;background:#fff;font-size:11px;box-shadow:0 6px 18px #1f2d5c09}.editor-toolbar>span{font-weight:700;color:#526079}.editor-toolbar .text-button{display:inline-flex;align-items:center;gap:5px;color:var(--primary);font-size:10px;font-weight:700}.character-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.character-editor-card{position:relative;padding:15px;border:1px solid #e3e8f2;border-radius:10px;background:#fff;box-shadow:0 10px 24px #1f2d5c0b;overflow:hidden}.character-editor-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#c7d2fe}.character-editor-card.main-character{border-color:#bdc9f5;background:#f8faff}.character-editor-card.main-character:before{background:var(--primary)}.card-editor-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.card-editor-actions{display:flex;align-items:center;gap:7px}.character-ai-button{color:var(--primary);font-size:10px}.character-number{display:inline-grid;place-items:center;width:28px;height:28px;color:var(--primary);background:#edf1ff;border-radius:7px;font-size:10px;font-weight:800}.character-editor-card input,.character-editor-card textarea{margin-top:8px;padding:10px 11px;font-size:11px}.character-editor-card input:first-of-type{color:#142b5f;font-size:15px;font-weight:800}.character-editor-card textarea{min-height:72px}.danger-icon{padding:4px;color:#d94848}.editable-world-grid{margin-top:0}.editable-world-card{position:relative;padding:16px;border-color:#e0e7f2;background:linear-gradient(180deg,#fff,#fbfcff);box-shadow:0 10px 24px #1f2d5c0a}.editable-world-card:nth-child(2n) .world-icon{color:#148a4a;background:#e8f7ee}.editable-world-card:nth-child(3n) .world-icon{color:#7c3aed;background:#f0eafe}.editable-world-card:nth-child(4n) .world-icon{color:#c26a00;background:#fff3df}.editable-world-card .card-editor-head{margin-bottom:10px}.editable-world-card input{color:#172b54;font-size:14px;font-weight:800;background:#fff}.editable-world-card textarea{min-height:104px;margin-top:9px;padding:10px 11px;background:#fff}.outline-editor-list{display:flex;flex-direction:column;gap:16px}.outline-purpose{display:flex;align-items:flex-start;gap:13px;margin:-3px 0 16px;padding:13px 15px;border:1px solid #dfe7f4;border-radius:10px;background:#f7f9ff;color:#6b7690}.outline-purpose b{flex:0 0 auto;color:#102a5f;font-size:11px}.outline-purpose p{margin:0;font-size:11px;line-height:1.7}.volume-editor{padding:0;border:1px solid #dfe6f2;border-radius:11px;background:#fff;box-shadow:0 10px 26px #1f2d5c0b;overflow:hidden}.volume-editor-head{display:grid;grid-template-columns:minmax(0,1fr) 116px auto;align-items:center;gap:10px;margin-bottom:0;padding:14px 16px;background:linear-gradient(90deg,#f5f7ff,#fff 72%);border-bottom:1px solid #e7ebf3}.volume-editor-head input{margin:0;border-color:transparent;font-weight:800;color:#102a5f;background:transparent;font-size:16px}.volume-editor-head input:focus{background:#fff}.volume-editor-head .volume-range{color:#66748d;border-color:#dce3ef;background:#fff;font-size:10px;text-align:center}.volume-editor-head .text-button{display:inline-flex;align-items:center;gap:4px;color:var(--primary);background:transparent;font-size:10px;white-space:nowrap;font-weight:700}.volume-goal-input{margin:0;padding:10px 16px;border:0;border-bottom:1px solid #e7ebf3;border-radius:0;background:#fff;font-size:12px}.chapter-editor-row{display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr;gap:8px;padding:10px 16px;border-top:1px solid #edf1f6;background:#fff}.chapter-editor-row:hover{background:#fafbff}.chapter-editor-row.active{background:#f0f3ff;border-radius:0}.chapter-editor-row input{margin:0;padding:9px 10px;border-color:#dfe5ef;font-size:10px;background:#fff}.chapter-editor-title{display:flex;align-items:center;gap:8px;min-width:0}.chapter-editor-title span{display:inline-grid;place-items:center;width:25px;height:25px;color:#7d8799;background:#edf1f7;border-radius:6px;font-size:9px;font-weight:800}.chapter-editor-title input{min-width:0}.writing-page{padding-top:31px}.writing-top{display:flex;align-items:center;gap:26px;margin-bottom:24px}.writing-top .back-link{margin:0}.writing-title{margin-right:auto}.writing-title .eyebrow{margin-bottom:4px}.writing-title h1{margin:0;color:var(--ink);font-size:19px}.writing-shell{display:grid;grid-template-columns:270px minmax(0,1fr);height:calc(100vh - 170px);min-height:560px;max-height:760px;overflow:hidden;border:1px solid #e4e8ef;border-radius:10px;background:#fff}.chapter-sidebar{min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#fbfcfd}.chapter-sidebar-head{padding:20px 17px 14px}.chapter-sidebar-head b,.chapter-sidebar-head small{display:block}.chapter-sidebar-head b{color:var(--ink);font-size:12px}.chapter-sidebar-head small{margin-top:6px;color:#9aa2b0;font-size:10px}.dashboard-sort-tools{display:flex;align-items:center;gap:10px}.dashboard-sort-tools>input{min-width:210px;border:1px solid #e1e6ee;border-radius:6px;padding:8px 10px;color:var(--ink);background:#fff;font-size:12px}.dashboard-sort-tools>input:focus{outline:2px solid rgba(59,91,219,.12);border-color:#8ea0e7}.chapter-search-tools{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:6px;padding:0 12px 10px}.chapter-search-tools input,.chapter-search-tools select{width:100%;min-width:0;border:1px solid #e1e6ee;border-radius:6px;padding:7px 8px;color:var(--ink);background:#fbfcfe;font-size:11px}.chapter-search-tools input:focus,.chapter-search-tools select:focus{outline:2px solid rgba(59,91,219,.12);border-color:#8ea0e7}.empty-list-note{margin:20px 10px;color:#9aa2b0;font-size:11px;text-align:center}.volume-progress{height:4px;margin:0 17px 14px;overflow:hidden;background:#e9edf3;border-radius:4px}.volume-progress span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.batch-progress{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:-2px 12px 10px;padding:8px 10px;color:#526186;background:#eef2ff;border:1px solid #dbe3ff;border-radius:7px;font-size:10px}.batch-progress b{color:var(--primary);font-size:10px}.batch-view-note{display:flex;align-items:center;gap:8px;margin:18px 0 0;padding:10px 12px;color:#526186;background:#f1f4ff;border:1px solid #dbe3ff;border-radius:7px;font-size:11px}.batch-view-note svg{color:var(--primary)}.batch-view-note span{flex:1}.batch-view-note b{color:var(--primary);font-size:10px}.chapter-list{flex:1 1 auto;min-height:0;overflow-y:auto;padding:0 8px 8px;scrollbar-width:thin;scrollbar-color:#c7cfda transparent}.chapter-list::-webkit-scrollbar{width:6px}.chapter-list::-webkit-scrollbar-thumb{background:#c7cfda;border-radius:999px}.chapter-item{display:flex;align-items:center;gap:8px;width:100%;min-height:58px;padding:8px;color:#80899a;background:transparent;border-left:2px solid transparent;text-align:left}.chapter-item:hover{background:#f3f5fa}.chapter-item.active{border-left-color:var(--primary);background:#edf0ff;color:var(--ink)}.chapter-status{width:17px;flex:0 0 17px;display:grid;place-items:center}.state-dot{width:7px;height:7px;display:block;border-radius:50%}.state-dot.green{background:var(--success)}.state-dot.orange{background:var(--orange)}.state-dot.blue{background:var(--primary);box-shadow:0 0 0 3px #dbe2ff}.state-dot.gray{background:#c5cad3}.chapter-name{flex:1;min-width:0}.chapter-name b,.chapter-name strong{display:block}.chapter-name b{color:#a0a8b5;font-size:9px;font-weight:500}.chapter-name strong{overflow:hidden;margin-top:5px;color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600}.chapter-words{color:#a3aab5;font-size:9px}.consistency-box{margin:auto 12px 13px;padding:13px;background:#fff8eb;border:1px solid #ffe6b7;border-radius:7px}.consistency-box>div{display:flex;align-items:center;gap:6px;color:var(--orange)}.consistency-box b{color:#86531b;font-size:10px}.warning-count{margin-left:auto;width:17px;height:17px;display:grid;place-items:center;color:#fff;background:var(--orange);border-radius:50%;font-size:9px}.consistency-box p{margin:8px 0;color:#a07c4a;font-size:9px;line-height:1.5}.consistency-box button{display:flex;align-items:center;gap:4px;padding:0;color:var(--orange);background:transparent;font-size:10px}.chapter-main{min-width:0;overflow-y:auto;padding:25px 38px 28px}.chapter-main-head{align-items:flex-start;padding-bottom:20px;border-bottom:1px solid var(--line)}.chapter-label{display:flex;align-items:center;gap:9px}.model-label{display:inline-flex;align-items:center;gap:4px;color:#9ca4b1;font-size:10px}.chapter-main-head h2{margin:10px 0 0;color:var(--ink);font-size:21px}.chapter-stats{display:flex;gap:16px;padding-top:3px;color:#9da5b1;font-size:10px}.chapter-stats span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.setting-cards{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:22px 0 18px}.setting-card{padding:12px 14px;background:#f8f9fc;border-radius:6px}.setting-card span,.setting-card b{display:block}.setting-card span{color:#9aa2af;font-size:9px}.setting-card b{margin-top:7px;color:#637087;font-size:11px;font-weight:500}.chapter-content{max-width:740px;min-height:310px;margin:0 auto;padding:13px 21px;color:#4d596e;font-family:"DM Serif Display",Songti SC,serif;font-size:16px;line-height:2.05}.chapter-content p{margin:0 0 18px}.chapter-content .content-lead{color:var(--ink);font-size:18px}.chapter-edit-panel{max-width:820px;margin:0 auto;padding:16px;border:1px solid #cbd5fb;border-radius:9px;background:#f8faff;box-shadow:0 8px 22px #3b5bdb0f}.chapter-edit-panel textarea{display:block;width:100%;min-height:390px;padding:17px 18px;color:#4d596e;border:1px solid #dfe5ef;border-radius:7px;background:#fff;font-family:"DM Serif Display",Songti SC,serif;font-size:16px;line-height:2;resize:vertical}.chapter-edit-panel textarea:focus{border-color:#8294e3;outline:none;box-shadow:0 0 0 3px #3b5bdb14}.chapter-edit-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:11px;color:#8a95a8;font-size:10px}.chapter-edit-meta>div{display:flex;gap:8px}.chapter-edit-meta .secondary-button,.chapter-edit-meta .primary-button{min-height:33px;padding:0 11px;font-size:10px}.content-cursor:after{content:"";display:inline-block;width:1px;height:18px;margin-left:4px;background:var(--primary);vertical-align:-2px;animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:0}}.chapter-editor-actions{display:flex;align-items:center;justify-content:center;gap:9px;padding-top:20px;border-top:1px solid var(--line)}.shortcut{opacity:.65;font-size:9px;font-weight:400}.danger-icon{color:var(--red)}.empty-writing{min-height:470px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-book{width:57px;height:57px;display:grid;place-items:center;color:var(--primary);background:#e9edff;border-radius:50%}.empty-writing h3{margin:18px 0 8px;color:var(--ink);font-size:16px}.empty-writing p{max-width:350px;margin:0 0 20px;color:#8d96a5;font-size:11px;line-height:1.7}.batch-empty-hint{display:inline-flex;align-items:center;min-height:33px;padding:0 12px;color:#66748d;background:#f1f4ff;border:1px solid #dbe3ff;border-radius:6px;font-size:11px}.generating-panel{max-width:500px;margin:100px auto 0;padding:33px;border:1px solid #e1e6fb;background:#fafbff;border-radius:9px;text-align:center}.generating-orbit{width:50px;height:50px;display:grid;place-items:center;margin:0 auto 16px;color:var(--primary);border:1px solid #bdc9f5;border-radius:50%;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 0 0 10px #3b5bdb12}}.generating-panel h3{margin:0;color:var(--ink);font-size:15px}.generating-panel p{color:#8d96a6;font-size:11px}.generating-panel .progress-track{margin:20px 0 9px}.progress-animated{width:55%;animation:loading 2.2s ease-in-out infinite}@keyframes loading{0%{width:13%}to{width:94%}}.generating-meta{display:flex;justify-content:space-between;color:#9aa3b0;font-size:10px}.generating-meta .text-button{display:inline-flex;align-items:center;gap:4px;color:var(--red)}.ai-tool-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.deai-controls{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(150px,1fr));gap:12px;margin:-7px 0 13px;padding:15px 17px;border:1px solid #dfe5f0;border-radius:8px;background:#fbfcff}.deai-controls label{display:flex;flex-direction:column;gap:7px;min-width:0;color:#66748d;font-size:10px;font-weight:600}.deai-controls select{width:100%;min-height:37px;padding:0 30px 0 10px;color:var(--ink);border:1px solid #d9e0ed;border-radius:6px;background:#fff;font-size:11px}.deai-controls select:focus{border-color:#8294e3;outline:none;box-shadow:0 0 0 3px #3b5bdb14}.deai-note{display:flex;align-items:center;gap:8px;min-height:36px;margin:0 0 14px;padding:0 12px;color:#78859a;border:1px solid #e5e9f2;border-radius:6px;background:#fff;font-size:10px;line-height:1.6}.deai-note svg{flex:0 0 auto;color:var(--primary)}.deai-note b{margin-left:auto;color:var(--primary);font-size:10px;font-weight:600;white-space:nowrap}.tool-panel,.analysis-panel{min-width:0;border:1px solid #e6e9f0;background:#fff;border-radius:10px;overflow:hidden}.tool-panel-head,.analysis-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px 19px;border-bottom:1px solid var(--line);background:#fbfcff}.tool-panel-head h3,.analysis-head h3{margin:0;color:var(--ink);font-size:14px}.tool-panel-head p,.analysis-head p{margin:7px 0 0;color:#8f98a8;font-size:10px}.tool-panel-head>span{color:#9ca4b1;font-size:10px;white-space:nowrap}.tool-panel-actions{display:flex;align-items:center;gap:9px}.tool-panel-actions .text-button{white-space:nowrap}.tool-panel textarea{width:100%;min-height:520px;padding:18px 20px;border:0;color:#3f4b63;background:#fff;resize:vertical;font-size:13px;line-height:1.9;outline:none}.tool-result{min-height:520px;max-height:620px;overflow-y:auto;padding:18px 22px;color:#47536a;line-height:1.95;font-size:13px}.tool-result p{margin:0 0 15px}.tool-result>span{color:#a0a8b5}.market-stats .stat-card strong{font-size:17px}.market-selector-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:-7px 0 17px;padding:15px 17px;border:1px solid #dfe5f0;border-radius:8px;background:#fbfcff}.market-selector-bar label{display:flex;align-items:center;gap:12px;color:#5e6b82;font-size:11px;font-weight:600}.market-selector-bar select{min-width:230px;min-height:38px;padding:0 32px 0 11px;color:var(--ink);border:1px solid #d9e0ed;border-radius:6px;background:#fff;font-size:12px}.market-selector-bar select:focus{border-color:#8294e3;outline:none;box-shadow:0 0 0 3px #3b5bdb14}.market-selector-bar small{color:#98a1af;font-size:10px}.market-context-strip{display:flex;align-items:center;flex-wrap:wrap;gap:9px 22px;margin:-15px 0 22px;color:#8993a3;font-size:10px}.market-context-strip span{display:inline-flex;align-items:center;gap:6px}.market-context-strip svg{color:var(--primary)}.analysis-panel{margin-top:22px}.analysis-content{min-height:420px;padding:21px 24px;color:#4d596e;font-size:13px;line-height:1.9}.analysis-content p{margin:0 0 13px}.analysis-empty{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;color:#9ca4b1;text-align:center}.analysis-empty svg{color:var(--primary)}.analysis-empty h3{margin:0;color:var(--ink);font-size:17px}.analysis-empty .primary-button{margin-top:5px}.market-empty-panel{margin-top:0}.market-report{display:grid;grid-template-columns:184px minmax(0,1fr);gap:20px;align-items:start}.market-tabs{display:flex;flex-direction:column;gap:4px}.market-tabs button{display:flex;align-items:center;gap:9px;min-height:42px;padding:0 12px;color:#7e8797;border-radius:7px;background:transparent;font-size:11px;text-align:left}.market-tabs button:hover{color:var(--ink);background:#f1f3f8}.market-tabs button.active{color:var(--primary);background:#e9edff;font-weight:600}.market-report-main{min-width:0;border:1px solid #e6e9f0;border-radius:10px;background:#fff;overflow:hidden}.report-section{padding:25px 27px 29px}.report-summary{padding-bottom:22px;border-bottom:1px solid var(--line)}.report-summary h2{max-width:740px;margin:12px 0 8px;color:var(--ink);font-size:21px;line-height:1.45}.report-summary p{max-width:820px;margin:0;color:#778297;font-size:12px;line-height:1.8}.score-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0}.score-card{padding:14px;border:1px solid #e8ebf1;border-radius:8px;background:#fbfcff}.score-card>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.score-card span{color:#8992a2;font-size:10px}.score-card strong{color:var(--ink);font-size:22px}.score-track{height:5px;margin-top:12px;overflow:hidden;background:#edf0f5;border-radius:5px}.score-track span{display:block;height:100%;border-radius:inherit}.score-track .blue{background:var(--primary)}.score-track .green{background:var(--success)}.score-track .violet{background:#7950f2}.score-track .orange{background:var(--orange)}.report-two-col,.audience-grid,.title-intro-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.report-block{padding:16px;border:1px solid #e6eaf1;border-radius:8px;background:#fbfcff}.report-block-title{display:flex;align-items:center;gap:8px;margin-bottom:10px}.report-block-title svg{color:var(--primary)}.report-block h3{margin:0;color:var(--ink);font-size:13px}.report-block p{margin:0;color:#657188;font-size:11px;line-height:1.8}.report-block small{display:block;margin-top:10px;color:#98a1af;font-size:10px;line-height:1.6}.basis-preview{margin-top:18px;padding:15px 16px;border:1px solid #e2e7f0;border-radius:8px;background:#fbfcff}.basis-preview .report-block-title{margin-bottom:12px}.basis-preview .report-block-title .text-button{margin-left:auto;font-size:10px}.basis-chip-row{display:flex;flex-wrap:wrap;gap:8px}.basis-chip-row span{padding:6px 8px;border-radius:5px;font-size:10px}.basis-chip-row .available{color:var(--success);background:#eaf7ed}.basis-chip-row .missing{color:#9ca4b1;background:#f0f2f5}.basis-before-analysis{margin-bottom:18px;padding:16px 17px;border:1px solid #dfe5f0;border-radius:8px;background:#fff}.basis-before-analysis .report-block-title{margin-bottom:12px}.basis-before-analysis .report-block-title>span{margin-left:auto;color:#9aa3b1;font-size:10px;font-weight:400}.basis-before-analysis p{margin:12px 0 0;color:#8b95a5;font-size:10px;line-height:1.7}.report-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.report-section-heading h2{margin:11px 0 0;color:var(--ink);font-size:19px}.report-section-heading p{margin:0;color:#9aa3b1;font-size:10px}.audience-card{min-height:95px;padding:16px;border:1px solid #e7eaf1;border-radius:8px;background:#fbfcff}.audience-card.primary-audience{border-color:#c9d3fa;background:#f5f7ff}.audience-card span{display:block;color:#9099a8;font-size:10px}.audience-card strong{display:block;margin-top:10px;color:var(--ink);font-size:14px;line-height:1.5}.needs-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0 22px}.needs-list div{display:flex;gap:9px;padding:12px;color:#68748a;border-bottom:1px solid var(--line);font-size:11px;line-height:1.6}.needs-list b{color:var(--primary);font-size:10px}.selling-grid,.opening-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.selling-card,.opening-card{padding:16px;border:1px solid #e7eaf1;border-radius:8px;background:#fff}.selling-number{color:var(--primary);font-size:10px;font-weight:700;letter-spacing:.08em}.selling-card h3,.opening-card h3{margin:11px 0 8px;color:var(--ink);font-size:13px}.selling-card p,.opening-card p{margin:0;color:#768195;font-size:11px;line-height:1.75}.risk-list{display:grid;gap:10px;margin-top:17px}.risk-row{display:grid;grid-template-columns:36px minmax(0,1fr);gap:13px;padding:14px;border:1px solid #e7eaf1;border-radius:8px}.risk-level{align-self:start;padding:5px 0;border-radius:4px;font-size:9px;text-align:center}.risk-level.high{color:#c92a2a;background:#fff0f0}.risk-level.medium{color:#b66b00;background:#fff6e4}.risk-level.low{color:var(--success);background:#ebf8ee}.risk-row h3{margin:0;color:var(--ink);font-size:12px}.risk-row p{margin:7px 0 6px;color:#768195;font-size:11px;line-height:1.7}.risk-row small,.opening-card small{color:#99a1ae;font-size:10px;line-height:1.6}.opening-heading{margin-top:27px;border-bottom:0}.opening-heading h2{font-size:17px}.opening-card>span{color:#7950f2;font-size:10px;font-weight:700}.opening-card small{display:block;margin-top:10px}.action-list{display:grid;gap:9px;margin:18px 0 25px}.action-list div{display:flex;align-items:flex-start;gap:12px;padding:13px 14px;border:1px solid #e7eaf1;border-radius:7px;color:#657188;background:#fbfcff;font-size:11px;line-height:1.7}.action-list b{width:20px;height:20px;display:grid;place-items:center;flex:0 0 auto;color:#fff;border-radius:50%;background:var(--primary);font-size:10px}.suggestion-row{display:grid;grid-template-columns:130px minmax(0,1fr);gap:10px;padding:10px 0;border-top:1px solid #e9edf3}.suggestion-row strong{color:var(--ink);font-size:11px}.suggestion-row span,.intro-suggestion{color:#768195;font-size:10px;line-height:1.7}.intro-suggestion{margin:0;padding:11px 0;border-top:1px solid #e9edf3}.basis-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:19px}.basis-detail-card{padding:15px;border:1px solid #e7eaf1;border-radius:8px;background:#fbfcff}.basis-detail-card.available{border-color:#d5e9da}.basis-detail-card>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.basis-detail-card span{color:#7f899a;font-size:10px}.basis-detail-card b{color:var(--ink);font-size:12px}.basis-detail-card p{margin:10px 0 0;color:#788397;font-size:10px;line-height:1.7}.evidence-list{margin-top:25px}.evidence-list h3{margin:0 0 11px;color:var(--ink);font-size:14px}.evidence-row{display:grid;grid-template-columns:82px minmax(0,1fr);gap:12px;padding:12px 0;border-top:1px solid var(--line)}.evidence-row>span{color:var(--primary);font-size:10px;font-weight:600}.evidence-row p{margin:0;color:#66738a;font-size:11px;line-height:1.7}.evidence-row small{display:block;margin-top:5px;color:#99a1ae;font-size:10px;line-height:1.6}.basis-note{display:flex;align-items:flex-start;gap:8px;margin-top:19px;padding:11px 12px;color:#8e6b30;border:1px solid #f1dfb7;border-radius:6px;background:#fff9ea;font-size:10px;line-height:1.6}.basis-note svg{flex:0 0 auto;margin-top:1px}.model-route,.usage-panel{padding:23px 25px;border:1px solid #e6e9f0;background:#fff;border-radius:10px}.route-head{margin-bottom:21px}.model-select-field{display:flex;flex-direction:column;gap:8px;max-width:420px;margin-bottom:22px;color:#667187;font-size:11px}.model-select-field select{min-height:40px;padding:0 12px;color:#3c4660;border:1px solid #dfe4ec;border-radius:6px;background:#fff;font-size:12px}.model-select-field select:focus{border-color:#8294e3;outline:none;box-shadow:0 0 0 3px #3b5bdb14}.route-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:11px}.route-grid label{color:#8b94a3;font-size:10px}.route-grid select{font-size:10px}.section-heading{margin:34px 0 14px}.section-heading h2{margin:0;color:var(--ink);font-size:17px}.section-heading p{margin:6px 0 0;color:#929aaa;font-size:11px}.model-list{border-top:1px solid var(--line)}.model-row{min-height:67px;padding:0 10px;border-bottom:1px solid var(--line)}.model-status{width:7px;height:7px;background:var(--success);border-radius:50%}.model-status.offline{background:#c5cbd5}.version-select{display:block;max-width:260px;margin-top:7px;padding:5px 7px;border:1px solid var(--line);border-radius:5px;color:#727d8e;background:#fff;font-size:10px}.model-name{flex:1}.model-name b,.model-name small{display:block}.model-name b{color:#4a5570;font-size:12px}.model-name small{color:#9da5b1;font-size:10px;margin-top:4px}.model-context{color:#919aa8;font-size:10px}.model-tags{display:flex;gap:5px}.model-tags span{padding:4px 6px;color:#707b91;background:#f0f2f7;border-radius:4px;font-size:9px}.default-tag{color:var(--success);background:#e6f6ea;border-radius:4px;padding:4px 6px;font-size:9px}.empty-model{display:flex;align-items:center;gap:11px;padding:22px 16px;border:1px dashed #d6dce6;color:#9aa3b1;border-radius:8px;font-size:11px}.empty-model .text-button{margin-left:auto}.library-guide{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:22px;margin-bottom:18px;padding:19px 21px;border:1px solid #dfe6f5;border-radius:10px;background:linear-gradient(100deg,#f5f7ff,#fbfcff 68%,#f4fbf7)}.library-guide-main{display:flex;align-items:flex-start;gap:12px}.library-guide-icon{width:35px;height:35px;display:grid;place-items:center;flex:0 0 auto;color:var(--primary);border-radius:8px;background:#e8edff}.library-guide h2{margin:0;color:var(--ink);font-size:14px}.library-guide p{margin:7px 0 0;color:#758198;font-size:11px;line-height:1.7}.library-guide-items{display:grid;grid-template-columns:1fr 1fr;gap:10px 17px;align-content:center}.library-guide-items div{display:flex;flex-direction:column;gap:4px;padding-left:11px;border-left:2px solid #cdd6f8}.library-guide-items div:nth-child(2){border-color:#c9e6d2}.library-guide-items div:nth-child(3){border-color:#ded1fb}.library-guide-items div:nth-child(4){border-color:#f4dbb1}.library-guide-items b{color:#526079;font-size:10px}.library-guide-items span{color:#98a1b0;font-size:10px;line-height:1.45}.library-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:25px}.library-summary>div{min-height:64px;padding:12px 13px;border:1px solid #e7eaf1;border-radius:8px;background:#fff}.library-summary span{display:block;color:#929aaa;font-size:10px}.library-summary strong{display:block;margin-top:7px;color:var(--ink);font-size:19px;line-height:1}.library-toolbar{margin-bottom:22px}.sort-select{position:relative;display:inline-flex;align-items:center;gap:6px;color:#778093;font-size:11px}.sort-select span{color:#a0a8b6}.sort-select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:28px;padding:0 23px 0 7px;color:#657086;border:0;border-radius:5px;background:#f6f7fa;font-size:11px;cursor:pointer}.sort-select svg{position:absolute;right:6px;pointer-events:none;color:#8b94a3}.asset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.asset-card{border:1px solid #e7eaf1;background:#fff;border-radius:9px;overflow:visible;box-shadow:0 2px 5px #1f2d5c06;transition:.2s}.asset-card:hover{border-color:#cbd5f3;box-shadow:0 10px 24px #1f2d5c14;transform:translateY(-2px)}.asset-card.asset-disabled{opacity:.69}.asset-preview{height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;color:var(--primary);background:#f1f3ff}.asset-preview span{color:#7683ae;font-size:10px;font-weight:700;letter-spacing:.1em}.asset-body{padding:15px}.asset-type{color:var(--primary);font-size:9px}.asset-body h3{overflow:hidden;margin:8px 0 7px;color:var(--ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.asset-description{height:34px;overflow:hidden;margin:0 0 13px;color:#8b94a3;font-size:10px;line-height:1.65}.asset-meta{justify-content:flex-start;color:#99a1ad;font-size:10px}.asset-footer{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:11px;border-top:1px solid var(--line)}.switch input{display:none}.switch span{display:block;width:28px;height:16px;padding:2px;background:#d8dde6;border-radius:9px}.switch span:after{content:"";display:block;width:12px;height:12px;background:#fff;border-radius:50%;transition:.2s}.switch input:checked+span{background:var(--primary)}.switch input:checked+span:after{transform:translate(12px)}.asset-menu-wrap{position:relative}.asset-menu-wrap .icon-button{position:relative;z-index:4}.asset-menu-wrap .icon-button.menu-open{color:var(--primary);background:#edf1ff}.asset-menu{position:absolute;right:0;bottom:calc(100% + 7px);z-index:5;min-width:142px;padding:5px;border:1px solid #e1e6f0;border-radius:8px;background:#fff;box-shadow:0 12px 28px #1f2d5c24;animation:menuIn .16s ease}.asset-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:9px 10px;color:#56627a;border-radius:5px;background:transparent;text-align:left;font-size:11px;white-space:nowrap}.asset-menu button:hover{color:var(--primary);background:#f1f4ff}.asset-menu button svg{flex:0 0 auto}.asset-menu .danger-menu-item{color:#d84d57}.asset-menu .danger-menu-item:hover{color:#c63843;background:#fff1f2}.asset-menu>span{display:block;height:1px;margin:4px 5px;background:#edf0f5}.library-empty{display:flex;flex-direction:column;align-items:center;padding:55px 20px;border:1px dashed #d6dce6;border-radius:10px;color:#9aa3b1;background:#fbfcff;text-align:center}.library-empty>svg{color:#a9b5de}.library-empty h3{margin:14px 0 6px;color:#59667d;font-size:14px}.library-empty p{margin:0 0 16px;font-size:11px}.upload-library-button{position:relative;cursor:pointer}.library-preview-modal,.library-rename-modal{width:min(610px,100%);padding:24px 26px 21px;border:1px solid #e2e7f0;border-radius:11px;background:#fff;box-shadow:0 22px 60px #1f2d5c33;animation:modalIn .18s ease}.library-rename-modal{width:min(450px,100%)}.library-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.library-modal-head h2{margin:7px 0 0;color:var(--ink);font-size:19px;word-break:break-word}.library-preview-meta{display:flex;align-items:center;gap:10px;margin-top:15px;color:#929aaa;font-size:10px}.library-preview-description{margin:16px 0 10px;color:#68748a;font-size:11px;line-height:1.7}.library-preview-content{max-height:320px;overflow:auto;margin:0;padding:14px;color:#59667d;border:1px solid #e6eaf2;border-radius:7px;background:#f8f9fc;font-family:inherit;font-size:11px;line-height:1.8;white-space:pre-wrap;word-break:break-word}.library-rename-modal label{display:flex;flex-direction:column;gap:8px;margin-top:22px;color:#667187;font-size:11px}.library-rename-modal input{width:100%;min-height:40px;padding:0 11px;color:#3c4660;border:1px solid #dfe4ec;border-radius:6px;font-size:12px}.library-rename-modal input:focus{border-color:#8294e3;outline:none;box-shadow:0 0 0 3px #3b5bdb14}.library-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.usage-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:25px}.stat-card{min-height:119px;padding:16px;border:1px solid #e7eaf0;background:#fff;border-radius:9px;position:relative}.stat-icon{width:29px;height:29px;display:grid;place-items:center;margin-bottom:13px;border-radius:6px}.stat-icon.blue{color:var(--primary);background:#e9edff}.stat-icon.green{color:var(--success);background:#e6f6ea}.stat-icon.violet{color:#7950f2;background:#eee9ff}.stat-icon.orange{color:var(--orange);background:#fff4e0}.stat-card>span{display:block;color:#929aaa;font-size:10px}.stat-card strong{display:inline-block;margin-top:5px;color:var(--ink);font-size:22px}.stat-card small{margin-left:8px;color:var(--success);font-size:9px}.usage-panel-head{margin-bottom:17px}.usage-table-row{display:grid;grid-template-columns:1.05fr 1.55fr 1.1fr 1fr .6fr;align-items:center;min-height:45px;border-top:1px solid var(--line);color:#7e8796;font-size:10px}.table-head{min-height:35px;border-top:0;color:#a1a8b4;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.table-model-dot{display:inline-block;width:6px;height:6px;margin-right:6px;background:var(--success);border-radius:50%}.toast{position:fixed;right:28px;bottom:25px;z-index:30;display:flex;align-items:center;gap:8px;padding:12px 15px;color:#fff;background:#26345f;box-shadow:0 7px 22px #1f2d5c2e;border-radius:7px;font-size:12px;animation:toastIn .25s ease}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}}.auth-layout{min-height:100vh;display:grid;grid-template-columns:60% 40%;background:#f5f6f8}.auth-brand{min-height:100vh;padding:52px 11%;position:relative;overflow:hidden;color:#fff;background:linear-gradient(145deg,#1e2b58,#2e4188 54%,#3b5bdb)}.auth-brand:before{content:"";position:absolute;width:600px;height:600px;right:-230px;bottom:-300px;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 45px #ffffff09,0 0 0 90px #ffffff06}.auth-brand:after{content:"";position:absolute;right:12%;top:17%;width:1px;height:330px;background:linear-gradient(transparent,rgba(255,255,255,.25),transparent);transform:rotate(32deg)}.brand-mark.large{width:43px;height:43px;margin-bottom:83px;background:#fff;color:var(--primary)}.auth-brand .eyebrow{color:#bec9ff}.auth-brand h1{position:relative;z-index:1;margin:17px 0 22px;color:#fff;font-family:"DM Serif Display",serif;font-size:clamp(45px,5vw,71px);font-weight:400;line-height:1.08;letter-spacing:-.02em}.auth-brand h1 em{color:#bfcaff;font-style:italic}.auth-brand>p{max-width:430px;color:#d7defb;font-size:14px;line-height:1.9}.auth-flow{display:flex;align-items:center;gap:15px;margin-top:70px;color:#ffffff75;font-size:10px;letter-spacing:.1em}.auth-flow span.active{color:#fff}.auth-flow i{width:38px;height:1px;background:#fff3}.auth-orbit{position:absolute;border:1px solid rgba(255,255,255,.14);border-radius:50%}.orbit-one{width:380px;height:380px;right:-145px;top:12%}.orbit-two{width:240px;height:240px;right:4%;bottom:16%}.auth-star{position:absolute;color:#bdc8ff;font-size:13px}.star-one{right:22%;top:20%}.star-two{right:32%;bottom:21%;font-size:9px}.auth-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:45px 8%}.auth-card{width:min(100%,390px)}.auth-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:60px}.auth-card-head .brand-lockup strong{font-size:18px}.secure-label{display:inline-flex;align-items:center;gap:5px;color:#a2a9b5;font-size:10px}.auth-heading .eyebrow{margin-bottom:11px}.auth-heading h2{margin:0;color:var(--ink);font-size:27px;letter-spacing:-.03em}.auth-heading p{margin:9px 0 27px;color:#929aaa;font-size:12px}.auth-form{display:flex;flex-direction:column;gap:18px}.auth-form label{display:flex;flex-direction:column;gap:7px;color:#637087;font-size:11px;font-weight:600}.auth-form input{width:100%;min-height:43px;padding:0 12px;color:#3e4962;border:1px solid #dfe4ec;border-radius:6px;background:#fff;font-size:12px}.auth-form input:focus{border-color:#8294e3;outline:none;box-shadow:0 0 0 3px #3b5bdb14}.password-wrap{position:relative}.password-wrap svg{position:absolute;top:13px;right:12px;color:#aab2be}.form-row{display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:center;margin-top:-5px}.checkbox{flex-direction:row!important;align-items:center;gap:6px!important;color:#8f98a7!important;font-weight:400!important}.checkbox input{width:13px;min-height:auto;accent-color:var(--primary)}.auth-submit{width:100%;min-height:45px;margin-top:4px}.demo-hint{display:flex;align-items:flex-start;gap:7px;margin-top:19px;padding:10px 11px;color:#7c86a4;background:#f4f6ff;border:1px solid #e1e6fb;border-radius:6px;font-size:10px;line-height:1.5}.demo-hint svg{flex:0 0 auto;color:var(--primary);margin-top:1px}.demo-hint b{color:var(--primary);font-weight:600}.auth-switch{margin-top:25px;color:#929aaa;text-align:center;font-size:11px}.auth-switch .text-button{margin-left:5px;font-weight:600}.auth-notice{display:flex;align-items:flex-start;gap:7px;margin-top:14px;padding:10px 11px;color:#9b5e1e;border:1px solid #f1dfb7;border-radius:6px;background:#fff9ea;font-size:10px;line-height:1.5}.auth-notice svg{flex:0 0 auto;margin-top:1px}.auth-footer{margin-top:43px;color:#afb5c0;font-size:9px}@media(max-width:1180px){.topbar{gap:25px;padding:0 20px}.page{padding-left:32px;padding-right:32px}.project-grid{gap:14px}.cover{height:165px}.cover strong{font-size:25px}.chapter-main{padding-left:25px;padding-right:25px}}@media(max-width:920px){.auth-layout{grid-template-columns:1fr}.auth-brand{min-height:340px;padding:35px 10%}.brand-mark.large{margin-bottom:35px}.auth-brand h1{font-size:48px}.auth-brand>p,.auth-flow{display:none}.auth-panel{min-height:calc(100vh - 340px);padding:40px 7%}.project-grid,.asset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-grid{grid-template-columns:repeat(3,1fr)}.route-grid label:last-child{grid-column:span 1}.writing-shell{grid-template-columns:230px minmax(0,1fr)}.chapter-stats{display:none}.framework-layout{grid-template-columns:1fr}.framework-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.framework-tabs button{min-width:0;padding:10px 8px}.framework-tabs button>span:nth-child(2){min-width:0}.framework-tabs button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.market-report{grid-template-columns:1fr}.market-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.market-tabs button{justify-content:center;padding:0 6px;font-size:10px}}@media(max-width:700px){.topbar{height:59px}.mobile-menu{display:grid}.top-nav,.profile-name,.logout-button,.top-divider{display:none}.top-actions{gap:4px}.top-brand span{display:none}.sidebar{position:fixed;top:59px;bottom:0;left:0;z-index:9;transform:translate(-100%);transition:.25s;box-shadow:10px 0 30px #1f2d5c1f}.sidebar.open{transform:translate(0)}.main-content{width:100%}.page{padding:29px 18px 45px}.page-header{display:block}.page-actions{margin-top:18px}.project-grid,.asset-grid,.usage-stats{grid-template-columns:1fr}.new-project-card{min-height:180px}.dashboard-toolbar,.library-toolbar{align-items:flex-end;gap:14px;overflow-x:auto}.filter-tabs{min-width:max-content}.steps{transform:scale(.9);transform-origin:left center;width:112%}.form-panel{padding:22px 18px 18px}.config-layout,.framework-layout{grid-template-columns:1fr}.config-tabs{display:grid;grid-template-columns:repeat(4,1fr)}.config-tabs button{justify-content:center;padding:10px 5px;font-size:10px}.config-tabs button svg,.config-tip{display:none}.field-grid,.world-grid,.outline-layout,.setting-cards{grid-template-columns:1fr}.outline-tree{padding-right:0;padding-bottom:14px;border-right:0;border-bottom:1px solid var(--line)}.outline-meta{grid-template-columns:1fr}.framework-detail{height:min(760px,calc(100vh - 230px));min-height:520px;padding:19px 17px 70px}.character-editor-grid,.framework-two-col{grid-template-columns:1fr}.card-editor-actions{min-width:0;flex-wrap:wrap;justify-content:flex-end}.character-ai-button{white-space:nowrap}.market-context-strip{margin-top:-7px}.market-selector-bar,.market-selector-bar label{display:block}.market-selector-bar select{display:block;width:100%;margin-top:9px}.market-selector-bar small{display:block;margin-top:9px;line-height:1.6}.market-report{gap:12px}.deai-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.deai-note{align-items:flex-start;padding:9px 11px}.deai-note b{margin-left:0}.market-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.market-tabs button{justify-content:flex-start}.report-section{padding:20px 17px 23px}.report-summary h2{font-size:18px}.score-grid,.report-two-col,.audience-grid,.title-intro-grid{grid-template-columns:1fr 1fr}.needs-list,.selling-grid,.opening-grid{grid-template-columns:1fr}.report-section-heading{display:block}.report-section-heading p{margin-top:10px}.suggestion-row{grid-template-columns:1fr;gap:4px}.basis-detail-grid{grid-template-columns:1fr}.evidence-row{grid-template-columns:1fr;gap:5px}.chapter-editor-row{grid-template-columns:1fr 1fr}.chapter-editor-title{grid-column:1 / -1}.outline-purpose{display:block}.outline-purpose p{margin-top:6px}.volume-editor-head{grid-template-columns:1fr auto}.volume-editor-head .volume-range{grid-column:1}.volume-editor-head .text-button{grid-column:2;grid-row:1 / span 2}.detail-head{gap:10px}.detail-head .secondary-button{padding:0 9px;font-size:10px}.detail-head{flex-wrap:wrap}.detail-head>.secondary-button{margin-left:auto}.premise-box{padding:31px 18px 20px}.premise-box p{font-size:19px}.writing-top{flex-wrap:wrap;gap:13px}.writing-actions{width:100%}.writing-actions .secondary-button{flex:1}.writing-shell{grid-template-columns:1fr}.chapter-sidebar{max-height:285px;border-right:0;border-bottom:1px solid var(--line)}.chapter-list{display:grid;grid-template-columns:1fr 1fr;overflow-y:auto}.consistency-box{display:none}.chapter-main{padding:22px 16px}.chapter-main-head h2{font-size:17px}.chapter-editor-actions{flex-wrap:wrap}.chapter-editor-actions .primary-button{width:100%}.chapter-edit-meta{align-items:flex-start;flex-direction:column}.chapter-edit-meta>div{width:100%}.chapter-edit-meta>div button{flex:1}.route-grid{grid-template-columns:1fr 1fr}.model-row{gap:8px;flex-wrap:wrap;padding:13px 8px}.model-context{order:5;margin-left:15px}.model-tags{order:4}.model-row>.icon-button{margin-left:auto}.usage-table{overflow-x:auto}.usage-table-row{min-width:650px}.auth-brand{min-height:275px;padding:29px 9%}.auth-brand h1{font-size:39px}.auth-panel{min-height:calc(100vh - 275px);padding:34px 22px}.auth-card-head{margin-bottom:42px}}:root{--paper: #F6F3EA;--paper-2: #EFEBDF;--surface: #FDFBF6;--ink: #191712;--ink-2: #565147;--ink-3: #8C8676;--ink-4: #B4AD9C;--rule: #E2DCCC;--rule-2: #ECE7DA;--seal: #A33A2B;--seal-soft: #F2E3DE;--indigo: #3E5BC7;--sage: #4C6B52;--amber: #A9701C;--sidebar-width: 248px;--serif: "Noto Serif SC", "Source Han Serif SC", "Songti SC", STSong, "SimSun", serif;--sans: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", "Segoe UI", sans-serif;--primary: #191712;--primary-dark: #0E0D0B;--muted: #8C8676;--line: #E2DCCC;--panel: #FDFBF6;--soft: #F4F1E8;--success: #4C6B52;--orange: #A9701C;--red: #A33A2B;font-family:var(--sans);color:var(--ink);background:var(--paper)}*{-webkit-font-smoothing:antialiased}body{background:var(--paper);color:var(--ink);font-family:var(--sans)}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.86' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");opacity:.07;mix-blend-mode:multiply}.topbar{height:56px;padding:0 22px;gap:26px;background:var(--paper);border-bottom:1px solid var(--rule)}.brand-lockup strong{font-family:var(--serif);font-size:17px;font-weight:600;letter-spacing:.12em;color:var(--ink)}.brand-lockup span{color:var(--ink-4);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.brand-mark{width:24px;height:24px;border-radius:1px;background:var(--seal);color:#fbf7ec;box-shadow:none}.brand-mark svg{width:14px;height:14px}.brand-mark.large{width:40px;height:40px;background:var(--seal);color:#fbf7ec}.brand-mark.large svg{width:20px;height:20px}.top-nav{gap:22px}.top-nav button{font-size:13px;color:var(--ink-3)}.top-nav button:first-child{color:var(--ink);font-weight:500}.top-nav button:first-child:after{height:1px;background:var(--ink)}.icon-button{width:30px;height:30px;border-radius:2px;color:var(--ink-3)}.icon-button:hover{background:var(--paper-2);color:var(--ink)}.top-divider{background:var(--rule)}.profile-button{color:var(--ink-2);font-size:12px}.avatar{width:26px;height:26px;background:var(--paper-2);color:var(--ink-2);font-size:11px;font-weight:500;border:1px solid var(--rule)}.account-menu{border:1px solid var(--rule);border-radius:3px;background:var(--surface);box-shadow:0 14px 34px -14px #3c321e66}.sidebar{width:var(--sidebar-width);flex:0 0 var(--sidebar-width);height:calc(100vh - 56px);min-height:0;padding:18px 0 14px;background:var(--paper);border-right:1px solid var(--rule);overflow-y:auto;overscroll-behavior:contain}.app-shell{height:100vh;overflow:hidden}.workspace{height:calc(100vh - 56px);min-height:0;overflow:hidden}.main-content{width:calc(100% - var(--sidebar-width));height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain}.side-section{gap:2px}.side-label{padding:22px 21px 8px;color:var(--ink-4);font-size:10px;letter-spacing:.14em}.side-item{height:34px;min-height:34px;margin:0 12px;padding:0 9px;border-radius:2px;color:var(--ink-2);font-size:13px;gap:10px}.side-item:hover{background:var(--paper-2);color:var(--ink)}.side-item.active{background:var(--paper-2);color:var(--ink);font-weight:500;box-shadow:inset 2px 0 0 var(--seal)}.side-count{min-width:auto;height:auto;padding:0;background:transparent;color:var(--ink-4);font-size:11px}.service-status{margin:6px 12px 0;padding:8px 9px 0;color:var(--ink-4);font-size:10.5px;border-top:1px solid var(--rule-2)}.service-status.ready{color:var(--ink-3)}.service-status.ready .service-status-dot{background:var(--sage)}.side-project{border:1px solid var(--rule);background:var(--surface);border-radius:2px;margin:0 12px 8px;padding:10px 11px}.side-project.active{border-color:var(--ink-4);background:var(--paper-2)}.side-project b{color:var(--ink);font-size:12px;font-family:var(--serif)}.side-project small{color:var(--ink-3)}.project-dot{background:var(--seal)}.project-subnav{display:grid;gap:2px;padding:0 0 4px 12px}.project-nav-item{margin-left:12px;padding-left:9px;font-size:12px}.sidebar-user{margin:12px 12px 0;padding:12px 9px 0;border-top:1px solid var(--rule-2)}.sidebar-user b{color:var(--ink);font-size:12px}.sidebar-user small{color:var(--ink-3)}.page{max-width:1180px;padding:34px 44px 56px}.page-header{align-items:flex-start;margin-bottom:22px;gap:24px}.page-header h1{font-family:var(--serif);font-size:32px;font-weight:600;letter-spacing:.01em;line-height:1.25;color:var(--ink)}.page-header p{margin-top:8px;font-size:13px;color:var(--ink-3);line-height:1.7}.eyebrow{color:var(--ink-4);font-size:10px;letter-spacing:.15em}.required{color:var(--seal)}.primary-button,.secondary-button{min-height:34px;height:34px;padding:0 14px;border-radius:2px;font-size:13px;font-weight:500;gap:7px}.primary-button{background:var(--ink);color:#faf7ee;box-shadow:none}.primary-button:hover{background:#2a2620;transform:none}.primary-button.locked{background:var(--seal);box-shadow:none}.secondary-button{background:var(--surface);border:1px solid var(--rule);color:var(--ink-2)}.secondary-button:hover{border-color:var(--ink-4);color:var(--ink);background:var(--surface)}.text-button{color:var(--ink);font-size:12px}.text-button:hover{color:var(--seal);text-decoration:none}.icon-button.danger-icon{color:var(--ink-4)}.icon-button.danger-icon:hover{color:var(--seal)}.dashboard-toolbar,.library-toolbar{border-bottom:1px solid var(--rule);margin-bottom:18px}.filter-tabs button{font-size:13px;color:var(--ink-3)}.filter-tabs button.active{color:var(--ink);font-weight:500}.filter-tabs button.active:after{height:1px;background:var(--ink);bottom:-13px}.filter-tabs button span{background:var(--paper-2);color:var(--ink-3);font-size:10px}.sort-button{color:var(--ink-3);font-size:12px}.project-grid{gap:20px}.project-card{border:1px solid var(--rule);border-radius:3px;background:var(--surface)}.project-card:hover{transform:none;border-color:var(--ink-4);box-shadow:0 1px 2px #3c321e0d}.cover{height:158px}.cover:before,.cover:after{display:none}.cover-night{background:linear-gradient(158deg,#2b2620,#4a4238)}.cover-space{background:linear-gradient(158deg,#333f3b,#4e5c55)}.cover-rain{background:linear-gradient(158deg,#3a3f45,#5a646c)}.cover-new{background:linear-gradient(158deg,#a33a2b,#7b2a1e)}.cover-kicker{font-size:9px;opacity:.55}.cover strong{font-family:var(--serif);font-size:26px;font-weight:500}.cover-subtitle{opacity:.7}.project-card-body{padding:16px 18px 15px}.card-title-row h3{font-family:var(--serif);font-size:17px;font-weight:600;letter-spacing:.02em}.card-title-row span{color:var(--ink-3);font-size:11px}.project-card-body>p{font-size:12.5px;line-height:1.8;color:var(--ink-2);height:44px}.progress-meta,.card-footer{font-size:11px;color:var(--ink-3)}.progress-track{height:2px;background:var(--rule);border-radius:2px}.progress-track .blue{background:var(--ink)}.progress-track .green{background:var(--sage)}.progress-track .orange{background:var(--amber)}.progress-track .violet{background:#8a7560}.status-badge{min-height:20px;border-radius:2px;font-size:10px;letter-spacing:.02em}.status-badge.blue{background:var(--paper-2);color:var(--ink-2)}.status-badge.green{background:#e7ede4;color:var(--sage)}.status-badge.orange{background:#f4ead7;color:var(--amber)}.status-badge.violet{background:#ede6e0;color:#7a6250}.status-badge.gray{background:var(--paper-2);color:var(--ink-3)}.new-project-card{border:1px dashed var(--ink-4);border-radius:3px;background:transparent}.new-project-card:hover{background:var(--surface);border-color:var(--ink-3);color:var(--ink)}.new-project-card>span{border-color:var(--rule);color:var(--ink-3)}.new-project-card strong{color:var(--ink-2);font-size:13px}.new-project-card small{color:var(--ink-4)}.dashboard-note{border:1px solid var(--rule);background:var(--surface);border-radius:2px}.note-icon{background:var(--paper-2);color:var(--ink-2)}.dashboard-note b{color:var(--ink);font-size:12px}.dashboard-note p{color:var(--ink-3);font-family:var(--serif);font-size:13px}.form-panel{border:1px solid var(--rule);border-radius:3px;background:var(--surface);box-shadow:none}.form-section-title{border-bottom:1px solid var(--rule)}.form-section-title h3,.config-form-head h3,.route-head h3,.usage-panel-head h3{font-family:var(--serif);font-size:16px;font-weight:600}.form-section-title p,.config-form-head p,.route-head p,.usage-panel-head p{font-size:12px;color:var(--ink-3);line-height:1.7}.section-icon{background:var(--paper-2);color:var(--ink-2);border-radius:2px}.large-field,.field-grid label,.route-grid label{font-size:11.5px;color:var(--ink-3);letter-spacing:.04em}.large-field input,.large-field textarea,.field-grid input,.field-grid textarea,.field-grid select,.route-grid select,.custom-path-panel input{border:1px solid var(--rule);border-radius:2px;background:#fff;color:var(--ink);font-size:13px;padding:10px 12px}.large-field input:focus,.large-field textarea:focus,.field-grid input:focus,.field-grid textarea:focus,.field-grid select:focus,.route-grid select:focus,.custom-path-panel input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1917120d;outline:none}.field-hint{color:var(--ink-4);font-size:10.5px}.steps>i{background:var(--rule)}.step{color:var(--ink-4);font-size:11.5px}.step b{border-color:var(--rule);color:var(--ink-3)}.step.active{color:var(--ink)}.step.active b{background:var(--ink);border-color:var(--ink);color:#faf7ee}.form-footer{border-top:1px solid var(--rule-2)}.save-note{color:var(--ink-3)}.save-note svg{color:var(--sage)}.location-card,.custom-path-panel{border:1px solid var(--rule);border-radius:2px;background:var(--surface)}.location-card.selected,.custom-path-panel.selected{border-color:var(--ink-3);background:var(--surface);box-shadow:0 0 0 2px #1917120a}.authorized-directory{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 12px;border:1px solid var(--rule);background:var(--surface);color:var(--ink-2);font-size:12px}.authorized-directory>span{min-width:0;overflow-wrap:anywhere;font-weight:600}.authorized-directory small{margin-left:auto;color:var(--sage);white-space:nowrap}.authorized-directory .text-button{flex:0 0 auto}.location-card b,.custom-path-head b{color:var(--ink);font-size:12.5px}.location-card small,.custom-path-head small{color:var(--ink-3)}.selected .location-radio{background:var(--ink);border-color:var(--ink)}.location-tag{background:var(--paper-2);color:var(--ink-2)}.ai-generate-button{color:var(--ink-2);border:1px solid var(--rule);background:var(--surface)}.ai-generate-button:hover{color:#faf7ee;background:var(--ink);border-color:var(--ink)}.optimize-button{color:var(--sage);border:1px solid #CDDDD2;background:#f5f9f6}.optimize-button:hover{color:#fbfcfa;background:var(--sage);border-color:var(--sage)}.autosave{color:var(--ink-4)}.config-tabs button{color:var(--ink-3);font-size:13px;border-radius:2px}.config-tabs button.active{background:var(--paper-2);color:var(--ink);font-weight:500}.config-tip{border-top:1px solid var(--rule-2);color:var(--ink-4)}.config-layout{display:block}.config-form{width:100%;display:grid;gap:14px}.config-section{min-width:0}.framework-detail{border:1px solid var(--rule);border-radius:3px;background:var(--surface);box-shadow:none}.framework-detail:before{display:none}.framework-tabs button{border-radius:2px;color:var(--ink-2);font-size:13px}.framework-tabs button.active{background:var(--surface);box-shadow:none;border:1px solid var(--rule);color:var(--ink)}.framework-tabs button>svg{color:var(--sage)}.tab-index{color:var(--ink-4)}.framework-tabs button.active .tab-index{color:var(--seal)}.detail-head{border-bottom:1px solid var(--rule)}.detail-head h2{font-family:var(--serif);font-size:24px;font-weight:600;color:var(--ink)}.editor-toolbar,.character-editor-card,.volume-editor,.editable-world-card,.outline-purpose{border:1px solid var(--rule);border-radius:3px;background:var(--surface);box-shadow:none}.editor-toolbar>span{color:var(--ink-2)}.character-editor-card.main-character{border-color:var(--ink-3);background:var(--surface)}.character-editor-card:before{background:var(--rule)}.character-editor-card.main-character:before{background:var(--seal)}.character-number{background:var(--paper-2);color:var(--ink-2)}.character-editor-card input:first-of-type{color:var(--ink)}.editable-world-card input{color:var(--ink)}.volume-editor-head{background:var(--paper);border-bottom:1px solid var(--rule)}.volume-editor-head input{color:var(--ink)}.chapter-editor-row{border-top:1px solid var(--rule-2)}.chapter-editor-row.active{background:var(--paper)}.chapter-editor-title span{background:var(--paper-2);color:var(--ink-2)}.premise-tags span{border:1px solid var(--rule);background:var(--surface);color:var(--ink-3)}.lock-note{border-top:1px solid var(--rule);color:var(--sage)}.writing-shell{border:1px solid var(--rule);border-radius:3px;background:var(--surface)}.chapter-sidebar{background:var(--paper);border-right:1px solid var(--rule)}.chapter-sidebar-head b{font-family:var(--serif);font-size:15px}.chapter-sidebar-head small{color:var(--ink-3)}.volume-progress{background:var(--rule)}.volume-progress span{background:var(--seal)}.chapter-item{border-radius:2px}.chapter-item:hover{background:var(--paper-2)}.chapter-item.active{background:var(--surface);box-shadow:inset 2px 0 0 var(--seal)}.chapter-item .chapter-name b,.chapter-item .chapter-name strong{color:var(--ink-2)}.chapter-item.active .chapter-name strong{color:var(--ink)}.chapter-item .chapter-words{color:var(--ink-4)}.consistency-box{border:1px solid var(--rule);background:var(--surface);border-radius:2px}.consistency-box b{color:var(--ink-2)}.consistency-box p{color:var(--ink-3)}.warning-count{background:var(--seal-soft);color:var(--seal)}.chapter-main-head{border-bottom:1px solid var(--rule-2)}.chapter-main-head h2{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:.02em}.model-label{color:var(--ink-3);font-size:11px}.chapter-stats{color:var(--ink-4);font-size:11px}.setting-card{border:1px solid var(--rule);background:var(--surface);border-radius:2px}.setting-card span{color:var(--ink-4)}.setting-card b{color:var(--ink-2);font-family:var(--serif);font-weight:500}.chapter-content{max-width:700px;color:#26231c;font-family:var(--serif);font-size:16.5px;line-height:2.05;letter-spacing:.015em}.chapter-content p{text-indent:2em;margin:0}.chapter-content .content-lead{color:#26231c;font-size:16.5px;text-indent:2em}.chapter-review{max-width:700px;margin:22px auto;padding:14px 16px;border-top:1px solid var(--rule);background:var(--paper-2)}.chapter-review-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.chapter-review h3{margin:0;color:var(--ink-2);font-size:14px}.review-verdict{padding:3px 7px;border-radius:2px;font-size:10px}.review-verdict.pass{color:#306545;background:#e8f2eb}.review-verdict.needs-review{color:#8e4932;background:#f8eae3}.quality-metrics{margin:7px 0 10px;color:var(--ink-4);font-size:10px}.review-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.review-check{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:8px;border-left:2px solid #91ad99;background:var(--surface);font-size:10px}.review-check.fail{border-left-color:#bd785d}.review-check b{color:var(--ink-2);font-weight:600}.review-check span{color:#477457}.review-check.fail span{color:#9c553a}.review-check small{grid-column:1 / -1;color:var(--ink-4);line-height:1.55}.quality-metrics+.review-checklist{margin-top:8px}.revision-history,.chapter-review-findings{margin-top:12px}.revision-history h4,.chapter-review-findings h4{margin:0 0 6px;color:var(--ink-2);font-size:11px}.revision-round{display:grid;gap:4px;padding:7px 0;border-top:1px solid var(--rule-2);color:var(--ink-3);font-size:10px}.revision-round b{color:var(--ink-2)}.review-finding{display:grid;gap:5px;padding:10px 0;border-top:1px solid var(--rule-2);color:var(--ink-3);font-size:12px}.review-finding b{color:var(--ink-2);font-weight:600}.review-finding p{margin:0;line-height:1.7}.review-finding small{color:var(--ink-4);line-height:1.6}.chapter-editor-actions{border-top:1px solid var(--rule-2)}.generating-panel{border:1px solid var(--rule);background:var(--surface);border-radius:3px}.generating-panel p{color:var(--ink-3)}.empty-writing p{color:var(--ink-3);font-size:12.5px;line-height:1.8}.empty-book{background:var(--paper-2);color:var(--ink-2)}.chapter-edit-panel textarea{background:#fff;border:1px solid var(--rule);border-radius:2px}.asset-card,.usage-panel,.model-route,.library-guide,.library-summary,.analysis-panel,.market-empty-panel,.market-report,.library-preview-modal,.export-modal,.library-rename-modal{border:1px solid var(--rule);border-radius:3px;background:var(--surface);box-shadow:none}.model-row,.usage-table-row{border-bottom:1px solid var(--rule-2)}.asset-preview{background:var(--paper-2);color:var(--ink-3)}.asset-type{color:var(--ink-3)}.asset-description{color:var(--ink-2);font-size:12.5px}.library-summary strong{font-family:var(--serif);font-size:20px}.modal-backdrop{background:#1c181257}.toast{background:var(--ink);color:#faf7ee;border-radius:2px}.auth-layout{grid-template-columns:minmax(0,1fr) 470px;background:var(--paper)}.auth-brand{padding:42px 62px 34px;color:var(--ink);background-color:var(--paper);background-image:linear-gradient(94deg,#f6f3eafa,#f6f3eaf2 28%,#f6f3eacc,#f6f3ea6b,#f6f3ea1f,#f6f3ea00 92%),url(/auth-plate.jpg);background-repeat:no-repeat;background-size:auto,cover;background-position:left top,64% 44%}.auth-brand:before,.auth-brand:after{display:none}.auth-orbit,.auth-star{display:none}.auth-brand .eyebrow{color:var(--ink-4)}.auth-brand h1{font-family:var(--serif);font-size:clamp(44px,5.2vw,76px);font-weight:500;line-height:1.26;letter-spacing:.045em;color:var(--ink)}.auth-brand h1 em{font-style:normal;color:var(--ink-2)}.auth-brand>p{max-width:400px;color:var(--ink-2);font-family:var(--serif);font-size:14px;line-height:2}.auth-flow{color:var(--ink-4);font-size:10px;letter-spacing:.18em}.auth-flow i{background:var(--rule)}.auth-flow span.active{color:var(--ink-2)}.auth-panel{padding:44px 56px;background:var(--paper-2);border-left:1px solid var(--rule)}.auth-card{width:min(100%,356px)}.auth-card-head{margin-bottom:40px}.auth-card-head .brand-lockup strong{font-size:17px}.secure-label{color:var(--ink-4)}.auth-heading h2{font-family:var(--serif);font-size:27px;font-weight:600;letter-spacing:.02em}.auth-heading p{color:var(--ink-3);font-size:12px}.auth-form label{color:var(--ink-3);font-size:11px;font-weight:400;letter-spacing:.06em}.auth-form input{min-height:42px;padding:0 13px;border:1px solid var(--rule);border-radius:2px;background:var(--surface);color:var(--ink);font-size:13.5px}.auth-form input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1917120d}.password-wrap svg{color:var(--ink-4)}.checkbox{color:var(--ink-3)!important}.checkbox input{accent-color:var(--ink)}.auth-submit{min-height:44px;font-size:13.5px}.demo-hint{margin-top:20px;padding:11px 12px;border:1px solid var(--rule);border-radius:2px;background:var(--paper);color:var(--ink-3);font-size:10.5px}.demo-hint svg,.demo-hint b{color:var(--ink-2)}.auth-switch{color:var(--ink-3);font-size:11.5px}.auth-notice{border:1px solid #E8D8B8;border-radius:2px;background:#fbf4e4;color:var(--amber);font-size:10.5px}.custom-model-modal label small{color:var(--ink-3);font-size:10.5px;line-height:1.5}.auth-footer{color:var(--ink-4)}@media(max-width:920px){.auth-layout{grid-template-columns:1fr}.auth-brand{min-height:300px;padding:32px 9%;background-position:left top,70% 40%}.auth-brand h1{font-size:40px}.auth-panel{border-left:0;border-top:1px solid var(--rule);padding:36px 8%}:root{--sidebar-width: 220px}}.premise-box p{font-family:var(--serif);color:var(--ink-2);font-size:22px;line-height:1.75}.chapter-edit-panel textarea{font-family:var(--serif);font-size:16.5px;line-height:2.05;color:#26231c;border:1px solid var(--rule);border-radius:2px;background:#fff}.cover-new{background:linear-gradient(158deg,#4e463b,#6e6555)}.cover strong{font-size:24px}.card-title-row h3{text-wrap:balance}.project-card-body>p{text-wrap:pretty}.project-home-page{max-width:1120px}.project-stage-list{display:grid;gap:8px;max-width:760px}.project-stage{display:grid;grid-template-columns:40px minmax(0,1fr) 18px;align-items:center;gap:14px;min-height:74px;padding:12px 16px;border:1px solid var(--rule);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer}.project-stage:hover{border-color:var(--ink-4);background:var(--paper-2)}.project-stage>span:nth-child(2){display:grid;gap:4px;min-width:0}.project-stage b{font-size:14px}.project-stage small{color:var(--ink-3);font-size:12px}.stage-icon{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--rule);color:var(--sage)}.section-incomplete-mark{color:var(--ink-4);font-size:20px}.framework-tabs button:has(.section-incomplete-mark){color:var(--ink-3)}.framework-detail .page-actions{flex-wrap:wrap;justify-content:flex-end}.framework-detail .detail-head{gap:16px}.framework-detail .config-error{margin:8px 0}@media(max-width:680px){.framework-detail .detail-head{align-items:flex-start;flex-direction:column}.framework-detail .page-actions{width:100%;justify-content:flex-start}.project-stage{grid-template-columns:36px minmax(0,1fr) 16px;gap:10px;padding:10px}}.writing-title h1{font-family:var(--serif);font-size:20px;font-weight:600;letter-spacing:.02em}.writing-top .eyebrow{font-size:10px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#dcd5c4;border-radius:8px;border:2px solid var(--paper)}::-webkit-scrollbar-thumb:hover{background:#c4bca9}.module-list,.chapter-list,.framework-editor,.chapter-main{scrollbar-width:thin;scrollbar-color:#DCD5C4 transparent}.chapter-editor-row input,.character-editor-card input,.character-editor-card textarea,.editable-world-card input,.editable-world-card textarea,.framework-editor textarea,.framework-editor input{font-size:12.5px;color:var(--ink-2)}.chapter-editor-title input{font-size:12px}.large-field,.field-grid label,.route-grid label{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px}.large-field>input,.large-field>textarea,.large-field>small,.field-grid label>input,.field-grid label>textarea,.field-grid label>select,.field-grid label>.custom-select-input,.field-grid label>.field-label-row,.field-grid label>small,.route-grid label>select{flex:0 0 100%;width:100%}.large-field>small{text-align:right}.sidebar{min-height:0}@media(max-width:700px){.app-shell{height:auto;min-height:100vh;overflow:visible}.workspace{height:auto;min-height:calc(100vh - 59px);overflow:visible}.sidebar{width:232px;flex-basis:232px;height:auto;min-height:calc(100vh - 59px)}.main-content{height:auto;overflow:visible}}
