/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[2].use[1]!./node_modules/next/dist/build/webpack/loaders/next-font-loader/index.js??ruleSet[1].rules[15].oneOf[2].use[2]!./node_modules/next/font/google/target.css?{"path":"src/app/layout.tsx","import":"Geist","arguments":[{"variable":"--font-geist-sans","subsets":["latin"]}],"variableName":"geistSans"} ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* cyrillic-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/f639721981034f88-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/b66cf8e69499582a-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/aa016aab0e6d1295-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'Geist Fallback';src: local("Arial");ascent-override: 95.94%;descent-override: 28.16%;line-gap-override: 0.00%;size-adjust: 104.76%
}.__className_246ccd {font-family: 'Geist', 'Geist Fallback';font-style: normal
}.__variable_246ccd {--font-geist-sans: 'Geist', 'Geist Fallback'
}

/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[2].use[1]!./node_modules/next/dist/build/webpack/loaders/next-font-loader/index.js??ruleSet[1].rules[15].oneOf[2].use[2]!./node_modules/next/font/google/target.css?{"path":"src/app/layout.tsx","import":"Geist_Mono","arguments":[{"variable":"--font-geist-mono","subsets":["latin"]}],"variableName":"geistMono"} ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* cyrillic-ext */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/013b72fa676f92e0-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/b9408752a0c24fb9-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* symbols2 */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format('woff2');
  unicode-range: U+2000-2001, U+2004-2008, U+200A, U+23B8-23BD, U+2500-259F;
}
/* vietnamese */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/e038a29029a234f2-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/2b5b02fc7e511755-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'Geist Mono Fallback';src: local("Arial");ascent-override: 74.67%;descent-override: 21.92%;line-gap-override: 0.00%;size-adjust: 134.59%
}.__className_c29908 {font-family: 'Geist Mono', 'Geist Mono Fallback';font-style: normal
}.__variable_c29908 {--font-geist-mono: 'Geist Mono', 'Geist Mono Fallback'
}

/*!*****************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/globals.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************/
:root { --background: #0d0e14; --foreground: #f4f0ec; }
* { box-sizing: border-box; padding: 0; margin: 0; }
html, body { max-width: 100vw; min-height: 100%; overflow-x: hidden; }
body { color: var(--foreground); background: var(--background); font-family: Arial, Helvetica, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
button { font-family: inherit; }

.auth-page { align-items: center; background: radial-gradient(circle at 50% 3%, #36305c 0, rgba(54, 48, 92, .22) 24%, transparent 46%), #0d0e14; display: flex; justify-content: center; min-height: 100vh; min-height: 100dvh; padding: 32px 20px; }
.auth-card { background: rgba(25, 25, 34, .92); border: 1px solid rgba(237, 229, 255, .16); border-radius: 28px; box-shadow: 0 28px 90px rgba(0, 0, 0, .42), inset 0 1px 0 rgba(255, 255, 255, .05); max-width: 448px; padding: 46px 48px 40px; text-align: center; width: 100%; }
.auth-mark { align-items: center; background: linear-gradient(145deg, #3b3653, #242432); border: 1px solid rgba(255, 255, 255, .1); border-radius: 18px; color: #c7b9ff; display: inline-flex; font-size: 26px; height: 70px; justify-content: center; margin-bottom: 19px; width: 70px; }
.auth-kicker { color: #a7a0b8; font-size: 11px; font-weight: 700; letter-spacing: .24em; margin-left: .24em; }
.auth-card h1 { font-family: Georgia, "Times New Roman", serif; font-size: clamp(28px, 4vw, 35px); font-weight: 500; letter-spacing: -.03em; margin-top: 14px; }
.auth-intro { color: #aaa7b5; font-size: 14px; line-height: 1.7; margin: 10px auto 28px; max-width: 275px; }
.auth-divider { align-items: center; color: #777382; display: flex; font-size: 12px; gap: 12px; margin-bottom: 24px; }
.auth-divider::before, .auth-divider::after { background: #383642; content: ""; height: 1px; flex: 1 1; }
.auth-form { display: grid; gap: 17px; text-align: left; }
.auth-form label { color: #c9c5d1; display: grid; font-size: 12px; font-weight: 600; gap: 8px; letter-spacing: .02em; }
.auth-form input { background: #171720; border: 1px solid #3b3946; border-radius: 11px; color: #f5f2fa; font: inherit; font-size: 14px; min-height: 48px; outline: none; padding: 0 14px; transition: border-color .18s, box-shadow .18s, background .18s; width: 100%; }
.auth-form input::placeholder { color: #777481; }
.auth-form input:focus { background: #1c1b28; border-color: #9684df; box-shadow: 0 0 0 3px rgba(150, 132, 223, .18); }
.auth-submit { background: linear-gradient(135deg, #6e5cc4, #4b438b); border: 1px solid rgba(221, 213, 255, .22); border-radius: 12px; color: #faf8ff; cursor: pointer; font-size: 15px; font-weight: 700; margin-top: 5px; min-height: 52px; transition: filter .18s, transform .18s; }
.auth-submit:hover { filter: brightness(1.12); transform: translateY(-1px); }
.auth-submit:focus-visible { outline: 3px solid #b9a9ff; outline-offset: 3px; }
.auth-error { background: rgba(160, 61, 83, .18); border: 1px solid rgba(235, 121, 144, .35); border-radius: 9px; color: #c05656; font-size: 13px; line-height: 1.45; padding: 10px 12px; }
.auth-switch { color: #9b97a6; font-size: 13px; margin-top: 3px; text-align: center; }
.auth-switch a { color: #c4b8ff; font-weight: 700; margin-left: 7px; text-decoration: none; }
.auth-switch a:hover { color: #e1dbff; text-decoration: underline; }
@media (max-width: 520px) { .auth-card { border-radius: 22px; padding: 38px 26px 32px; } .auth-page { padding: 18px; } }

.workspace { background: radial-gradient(circle at 75% -10%,rgba(98,78,145,.16),transparent 32%),#11121a; display: grid; grid-template-columns: 236px minmax(0, 1fr); height: 100vh; height: 100dvh; overflow: hidden; }
.workspace-sidebar { background: #181924; border-right: 1px solid #302f3c; display: flex; flex-direction: column; height: 100vh; height: 100dvh; overflow-y: auto; padding: 28px 16px; }
.workspace-brand { color: #f5f1f9; font-family: Georgia, serif; font-size: 18px; font-weight: 700; text-decoration: none; } .workspace-brand span { color: #bdaeff; margin-right: 8px; }
.workspace-project-name { color:#777482; font-size:12px; line-height:1.5; margin:18px 12px 0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.workspace-sidebar nav { display: grid; gap: 6px; margin-top: 24px; }.workspace-sidebar nav a { border-radius: 9px; color: #aaa7b7; padding: 11px 12px; text-decoration: none; }.workspace-sidebar nav a:hover { background: #29283a; color: #f4f0fa; }.workspace-signout { margin-top: auto; }.workspace-signout button { background: transparent; border: 0; color: #9995a5; cursor: pointer; padding: 10px; }.mobile-workspace-nav{display:none}
.workspace-content { height: 100vh; height: 100dvh; margin: 0 auto; max-width: 1180px; overflow-y: auto; padding: 64px 72px; width: 100%; }.page-header { margin-bottom: 42px; }.eyebrow { color: #bcaeff; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }.page-header h1 { font-family: Georgia, serif; font-size: clamp(34px, 5vw, 54px); font-weight: 500; letter-spacing: -.04em; margin: 12px 0; }.page-header p:not(.eyebrow) { color: #9e9baa; font-size: 16px; }.primary-button { background: linear-gradient(135deg,#7562ce,#4c438d); border-radius: 10px; color: white; display: inline-block; font-weight: 700; margin-top: 25px; padding: 13px 18px; text-decoration: none; }.project-grid { display: grid; gap: 18px; grid-template-columns: repeat(auto-fill,minmax(260px,1fr)); }.project-card,.empty-card { background: #1b1c27; border: 1px solid #343342; border-radius: 18px; color: #f3eff8; min-height: 210px; padding: 24px; text-decoration: none; transition: transform .2s,border-color .2s; }.project-card:hover { border-color: #8170c8; transform: translateY(-3px); }.project-card-mark { color: #bcaeff; font-size: 24px; }.project-card h2,.empty-card h2 { font-family: Georgia, serif; font-size: 24px; font-weight: 500; margin: 28px 0 10px; }.project-card p,.empty-card p { color: #a6a3b0; line-height: 1.6; }.project-card > span:last-child { color: #c8bdff; display: block; font-size: 13px; margin-top: 25px; }.empty-card { grid-column: 1 / -1; text-align: center; }.empty-card > span { color: #bcaeff; font-size: 28px; }
.route-loading{align-items:center;background:#171821;color:#eeeaf3;display:flex;gap:16px;justify-content:center;min-height:100vh}.route-loading>span{animation:loading-pulse 1.2s ease-in-out infinite;color:#bcaeff;font-size:28px}.route-loading strong{font-family:Georgia,serif;font-size:18px}.route-loading p{color:#928e9b;font-size:12px;margin-top:5px}@keyframes loading-pulse{0%,100%{opacity:.35;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}
@media (max-width: 760px) { .workspace { display:block; height:auto; overflow:visible; }.workspace-sidebar { display:none; }.mobile-workspace-nav{background:#181924;border-bottom:1px solid #302f3c;display:block;padding:16px 18px}.mobile-workspace-nav nav{display:flex;gap:8px;margin-top:14px;overflow-x:auto}.mobile-workspace-nav nav a{color:#aaa7b7;font-size:13px;text-decoration:none;white-space:nowrap}.workspace-content { height:auto; overflow:visible; padding: 36px 22px; } }
.creation-page { align-items: center; background: radial-gradient(circle at 50% 5%,#403762 0,transparent 38%),#11121a; display:flex; justify-content:center; min-height:100vh; padding:28px; }.creation-card,.settings-card { background:#1b1c27; border:1px solid #373545; border-radius:22px; max-width:620px; padding:42px; width:100%; }.creation-card h1 { font-family:Georgia,serif; font-size:38px; font-weight:500; margin:10px 0; }.creation-card>p:not(.eyebrow) { color:#aaa6b4; line-height:1.65; }.back-link { color:#c6bbff; display:inline-block; font-size:14px; margin-bottom:36px; text-decoration:none; }.creation-form,.settings-card form { display:grid; gap:18px; margin-top:30px; }.creation-form label,.settings-card label { color:#cac6d3; display:grid; font-size:13px; gap:8px; }.creation-form input,.creation-form textarea,.settings-card input,.settings-card textarea { background:#13141d; border:1px solid #3c3a49; border-radius:10px; color:#f4f0f8; font:inherit; min-height:48px; padding:12px; }.creation-form textarea,.settings-card textarea { min-height:110px; resize:vertical; }.settings-card>button { background:transparent; border:1px solid #804a5a; border-radius:9px; color:#6b7175; cursor:pointer; margin-top:26px; padding:11px 14px; }.settings-card p { color:#aaa6b4; margin-top:12px; }

.page-header.compact{margin-bottom:30px}.page-header.compact h1{font-size:clamp(32px,4vw,46px)}.surface-panel{background:#1b1c27;border:1px solid #343342;border-radius:18px;padding:24px}.muted{color:#918e9c;line-height:1.6}.workspace input,.workspace textarea,.workspace select{background:#13141d;border:1px solid #3b3948;border-radius:10px;color:#f4f0f8;font:inherit;min-height:45px;outline:none;padding:11px 12px;width:100%}.workspace textarea{min-height:112px;resize:vertical}.workspace input:focus,.workspace textarea:focus,.workspace select:focus{border-color:#8e7ad7;box-shadow:0 0 0 3px rgba(142,122,215,.15)}.stack-form{display:grid;gap:15px;margin-top:22px}.stack-form label,.detail-form label{color:#c8c4d1;display:grid;font-size:12px;font-weight:600;gap:7px}.primary-action,.stack-form button,.inline-form button{background:linear-gradient(135deg,#7562ce,#504590);border:1px solid rgba(224,218,255,.18);border-radius:10px;color:white;cursor:pointer;font-weight:700;min-height:46px;padding:0 16px}.primary-action:hover,.stack-form button:hover{filter:brightness(1.12)}.form-message{color:#b8b3c2;font-size:13px;line-height:1.5;margin-top:12px}.form-message.error{color:#c05656}
.codex-layout{align-items:start;display:grid;gap:24px;grid-template-columns:minmax(0,1fr) 330px}.codex-toolbar{display:grid;gap:10px;grid-template-columns:1fr 170px;margin-bottom:18px}.entity-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.entity-card{background:#1b1c27;border:1px solid #343342;border-radius:16px;color:#f3eff8;display:flex;flex-direction:column;min-height:215px;padding:20px;text-decoration:none;transition:.2s}.entity-card:hover{border-color:#8170c8;transform:translateY(-2px)}.entity-card h2{font-family:Georgia,serif;font-size:23px;font-weight:500;margin-top:10px}.entity-type{background:#2b2940;border:1px solid #494467;border-radius:999px;color:#c8bdff;font-size:11px;padding:4px 8px}.entity-card p{color:#a5a1ae;line-height:1.55;margin:18px 0}.entity-card small{color:#817d8a}.entity-card b{color:#c8bdff;font-size:12px;margin-top:auto}.codex-create{position:sticky;top:28px}.codex-create h2{font-family:Georgia,serif;font-size:25px;margin-top:8px}.empty-card.small{min-height:250px;padding-top:46px}.custom-fields{margin-top:24px}.custom-fields summary{cursor:pointer;font-weight:700}.custom-fields>p{color:#918e9c;font-size:13px;margin:12px 0}.inline-form{align-items:center;display:grid;gap:10px;grid-template-columns:1fr 1fr auto auto}.checkbox-label{align-items:center;color:#aaa6b4;display:flex;font-size:12px;gap:7px;white-space:nowrap}.checkbox-label input{min-height:auto;width:auto}
.structure-layout{align-items:start;display:grid;gap:24px;grid-template-columns:minmax(0,1fr) 330px}.tree-heading span,.tree-book h3 span{color:#8d82bc;font-size:10px;letter-spacing:.12em;margin-right:8px;text-transform:uppercase}.tree-heading h2{font-family:Georgia,serif;font-size:25px;margin:7px 0 18px}.tree-series+.tree-series{border-top:1px solid #343342;margin-top:24px;padding-top:24px}.tree-book{background:#15161f;border:1px solid #302f3c;border-radius:13px;padding:18px}.tree-book+.tree-book{margin-top:12px}.tree-book h3{font-size:17px}.tree-volume{border-left:2px solid #514a72;margin:18px 0 0 7px;padding-left:17px}.tree-volume h4{color:#d7d1df;font-size:14px}.tree-volume ol{display:grid;gap:7px;list-style:none;margin-top:10px}.tree-volume li{align-items:center;background:#1e1f2a;border-radius:8px;display:flex;justify-content:space-between;padding:10px 12px}.tree-volume li span{color:#817d8a;font-size:11px}.tree-editor{position:sticky;top:28px}.tree-editor h2{font-family:Georgia,serif;font-size:24px;margin:8px 0}
.detail-layout{align-items:start;display:grid;gap:24px;grid-template-columns:minmax(0,1fr) 300px}.detail-form{display:grid;gap:18px}.section-heading{align-items:flex-start;display:flex;gap:14px;margin-bottom:20px}.section-heading>span{align-items:center;background:#2c2941;border-radius:9px;color:#c7bbff;display:flex;font-size:11px;height:32px;justify-content:center;width:32px}.section-heading h2{font-family:Georgia,serif;font-size:23px;font-weight:500}.section-heading p{color:#8f8b99;font-size:13px;margin-top:5px}.form-grid{display:grid;gap:14px;grid-template-columns:1fr 1fr}.form-grid.three{grid-template-columns:1.3fr .7fr .7fr;margin-top:14px}.notes-area{min-height:210px!important}.save-action{width:190px}.detail-aside{display:grid;gap:18px;position:sticky;top:28px}.detail-aside h2{font-family:Georgia,serif;font-size:21px}.compact-form{margin-top:15px}.danger-zone{border-color:#9aa0a3}.danger-zone p{color:#9f8c93;font-size:13px;line-height:1.55;margin:8px 0 16px}.danger-zone button{background:transparent;border:1px solid #c5c9ca;border-radius:9px;color:#6b7175;cursor:pointer;padding:10px 12px}
.confirm-dialog-backdrop{align-items:center;background:rgba(8,9,14,.72);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:50}.confirm-dialog{background:linear-gradient(150deg,#292433,#1b1c27);border:1px solid #5f6466;border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.45);max-width:430px;padding:30px;width:100%}.confirm-dialog-icon{align-items:center;background:rgba(108,115,117,.18);border:1px solid #7a7f81;border-radius:50%;color:#c05656;display:flex;font-family:Georgia,serif;font-size:20px;font-weight:700;height:40px;justify-content:center;width:40px}.confirm-dialog h2{font-family:Georgia,serif;font-size:24px;font-weight:500;margin:18px 0 8px}.confirm-dialog p{color:#aaa5b2;font-size:14px;line-height:1.65}.confirm-dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:26px}.confirm-dialog-actions button{cursor:pointer;font-weight:700;min-height:42px;padding:0 15px}.confirm-delete-action{background:#454b4e;border:1px solid #62696c;border-radius:10px;color:#fff}.confirm-delete-action:hover{background:#3a3f42}
@media(max-width:980px){.codex-layout,.structure-layout,.detail-layout{grid-template-columns:1fr}.codex-create,.tree-editor,.detail-aside{position:static}.inline-form{grid-template-columns:1fr 1fr}.form-grid.three{grid-template-columns:1fr 1fr}}@media(max-width:600px){.codex-toolbar,.form-grid,.form-grid.three,.inline-form{grid-template-columns:1fr}.creation-card,.settings-card{padding:28px 22px}.workspace-content{padding:30px 18px}}
.setup-path{align-items:center;background:rgba(27,28,39,.72);border:1px solid #343342;border-radius:16px;display:grid;gap:16px;grid-template-columns:1fr auto 1fr auto 1fr;margin:-14px 0 28px;padding:18px 22px}.setup-path div{display:grid;gap:4px}.setup-path span{color:#9c8ce3;font-size:11px;font-weight:800;letter-spacing:.12em}.setup-path strong{font-family:Georgia,serif;font-size:16px}.setup-path small{color:#888593;font-size:12px}.setup-path i{color:#555161;font-style:normal}.settings-form-layout{display:grid;gap:34px}.settings-form-layout .stack-form{margin-top:0}.settings-save{justify-self:start;min-width:150px}.settings-danger{align-items:center;border-top:1px solid #3d3038;display:flex;gap:24px;justify-content:space-between;padding-top:25px}.settings-danger h2{font-family:Georgia,serif;font-size:19px;font-weight:500}.settings-danger p{font-size:13px;line-height:1.5;margin-top:6px}.settings-danger button{background:transparent;border:1px solid #c5c9ca;border-radius:9px;color:#6b7175;cursor:pointer;min-width:132px;padding:10px 12px}.settings-danger button:hover{background:rgba(108,115,117,.13)}
@media(max-width:700px){.setup-path{align-items:start;grid-template-columns:1fr}.setup-path i{display:none}}@media(max-width:600px){.settings-danger{align-items:flex-start;flex-direction:column}.settings-danger button{width:100%}}
.settings-card.wide{max-width:900px}.project-settings-form{display:grid;gap:30px}.settings-section+.settings-section{border-top:1px solid #343342;padding-top:28px}.settings-grid{margin-top:20px}.writing-guide-input{min-height:220px!important}.project-bible-input{min-height:210px!important}.form-message.success{color:#9fd2ac}.advanced-fields{border-top:1px solid #343342;padding-top:14px}.advanced-fields summary{color:#aaa6b4;cursor:pointer;font-size:13px}.advanced-fields[open] summary{color:#c8bdff}.narrative-input{min-height:260px!important}
.entity-groups{display:grid;gap:26px}.entity-group>header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px;padding:0 4px}.entity-group>header h2{font-family:Georgia,serif;font-size:21px;font-weight:500}.entity-group>header span{color:#777482;font-size:12px}.entity-list{display:grid;gap:8px}.entity-row{align-items:center;background:#1b1c27;border:1px solid #343342;border-radius:12px;color:#f3eff8;display:grid;gap:18px;grid-template-columns:minmax(185px,.8fr) minmax(220px,1.6fr) auto;padding:14px 16px;text-decoration:none;transition:border-color .18s,background .18s}.entity-row:hover{background:#20212e;border-color:#7163ad}.entity-row-title{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.entity-row-title strong{font-family:Georgia,serif;font-size:14px}.entity-row-title small{background:#272633;border-radius:999px;color:#9691a2;font-size:10px;padding:3px 7px}.entity-row p{color:#9f9ba8;display:-webkit-box;font-size:13px;line-height:1.5;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.entity-row>b{color:#c8bdff;font-size:12px;white-space:nowrap}
.mode-switch{background:#13141d;border:1px solid #343342;border-radius:10px;display:grid;grid-template-columns:1fr 1fr;margin-top:20px;padding:4px}.mode-switch button{background:transparent;border:0;border-radius:7px;color:#8e8a98;cursor:pointer;padding:9px}.mode-switch button.active{background:#2b2940;color:#e0d9ff}.batch-editor{display:grid;gap:15px;margin-top:22px}.batch-editor>label{color:#c8c4d1;display:grid;font-size:12px;font-weight:600;gap:7px}.batch-editor>label textarea{min-height:230px}.secondary-action{background:transparent;border:1px solid #5b5478;border-radius:10px;color:#c9beff;cursor:pointer;font-weight:700;min-height:44px;padding:0 14px}.chapter-preview{border-top:1px solid #343342;display:grid;gap:10px;margin-top:6px;padding-top:18px}.preview-heading{align-items:center;display:flex;justify-content:space-between}.preview-heading span{color:#918c9e;font-size:12px}.chapter-preview-row{background:#15161f;border:1px solid #302f3c;border-radius:10px;display:grid;gap:8px;padding:10px}.chapter-preview-row textarea{min-height:74px}.chapter-list{display:grid;gap:8px;margin-top:10px}.chapter-row{background:#1e1f2a;border:1px solid transparent;border-radius:9px}.chapter-row[open]{border-color:#48445c}.chapter-row summary{align-items:center;cursor:pointer;display:flex;gap:18px;justify-content:space-between;list-style:none;padding:12px}.chapter-row summary::-webkit-details-marker{display:none}.chapter-row summary>div{min-width:0}.chapter-row summary strong{font-size:14px}.chapter-row summary p{color:#8f8b99;display:-webkit-box;font-size:12px;line-height:1.45;margin-top:5px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.chapter-row summary>span{color:#817d8a;font-size:11px;white-space:nowrap}.chapter-edit-form{border-top:1px solid #343342;margin:0;padding:14px}.tree-empty{margin-top:16px}.direct-chapters{margin-top:18px}
.chapter-edit-actions{display:flex;flex-wrap:wrap;gap:9px}.chapter-edit-form .chapter-delete-action{background:transparent;border:1px solid #c5c9ca;color:#6b7175}.chapter-edit-form .chapter-delete-action:hover{background:rgba(108,115,117,.14)}
@media(max-width:760px){.entity-row{align-items:start;grid-template-columns:1fr}.entity-row>b{justify-self:start}.settings-grid{grid-template-columns:1fr}.chapter-row summary{align-items:flex-start;flex-direction:column;gap:8px}.chapter-row summary>span{white-space:normal}}
.workspace .page-header h1{font-size:clamp(30px,4vw,44px)}.workspace .page-header.compact h1{font-size:clamp(28px,3.5vw,38px)}.workspace .section-heading h2{font-size:20px}.codex-create h2,.tree-editor h2{font-size:22px}.detail-aside h2{font-size:19px}
.writing-link{align-items:center;background:#2b2940;border:1px solid #4d4866;border-radius:9px;color:#d6ccff;display:flex;font-size:13px;font-weight:700;justify-content:center;min-height:42px;text-decoration:none}.writing-link:hover{background:#37334f}
.character-import{margin-bottom:24px;padding:0}.character-import>summary,.ai-advanced>summary{align-items:center;cursor:pointer;display:flex;justify-content:space-between;list-style:none;padding:20px 22px}.character-import>summary::-webkit-details-marker,.ai-advanced>summary::-webkit-details-marker{display:none}.character-import>summary span,.ai-advanced>summary span{display:grid;gap:5px}.character-import>summary b,.ai-advanced>summary b{font-family:Georgia,serif;font-size:18px}.character-import>summary small,.ai-advanced>summary small{color:#8f8b99;font-size:12px;font-weight:400}.character-import>summary i,.ai-advanced>summary i{color:#a99bdc;font-size:11px;font-style:normal}.character-import[open]>summary,.ai-advanced[open]>summary{border-bottom:1px solid #343342}.character-import-body{display:grid;gap:14px;padding:22px}.character-import-body>label,.character-draft label,.ai-advanced-body label{color:#c8c4d1;display:grid;font-size:12px;font-weight:600;gap:7px}.character-import-body>label textarea{min-height:260px}.character-import-body .form-grid select{min-height:38px;font-size:12px}.character-import-preview{border-top:1px solid #343342;display:grid;gap:12px;margin-top:4px;padding-top:20px}.character-import-preview>header{align-items:center;display:flex;justify-content:space-between}.character-import-preview>header span{color:#918e9c;font-size:12px}.character-draft{background:#15161f;border:1px solid #302f3c;border-radius:12px;display:grid;gap:12px;padding:14px}.character-draft-heading{align-items:center;display:flex;justify-content:space-between}.character-draft-heading span{color:#a99bdc;font-size:11px;font-weight:700}.character-draft-heading button{background:transparent;border:0;color:#6b7175;cursor:pointer;font-size:11px}.character-draft textarea{min-height:180px}.entity-identity-header{align-items:center;display:flex;gap:18px;margin-bottom:28px}.entity-avatar{align-items:center;background:linear-gradient(145deg,#393352,#252536);border:1px solid #49445e;border-radius:16px;color:#d5caff;display:flex;font-family:Georgia,serif;font-size:25px;height:64px;justify-content:center;width:64px}.entity-identity-header h1{font-family:Georgia,serif;font-size:clamp(30px,4vw,40px);font-weight:500;letter-spacing:-.035em;margin:5px 0 8px}.identity-meta{display:flex;flex-wrap:wrap;gap:7px}.identity-meta span{background:#22232f;border:1px solid #353443;border-radius:999px;color:#9d98a7;font-size:11px;padding:4px 8px}.character-notes{min-height:360px!important}.ai-advanced{padding:0}.ai-advanced-body{display:grid;gap:15px;padding:22px}
@media(max-width:600px){.character-import>summary,.ai-advanced>summary{align-items:flex-start;gap:12px}.character-import>summary i,.ai-advanced>summary i{display:none}.entity-identity-header{align-items:flex-start}.entity-avatar{height:52px;width:52px}.character-notes{min-height:280px!important}}

/* 正文寫作工作台 */
.writing-workspace{background:#111119;color:#eeeaf3;display:grid;grid-template-columns:clamp(420px,32vw,560px) minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100vh;height:100dvh;overflow:hidden}
.writing-sidebar{background:linear-gradient(180deg,#191923,#15151e);border-right:1px solid #33313d;display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}
.writing-project-head{align-items:center;border-bottom:1px solid #302e39;display:flex;justify-content:space-between;min-height:52px;padding:9px 20px}.writing-project-head a{color:#a9a4b4;font-size:12px;text-decoration:none}.writing-project-head a:hover{color:#ddd5ff}.writing-project-head>div{align-items:center;display:flex;gap:12px;min-width:0}.writing-project-head span{color:#d2c8ff;font-family:Georgia,serif;font-size:13px;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.writing-project-head .writing-ai-settings{background:#29263a;border:1px solid #423d59;border-radius:999px;color:#bfb3ec;font-size:10px;padding:5px 8px;white-space:nowrap}
.entity-back-link{color:#bfb3ec;display:inline-block;font-size:13px;margin-bottom:18px;text-decoration:none}.entity-back-link:hover{color:#e1daff}.edit-project-name{background:transparent;border:0;color:#bfb3ec;cursor:pointer;font-size:10px;padding:0;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.edit-project-name:hover{color:#eeeaff}.dialog-field{color:#d7d1df;display:grid;font-size:12px;font-weight:700;gap:7px;margin-top:20px}.dialog-field input{background:#13141d;border:1px solid #4c4860;border-radius:10px;color:#f4f0f8;font:inherit;min-height:44px;outline:none;padding:10px 12px;width:100%}.dialog-field input:focus{border-color:#8e7ad7;box-shadow:0 0 0 3px rgba(142,122,215,.15)}.save-project-name-action{background:#6353ad;border-color:#8c7bd0}.save-project-name-action:hover{background:#7562ce}
.chapter-switch{align-items:center;display:flex;gap:8px;padding:14px 18px 8px}.chapter-switch label{flex:1 1}.reset-chapter-btn{background:transparent;border:1px solid #c4a86c;border-radius:7px;color:#8a6d3b;cursor:pointer;font-size:10px;font-weight:700;padding:6px 9px;white-space:nowrap}.reset-chapter-btn:hover{background:#faf6ef;border-color:#a68b4b;color:#6b4f28}.chapter-switch label,.writing-memory>label{color:#918d9b;display:grid;font-size:11px;font-weight:700;gap:7px;letter-spacing:.03em}.chapter-switch select,.writing-memory textarea,.ai-composer textarea{background:#111119;border:1px solid #393744;border-radius:10px;color:#eeebf2;font:inherit;outline:none;padding:10px 11px;width:100%}.chapter-switch select:focus,.writing-memory textarea:focus,.ai-composer textarea:focus{border-color:#8a76d2;box-shadow:0 0 0 3px rgba(138,118,210,.14)}
.writing-memory{border-bottom:1px solid #302e39;padding:7px 18px}.writing-memory>summary{align-items:center;color:#d6d0df;cursor:pointer;display:flex;font-size:12px;font-weight:800;justify-content:space-between;list-style:none;padding:8px 0}.writing-memory>summary small{color:#777281;font-size:10px;font-weight:500}.writing-memory>summary::-webkit-details-marker{display:none}.writing-memory[open]{max-height:42vh;overflow-y:auto;padding-bottom:14px}.writing-memory textarea{font-size:12px;line-height:1.55;min-height:82px;resize:vertical}.memory-summary,.proposal-list,.context-manifest{background:#12121a;border:1px solid #302e3b;border-radius:9px;margin-top:10px;padding:11px}.memory-summary>b,.proposal-list>b{color:#c4b7ff;font-size:11px}.memory-summary p,.proposal-list p,.context-manifest p{color:#9c98a5;font-size:11px;line-height:1.55;margin-top:6px}.memory-summary ul{color:#aaa5b2;font-size:11px;line-height:1.5;margin:6px 0 0 17px}.proposal-list article{border-top:1px solid #302e3b;margin-top:9px;padding-top:9px}.proposal-list strong{font-size:12px}.proposal-list article div{display:flex;gap:7px;margin-top:8px}.proposal-list button,.apply-card button{background:#2d2941;border:1px solid #4d456d;border-radius:7px;color:#d9d0ff;cursor:pointer;font-size:10px;padding:6px 8px}.proposal-list button+button,.apply-card button+button{background:transparent;border-color:#484550;color:#aaa6b2}.context-manifest summary{color:#aaa1ce;cursor:pointer;font-size:11px;font-weight:700}.side-toolbar{align-items:center;border-bottom:1px solid #302e39;display:flex;gap:5px;padding:7px 18px}.side-toolbar button{background:transparent;border:0;border-radius:7px;color:#9c96a8;cursor:pointer;font-size:10px;font-weight:700;padding:7px 10px}.side-toolbar button.active{background:#302b47;color:#d5caff}.side-toolbar button:hover{color:#ded6ff}.toolbar-hint{color:#585363;font-size:9px;margin-left:auto}.side-panel{background:#16161f;border-bottom:1px solid #302e39;max-height:45vh;overflow-y:auto;padding:10px 18px 14px}.side-panel label{color:#918d9b;display:grid;font-size:11px;font-weight:700;gap:7px;letter-spacing:.03em}.side-panel textarea{background:#111119;border:1px solid #393744;border-radius:10px;color:#eeebf2;font:inherit;font-size:12px;line-height:1.55;min-height:82px;outline:none;padding:10px 11px;resize:vertical;width:100%}.side-panel textarea:focus{border-color:#8a76d2;box-shadow:0 0 0 3px rgba(138,118,210,.14)}
.ai-conversation{display:flex;flex:1 1;flex-direction:column;min-height:180px;overflow:hidden;padding:16px 20px 0}.conversation-title{align-items:center;display:flex;justify-content:space-between}.conversation-title b{font-family:Georgia,serif;font-size:15px}.conversation-title span{color:#827d8b;font-size:10px}.message-list{display:flex;flex:1 1;flex-direction:column;gap:10px;margin-top:12px;overflow-y:auto;padding:0 3px 14px}.conversation-empty{color:#777381;font-size:13px;line-height:1.65;margin:auto;padding:24px;text-align:center}.ai-message{border-radius:14px;max-width:92%;padding:11px 13px}.ai-message.user{align-self:flex-end;background:#312b4c}.ai-message.assistant{align-self:flex-start;background:#22222d;border:1px solid #363441}.ai-message small{color:#9791a1;font-size:9px;font-weight:800}.ai-message p{font-size:13px;line-height:1.6;margin-top:4px;white-space:pre-wrap}.apply-card{background:#242036;border:1px solid #554d75;border-radius:13px;margin-bottom:10px;max-height:220px;overflow:auto;padding:13px}.apply-card b{color:#cfc3ff;font-size:11px}.apply-card p{font-size:12px;line-height:1.6;margin:8px 0;white-space:pre-wrap}
.ai-composer{background:#191923;border-top:1px solid #302e39;padding:14px 18px 18px}.ai-modes{display:grid;gap:5px;grid-template-columns:repeat(3,1fr);margin-bottom:10px}.ai-modes button{background:transparent;border:0;border-radius:8px;color:#827e8c;cursor:pointer;font-size:11px;padding:8px}.ai-modes button.active{background:#302b47;color:#d5caff}.ai-composer textarea{border-radius:14px;font-size:13px;line-height:1.6;min-height:118px;padding:13px 14px;resize:vertical}.send-ai{background:linear-gradient(135deg,#7865cf,#50448f);border:0;border-radius:10px;color:white;cursor:pointer;font-size:12px;font-weight:800;margin-top:9px;min-height:42px;width:100%}.send-ai:disabled{cursor:wait;opacity:.6}.writing-error{color:#b55050;font-size:11px;line-height:1.45;margin-top:8px}
.manuscript-pane{background:#ece9e5;color:#25232a;display:flex;flex-direction:column;min-height:0;min-width:0}.manuscript-toolbar{align-items:center;background:rgba(250,248,244,.97);border-bottom:1px solid #d7d2cc;display:flex;gap:18px;justify-content:space-between;min-height:52px;padding:9px 24px}.manuscript-toolbar>input{background:transparent;border:0;color:#25232a;font-family:Georgia,"Noto Serif TC",serif;font-size:19px;font-weight:700;min-width:0;outline:none;width:min(620px,50vw)}.manuscript-toolbar>div{align-items:center;display:flex;gap:10px}.save-state,.chapter-status{color:#7d7771;font-size:10px;white-space:nowrap}.save-state.error{color:#b24555}.chapter-status{background:#e8e3dc;border-radius:999px;padding:5px 8px}.chapter-status.completed{background:#dfe9dc;color:#456044}.manuscript-toolbar button{background:#312d3a;border:0;border-radius:9px;color:#faf7f1;cursor:pointer;font-size:11px;font-weight:700;padding:9px 12px;white-space:nowrap}.manuscript-toolbar button:disabled{cursor:not-allowed;opacity:.45}
.manuscript-editor{background:#fffdf9;border:1px solid #ddd8d1;border-radius:0 0 22px 22px;border-top:0;box-shadow:0 16px 50px rgba(62,52,44,.09);color:#2b292d;flex:1 1;font-family:Georgia,"Noto Serif TC","Microsoft JhengHei",serif;font-size:18px;line-height:1.98;margin:0 auto 8px;max-width:1240px;outline:none;overflow-y:auto;padding:24px clamp(48px,6vw,108px) 58px;resize:none;width:calc(100% - 36px)}.manuscript-editor::placeholder{color:#aaa49d}.manuscript-editor::selection{background:#d9cdfd}.manuscript-footer{color:#8d8780;display:flex;font-size:10px;justify-content:space-between;margin:0 auto;padding:5px 24px 12px;max-width:1240px;width:calc(100% - 36px)}.editor-wrapper{display:flex;flex:1 1;flex-direction:column;overflow:hidden;position:relative}.generating-overlay{align-items:center;background:rgba(255,253,249,.7);bottom:8px;display:flex;justify-content:center;left:18px;pointer-events:none;position:absolute;right:18px;top:18px;z-index:5}.generating-overlay span{background:#312d3a;border-radius:10px;color:#faf7f1;font-size:13px;font-weight:700;padding:10px 20px}.selection-toolbar{background:#312d3a;border-radius:10px;box-shadow:0 8px 28px rgba(0,0,0,.18);display:flex;gap:3px;padding:6px;position:absolute;z-index:10}.selection-toolbar button{background:transparent;border:0;border-radius:7px;color:#d5caff;cursor:pointer;font-size:11px;padding:6px 10px;white-space:nowrap}.selection-toolbar button:hover{background:#4a4260}

/* 正文工作台柔和淺色主題 */
.writing-workspace{background:#eeeaf0;color:#302c35}.writing-sidebar{background:linear-gradient(180deg,#f3f0f5,#e9e4ed);border-right-color:#d5cdd9}.writing-project-head{border-bottom-color:#d8d0dc}.writing-project-head a{color:#696270}.writing-project-head a:hover{color:#3f3747}.writing-project-head span{color:#51445f}.writing-project-head .writing-ai-settings{background:#e2d9e9;border-color:#cfc2dc;color:#665477}.edit-project-name{color:#706079}.edit-project-name:hover{color:#493e51}.chapter-switch label,.writing-memory>label{color:#726b78}.chapter-switch select,.writing-memory textarea,.ai-composer textarea{background:#fbf9fc;border-color:#d4ccd9;color:#332f38}.chapter-switch select:focus,.writing-memory textarea:focus,.ai-composer textarea:focus{border-color:#8a76b2;box-shadow:0 0 0 3px rgba(138,118,178,.14)}.chapter-switch select:disabled,.writing-memory textarea:disabled,.ai-composer textarea:disabled{opacity:.58}.writing-memory{border-bottom-color:#d8d0dc}.writing-memory>summary{color:#48414f}.writing-memory>summary small{color:#77707c}.memory-summary,.proposal-list,.context-manifest{background:#f8f5f9;border-color:#d9d1dc}.memory-summary>b,.proposal-list>b{color:#67547a}.memory-summary p,.proposal-list p,.context-manifest p,.memory-summary ul{color:#6f6874}.proposal-list article{border-top-color:#ddd5e0}.proposal-list strong{color:#403946}.proposal-list button,.apply-card button{background:#e3d9ec;border-color:#c9b9d8;color:#574765}.proposal-list button+button,.apply-card button+button{background:#f8f5f9;border-color:#d3cbd6;color:#6f6874}.context-manifest summary{color:#675a78}.side-toolbar{border-bottom-color:#d8d0dc}.side-toolbar button{color:#726b78}.side-toolbar button.active{background:#ddd3e9;color:#51445f}.side-toolbar button:hover{color:#3d3743}.toolbar-hint{color:#9b94a2}.side-panel{background:#f8f5f9;border-bottom-color:#d8d0dc}.side-panel label{color:#726b78}.side-panel textarea{background:#fbf9fc;border-color:#d4ccd9;color:#332f38}.side-panel textarea:focus{border-color:#8a76b2;box-shadow:0 0 0 3px rgba(138,118,178,.14)}.conversation-title b{color:#3d3743}.conversation-title span,.conversation-empty{color:#77707c}.ai-message.user{background:#ddd2ec;color:#3d3546}.ai-message.assistant{background:#faf8fb;border-color:#d8d0dc;color:#39343e}.ai-message small{color:#756d7c}.ai-message p{color:#39343e}.apply-card{background:#eee7f5;border-color:#cbbddd;color:#403747}.apply-card b{color:#665279}.ai-composer{background:#ece7ef;border-top-color:#d8d0dc}.ai-modes button{color:#766f7b}.ai-modes button.active{background:#ddd3e9;color:#51445f}.writing-error{color:#b55050}.manuscript-pane{background:#e9e5e2;color:#302d33}.manuscript-toolbar{background:rgba(247,244,240,.98);border-bottom-color:#d5d0ca}.manuscript-editor{background:#fffdfa;border-color:#d8d1c9;box-shadow:0 16px 45px rgba(77,64,55,.08);color:#302d33}.generating-overlay{background:rgba(255,253,249,.65)}.generating-overlay span{background:#51445f;color:#faf7f1}.selection-toolbar{background:#51445f;box-shadow:0 8px 28px rgba(0,0,0,.12)}.selection-toolbar button{color:#d5caff}.selection-toolbar button:hover{background:#685a7c}
.writing-versions{border-bottom:1px solid #d8d0dc;padding:7px 18px}.writing-versions>summary{align-items:center;color:#48414f;cursor:pointer;display:flex;font-size:12px;font-weight:800;justify-content:space-between;list-style:none;padding:8px 0}.writing-versions>summary::-webkit-details-marker{display:none}.writing-versions>summary small{color:#77707c;font-size:10px;font-weight:500}.writing-versions[open]{max-height:30vh;overflow-y:auto;padding-bottom:12px}.version-list{display:grid;gap:6px}.version-list>p{color:#77707c;font-size:11px;line-height:1.5;padding:7px 0}.version-list button{align-items:center;background:#f9f7fa;border:1px solid #d9d1dc;border-radius:8px;color:#49424f;cursor:pointer;display:flex;justify-content:space-between;padding:8px 10px;text-align:left}.version-list button:hover{background:#eee7f5;border-color:#c7b8d4}.version-list button:disabled{cursor:wait;opacity:.55}.version-list button span{font-size:10px}.version-list button small{color:#746c79;font-size:9px}.apply-card{max-height:390px}.candidate-compare{display:grid;gap:8px;margin:9px 0}.candidate-compare section{background:#faf8fb;border:1px solid #d8d0dc;border-radius:9px;padding:9px}.candidate-compare small{color:#746a7d;font-size:9px;font-weight:800}.candidate-compare p{max-height:90px;overflow:auto}.candidate-compare textarea{background:#fffdfa;border:1px solid #cfc5d7;border-radius:8px;color:#39343e;font:inherit;font-size:11px;line-height:1.55;margin-top:6px;min-height:120px;padding:9px;resize:vertical;width:100%}.candidate-actions{display:flex;flex-wrap:wrap;gap:6px}.candidate-actions button+button{margin:0}.candidate-message{color:#67547a!important;font-size:10px!important;margin-bottom:0!important}.version-preview-dialog{max-width:760px}.version-preview-dialog textarea{background:#fffdfa;border:1px solid #d7cfd9;border-radius:12px;color:#39343e;font:15px/1.75 Georgia,"Noto Serif TC",serif;margin:16px 0;max-height:48vh;min-height:300px;padding:18px;resize:vertical;width:100%}.version-preview-dialog .restore-version-action{background:#6653a8;border-color:#8874c3}.version-preview-dialog .restore-version-action:hover{background:#7561ba}
.rolling-summary-list,.continuity-list{background:#f8f5f9;border:1px solid #d9d1dc;border-radius:9px;margin-top:10px;padding:11px}.rolling-summary-list>b,.continuity-list>b{color:#67547a;font-size:11px}.rolling-summary-list details{border-top:1px solid #ddd5e0;margin-top:8px;padding-top:8px}.rolling-summary-list summary{color:#554c5c;cursor:pointer;font-size:10px;font-weight:700}.rolling-summary-list p,.continuity-list p{color:#6f6874;font-size:11px;line-height:1.55;margin-top:7px;white-space:pre-wrap}.continuity-list article{border-top:1px solid #ddd5e0;margin-top:8px;padding-top:8px}.continuity-list strong{color:#775261;font-size:10px}.continuity-list article div{display:flex;gap:6px;margin-top:7px}.continuity-list button{background:#f1e8ed;border:1px solid #d2bdc7;border-radius:7px;color:#714d5c;cursor:pointer;font-size:10px;padding:5px 8px}.proposal-list textarea{background:#fffdfa;border:1px solid #d7cfd9;border-radius:7px;color:#403946;font:inherit;font-size:11px;line-height:1.5;margin-top:7px;min-height:70px;padding:7px;resize:vertical;width:100%}.candidate-tabs{display:flex;gap:6px;margin-top:8px;overflow-x:auto}.candidate-tabs button.active{background:#6653a8;color:#fff}.character-diff{display:grid;gap:5px;margin-top:6px}.character-diff p{background:#f5f1f5;border-radius:6px;margin:0!important;padding:6px}.character-diff del{background:#f2cfd6;color:#854556;text-decoration:none}.character-diff ins{background:#d8ecd8;color:#35613c;text-decoration:none}.ai-message.streaming{border-color:#9b87c0}.compare-model{align-items:center;color:#6e6674;display:grid;font-size:10px;gap:5px;grid-template-columns:auto 1fr;margin:0 0 9px}.compare-model select,.ai-modes select{background:#fbf9fc;border:1px solid #d4ccd9;border-radius:8px;color:#514a56;font:inherit;font-size:10px;min-height:32px;padding:5px}.ai-modes{grid-template-columns:repeat(4,1fr)}
@media(max-width:1100px){.writing-workspace{grid-template-columns:400px minmax(0,1fr)}.manuscript-toolbar{align-items:flex-start;flex-direction:column}.manuscript-toolbar>input{width:100%}.manuscript-editor{border-radius:16px;font-size:16px;padding:42px 34px}}
@media(max-width:720px){.writing-workspace{grid-template-columns:1fr;grid-template-rows:auto;height:auto;min-height:100vh;overflow:visible}.writing-sidebar{max-height:100vh;min-height:720px}.manuscript-pane{min-height:100vh}.manuscript-editor{min-height:72vh}.chapter-status{display:none}}

/* AI 模型設定 */
.ai-settings-layout{display:grid;gap:26px}.ai-security-note{align-items:flex-start;background:linear-gradient(135deg,rgba(76,66,119,.5),rgba(28,29,40,.9));border:1px solid #4a4462;border-radius:16px;display:flex;gap:14px;padding:18px 20px}.ai-security-note>span{align-items:center;background:#302b47;border-radius:9px;color:#c9beff;display:flex;height:34px;justify-content:center;width:34px}.ai-security-note strong{font-size:14px}.ai-security-note p{color:#9c98a6;font-size:12px;line-height:1.6;margin-top:5px}.ai-purpose-panel{padding:26px}.ai-purpose-empty{background:#161720;border:1px solid #373545;border-radius:10px;color:#aaa5b4;font-size:12px;line-height:1.55;margin-bottom:15px;padding:12px 14px}.ai-purpose-grid{display:grid;gap:15px;grid-template-columns:1fr 1fr}.ai-purpose-grid label,.ai-config-grid label{color:#c8c4d1;display:grid;font-size:12px;font-weight:600;gap:7px}.ai-purpose-grid select:disabled{cursor:not-allowed;opacity:.55}.ai-save-preferences{border:0;cursor:pointer;margin-top:18px}.ai-config-section>.section-heading{padding:0 4px}.ai-config-list{display:grid;gap:14px}.ai-config-card{padding:0;overflow:hidden}.ai-config-card>header{align-items:center;background:#20212c;border-bottom:1px solid #343342;display:flex;justify-content:space-between;padding:16px 18px}.ai-config-card>header>div{align-items:center;display:flex;gap:9px}.ai-config-card>header strong{font-family:Georgia,serif;font-size:17px}.ai-config-card>header small{background:#2c2b39;border-radius:999px;color:#918c9e;font-size:9px;padding:4px 7px}.ai-config-card>header>span{color:#9b95aa;font-size:11px}.provider-dot{font-size:11px}.provider-dot.openai{color:#7ad6bb}.provider-dot.gemini{color:#76a9ff}.provider-dot.anthropic{color:#df9f72}.provider-dot.ollama{color:#c9bdff}.provider-dot.openai_compatible{color:#e2cf82}.ai-config-grid{display:grid;gap:14px;grid-template-columns:1fr 1fr;padding:18px}.ai-config-grid .wide-field{grid-column:1/-1}.ai-config-grid label small{color:#888391;font-size:10px;font-weight:400}.ai-config-card>footer{align-items:center;border-top:1px solid #343342;display:flex;justify-content:space-between;padding:13px 18px}.ai-config-card>footer>div{display:flex;gap:8px}.ai-config-card>footer button:not(.secondary-action){background:linear-gradient(135deg,#7562ce,#504590);border:0;border-radius:9px;color:white;cursor:pointer;font-weight:700;padding:0 14px}.ai-config-card .delete-config{background:transparent!important;border:1px solid #c5c9ca!important;color:#6b7175!important}.ai-config-card .confirm-delete{background:#454b4e!important;color:#fff!important}.ai-add-panel{padding:26px}.provider-picker{display:grid;gap:7px;grid-template-columns:repeat(5,1fr)}.provider-picker button{background:#15161f;border:1px solid #363443;border-radius:9px;color:#9995a3;cursor:pointer;min-height:42px;padding:7px}.provider-picker button.active{background:#302b47;border-color:#655b8b;color:#ded6ff}.ai-add-panel .ai-config-grid{padding:0}.ai-settings-message{background:#1d3329;border:1px solid #3f6c56;border-radius:10px;bottom:20px;color:#b9e6ca;font-size:13px;padding:12px 16px;position:fixed;right:20px;z-index:20}.ai-settings-message.error{background:#3a3b3d;border-color:#63686a;color:#e2ded8}.ai-usage-badge{background:#f6ecd7;border:1px solid #d9bc82;border-radius:999px;color:#6b4f28;font-size:10px;font-weight:700;padding:3px 8px;white-space:nowrap}.pricing-table{width:100%;border-collapse:collapse;font-size:12px}.pricing-table th{color:#72787b;font-size:10px;font-weight:700;letter-spacing:.06em;padding:6px 8px;text-align:left;border-bottom:1px solid #d7dada}.pricing-table td{padding:6px 8px;border-bottom:1px solid #e8eaea;color:#4d5457}.pricing-table a{color:#75623e;font-size:10px;text-decoration:none}.pricing-table a:hover{text-decoration:underline}
@media(max-width:800px){.ai-purpose-grid,.ai-config-grid{grid-template-columns:1fr}.ai-config-grid .wide-field{grid-column:auto}.provider-picker{grid-template-columns:1fr 1fr}.ai-config-card>footer{align-items:flex-start;flex-direction:column;gap:13px}.ai-config-card>footer>div{flex-wrap:wrap}.ai-config-card>header{align-items:flex-start;gap:10px}.ai-config-card>header>span{white-space:nowrap}}
.rolling-summary-list button{background:#eee7f5;border:1px solid #cbbddd;border-radius:7px;color:#665279;cursor:pointer;font-size:9px;margin-top:7px;padding:5px 7px}.project-backup-card{display:flex;flex-direction:column}.project-backup-card .backup-actions{display:flex;gap:8px;margin-top:auto;padding-top:18px}.project-backup-card .secondary-action{align-items:center;display:inline-flex;font-size:12px;justify-content:center;text-decoration:none}
.project-backup-card .drive-sync-action{margin-top:8px;width:100%}

/* Apple 式現代文學作品總覽 */
.workspace:has(.novel-home){background:#f4f2ee}.workspace:has(.novel-home) .workspace-content{background:radial-gradient(circle at 86% 0,rgba(158,139,181,.13),transparent 30%),#f4f2ee;color:#252329;max-width:none;padding:52px clamp(32px,5vw,76px)}
.novel-home{margin:0 auto;max-width:1320px}.novel-home-hero{align-items:flex-end;display:flex;gap:28px;justify-content:space-between;margin-bottom:36px}.novel-home-hero h1{color:#252329;font-family:Georgia,"Noto Serif TC",serif;font-size:clamp(42px,5vw,68px);font-weight:500;letter-spacing:-.045em;line-height:1.08;margin:11px 0 13px}.novel-home-hero>div>p:last-child{color:#746e75;font-size:15px;line-height:1.7;max-width:680px}.novel-home .eyebrow{color:#776187}.novel-continue-button{align-items:center;background:#2e2932;border-radius:999px;box-shadow:0 12px 28px rgba(47,40,51,.14);color:#fff;display:flex;font-size:14px;font-weight:700;gap:22px;padding:14px 18px 14px 22px;text-decoration:none;transition:transform .18s,box-shadow .18s;white-space:nowrap}.novel-continue-button:hover{box-shadow:0 16px 36px rgba(47,40,51,.2);transform:translateY(-2px)}.novel-continue-button span{align-items:center;background:#fff;border-radius:50%;color:#2e2932;display:flex;height:28px;justify-content:center;width:28px}
.novel-progress-card{align-items:center;background:rgba(255,255,255,.72);border:1px solid rgba(91,81,93,.12);border-radius:18px;display:grid;gap:16px;grid-template-columns:auto minmax(160px,1fr) auto;margin-bottom:22px;padding:17px 20px}.novel-progress-copy{display:flex;flex-wrap:wrap;gap:8px 22px}.novel-progress-copy span{color:#625d64;font-size:12px}.novel-progress-copy span:first-child{color:#2d2930;font-weight:800}.novel-progress-track{background:#e1dce2;border-radius:999px;height:5px;overflow:hidden}.novel-progress-track i{background:linear-gradient(90deg,#806c8c,#a98eb0);border-radius:inherit;display:block;height:100%}.novel-progress-card small{color:#786e7a;font-size:11px;font-weight:700}
.novel-home-grid{display:grid;gap:18px;grid-template-columns:1.25fr 1fr 1fr}.novel-home-grid article,.novel-recent-panel,.novel-home-backup{background:rgba(255,255,255,.78);border:1px solid rgba(88,78,91,.12);border-radius:24px;box-shadow:0 12px 38px rgba(61,51,62,.045)}.novel-home-grid article{display:flex;flex-direction:column;min-height:290px;padding:26px}.novel-focus-card{background:linear-gradient(145deg,#302a36,#494052)!important;color:#fff}.novel-card-heading{align-items:center;display:flex;justify-content:space-between}.novel-card-heading>span,.novel-section-title>div>span,.novel-sync-state>span{color:#897f8c;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.novel-focus-card .novel-card-heading>span{color:#cfc2d6}.novel-card-heading small{color:#8a828c;font-size:10px}.novel-focus-card .novel-card-heading small{color:#bdb2c2}.novel-home-grid h2{color:#2c2930;font-family:Georgia,"Noto Serif TC",serif;font-size:24px;font-weight:500;line-height:1.3;margin:28px 0 10px}.novel-focus-card h2{color:#fff;font-size:29px}.novel-home-grid article>p{color:#777079;display:-webkit-box;font-size:13px;line-height:1.72;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.novel-focus-card>p{color:#d0c7d3}.novel-home-grid article>a{color:#756181;font-size:12px;font-weight:700;margin-top:auto;padding-top:24px;text-decoration:none}.novel-focus-card>a{color:#e0d3e5}.novel-home-grid article>a span{margin-left:5px}.novel-memory-card ul{display:grid;gap:10px;list-style:none;margin:4px 0}.novel-memory-card li{align-items:center;color:#666069;display:flex;font-size:12px;gap:9px}.novel-memory-card li i{background:#bbb4bc;border-radius:50%;height:7px;width:7px}.novel-memory-card li i.ready{background:#6b9a7a}.novel-memory-card li i.attention{background:#b48454}
.novel-home-lower{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1.6fr) minmax(300px,.75fr);margin-top:18px}.novel-recent-panel{padding:26px}.novel-section-title{align-items:flex-end;display:flex;justify-content:space-between}.novel-section-title h2{color:#2d2930;font-family:Georgia,"Noto Serif TC",serif;font-size:23px;font-weight:500;margin-top:6px}.novel-section-title>a{color:#756b78;font-size:11px;text-decoration:none}.novel-recent-list{display:grid;margin-top:18px}.novel-recent-list>a{align-items:center;border-top:1px solid #e6e1e4;color:#302d32;display:flex;gap:22px;justify-content:space-between;padding:14px 2px;text-decoration:none}.novel-recent-list strong{font-family:Georgia,"Noto Serif TC",serif;font-size:15px}.novel-recent-list p{color:#858087;font-size:11px;margin-top:5px;max-width:560px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.novel-recent-list>a>span{color:#8b838c;font-size:10px;white-space:nowrap}.novel-empty-note{color:#807982;font-size:13px;line-height:1.6;margin-top:22px}.novel-home-backup{overflow:hidden}.novel-sync-state{background:#eee9ef;display:grid;gap:5px;padding:22px 24px}.novel-sync-state strong{color:#39343c;font-family:Georgia,"Noto Serif TC",serif;font-size:17px;font-weight:500}.novel-sync-state small{color:#827a84;font-size:10px}.novel-home-backup .project-card{background:transparent;border:0;border-radius:0;box-shadow:none;color:#312d34;min-height:0;padding:22px 24px}.novel-home-backup .project-card:hover{transform:none}.novel-home-backup .project-card-mark{display:none}.novel-home-backup .project-card h2{color:#312d34;font-size:20px;margin:0 0 7px}.novel-home-backup .project-card p{color:#7c757e;font-size:12px}.novel-home-backup .project-card .secondary-action{background:#f5f2f5;border:1px solid #d9d1dc;color:#554c59}.novel-home-backup .project-card .form-message{color:#6f6872}
.google-drive-settings{margin-top:30px}.integration-unavailable{background:#24242e;border:1px solid #3d3b49;border-radius:10px;color:#b8b3c0;padding:12px 14px}.integration-description{font-size:13px;line-height:1.6;margin-bottom:16px!important}.google-drive-settings>.primary-action{align-items:center;display:inline-flex;text-decoration:none}
@media(max-width:1050px){.novel-home-grid{grid-template-columns:1fr 1fr}.novel-focus-card{grid-column:1/-1}.novel-home-lower{grid-template-columns:1fr}.novel-home-backup{display:grid;grid-template-columns:.8fr 1.2fr}.novel-home-backup .project-card{border-left:1px solid #e1dae3}}
@media(max-width:700px){.workspace:has(.novel-home) .workspace-content{padding:34px 18px}.novel-home-hero{align-items:flex-start;flex-direction:column}.novel-home-hero h1{font-size:42px}.novel-progress-card{grid-template-columns:1fr auto}.novel-progress-copy{grid-column:1/-1}.novel-home-grid{grid-template-columns:1fr}.novel-focus-card{grid-column:auto}.novel-home-grid article{min-height:250px}.novel-home-lower{grid-template-columns:1fr}.novel-home-backup{display:block}.novel-home-backup .project-card{border-left:0;border-top:1px solid #e1dae3}.novel-recent-list>a{align-items:flex-start;flex-direction:column;gap:7px}.novel-section-title{align-items:flex-start;flex-direction:column;gap:10px}}

/* Account, admin and final silver-theme refinements */
.project-grid .project-card h2,.project-grid .empty-card h2{margin-top:4px}.novel-focus-card{background:linear-gradient(145deg,#d8dcdd,#f6f7f6)!important;border-color:#c5c9ca!important;color:#292d2f!important}.novel-focus-card .novel-card-heading>span{color:#79663f}.novel-focus-card .novel-card-heading small{color:#71787b}.novel-focus-card h2{color:#292d2f}.novel-focus-card>p{color:#676e71}.novel-focus-card>a{color:#665535}
.settings-archive{align-items:center;background:rgba(248,249,248,.72);border:1px solid #d0d4d4;border-radius:16px;display:flex;gap:24px;justify-content:space-between;padding:20px 22px}.settings-archive h2{color:#34393c;font-family:Georgia,"Noto Serif TC",serif;font-size:18px;font-weight:500}.settings-archive p{color:#747a7d;font-size:12px;line-height:1.6;margin-top:5px}.settings-archive button,.confirm-action{background:#4b5154;border:1px solid #646b6e;border-radius:9px;color:#fff;cursor:pointer;font-weight:700;padding:10px 14px}.settings-archive button:hover,.confirm-action:hover{background:#303538}.confirm-dialog-icon{background:#e2e5e5;border-color:#aeb4b6;color:#5d6467}
.field-label-row{align-items:center;display:flex;justify-content:space-between;min-height:18px}.field-label-row small{background:#e6e8e8;border-radius:999px;color:#656c6f!important;padding:3px 8px;white-space:nowrap}
.workspace-signout{display:grid;gap:5px}.admin-nav-link{border-radius:9px;color:#555b5e;font-size:13px;padding:10px;text-decoration:none}.admin-nav-link:hover{background:rgba(255,255,255,.72);color:#202426}.account-security-card{margin-top:26px}.security-grid{grid-template-columns:repeat(3,1fr);margin-top:20px}.security-actions{display:flex;gap:10px}.security-actions button{min-height:44px;padding:0 16px}
.admin-center{display:grid;gap:24px}.admin-stat-grid{display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}.admin-stat-grid article{background:rgba(252,252,250,.9);border:1px solid #d1d4d4;border-radius:18px;display:grid;gap:8px;padding:22px}.admin-stat-grid span,.integration-status-grid span{color:#7a8083;font-size:11px}.admin-stat-grid strong{color:#292d2f;font-family:Georgia,serif;font-size:30px;font-weight:500}.admin-stat-grid small{color:#777d80;font-size:11px}.admin-integration,.admin-users{padding:26px}.integration-status-grid{display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-top:22px}.integration-status-grid>div{background:#f0f2f1;border:1px solid #d6d9d9;border-radius:12px;display:grid;gap:7px;padding:15px}.integration-status-grid .wide{grid-column:1/-1}.integration-status-grid code{color:#3e4548;font-size:12px;overflow-wrap:anywhere}.admin-hint{color:#6e7578;font-size:12px;line-height:1.65;margin-top:16px}.admin-table-wrap{margin-top:22px;overflow:auto}.admin-users table{border-collapse:collapse;min-width:780px;width:100%}.admin-users th,.admin-users td{border-bottom:1px solid #dadddd;color:#4d5457;font-size:12px;padding:13px 10px;text-align:left}.admin-users th{color:#777d80;font-size:10px;letter-spacing:.08em}.admin-users td:first-child{display:grid;gap:4px}.admin-users td small{color:#858b8e}.role-badge{background:#e4e7e7;border-radius:999px;padding:4px 8px}.role-badge.admin{background:#e6dcc7;color:#665535}
@media(max-width:850px){.admin-stat-grid{grid-template-columns:1fr 1fr}.security-grid{grid-template-columns:1fr}.settings-archive{align-items:flex-start;flex-direction:column}.settings-archive button{width:100%}}@media(max-width:520px){.admin-stat-grid,.integration-status-grid{grid-template-columns:1fr}.integration-status-grid .wide{grid-column:auto}.security-actions{align-items:stretch;flex-direction:column}}

/* 全站霧面銀色藝廊主題 */
:root{--background:#eef0f0;--foreground:#25282a;--silver-0:#fcfcfa;--silver-1:#f3f4f3;--silver-2:#e3e5e5;--silver-3:#cdd0d1;--graphite:#2d3134;--muted:#707679;--champagne:#a58b5b;--line:#d2d5d5}
body{background:var(--background);color:var(--foreground)}
.auth-page{background:radial-gradient(circle at 50% 0,rgba(255,255,255,.96),transparent 38%),linear-gradient(145deg,#e1e3e3,#f4f5f4 52%,#d9dcdd)}.auth-card{background:rgba(252,252,250,.9);border-color:rgba(71,77,80,.14);box-shadow:0 28px 80px rgba(53,58,60,.13),inset 0 1px 0 #fff}.auth-mark{background:linear-gradient(145deg,#fdfdfb,#d9dcdd);border-color:#c7cbcc;color:transparent;font-size:0}.auth-mark::before{border:2px solid #34383b;border-radius:3px 0 0 3px;border-right:1px solid #a58b5b;content:"";height:27px;transform:skewY(-7deg);width:18px}.auth-kicker{color:#777d80}.auth-card h1{color:#262a2c}.auth-intro,.auth-switch{color:#73797c}.auth-divider{color:#8a8f91}.auth-divider::before,.auth-divider::after{background:#d5d8d8}.auth-form label{color:#4f5558}.auth-form input{background:#f7f8f7;border-color:#c9cdce;color:#272b2d}.auth-form input::placeholder{color:#93989a}.auth-form input:focus{background:#fff;border-color:#8f9699;box-shadow:0 0 0 3px rgba(73,79,82,.1)}.auth-submit{background:linear-gradient(135deg,#3b4043,#262a2d);border-color:#515659;box-shadow:inset 0 1px 0 rgba(255,255,255,.16)}.auth-switch a{color:#75623e}.auth-switch a:hover{color:#4f422b}
.workspace{background:linear-gradient(135deg,#eff1f1,#f7f7f5 58%,#e8eaea);color:#292d2f}.workspace-sidebar{background:linear-gradient(180deg,#e4e6e6,#d9dcdd);border-right-color:#c8cccd;box-shadow:inset -1px 0 rgba(255,255,255,.6)}.workspace-brand{align-items:center;color:#25292b;display:flex}.workspace-brand-mark{display:grid;grid-template-columns:1fr 1fr;height:24px;margin-right:10px;perspective:60px;width:29px}.workspace-brand-mark i{background:linear-gradient(145deg,#fff,#cdd1d2);border:1px solid #6f7679;display:block}.workspace-brand-mark i:first-child{border-radius:4px 1px 1px 4px;border-right-color:#a58b5b;transform:rotateY(11deg)}.workspace-brand-mark i:last-child{border-left-color:#a58b5b;border-radius:1px 4px 4px 1px;transform:rotateY(-11deg)}.workspace-project-name{color:#73797c}.workspace-sidebar nav a{color:#555b5e}.workspace-sidebar nav a:hover{background:rgba(255,255,255,.72);box-shadow:inset 3px 0 #a58b5b;color:#202426}.workspace-signout button{color:#666c6f}.workspace-signout button:hover{color:#25292b}.mobile-workspace-nav{background:#e2e4e4;border-bottom-color:#c8cccd}.mobile-workspace-nav nav a{color:#555b5e}.workspace-content{background:radial-gradient(circle at 88% 0,rgba(255,255,255,.9),transparent 30%);color:#292d2f}.eyebrow{color:#8a7249}.page-header h1{color:#25292b}.page-header p:not(.eyebrow){color:#73797c}
.primary-button,.primary-action,.stack-form button,.inline-form button{background:linear-gradient(135deg,#3c4144,#292d30);border-color:#555b5e;color:#fff}.primary-button{box-shadow:0 9px 22px rgba(45,49,52,.12)}.primary-button:hover,.primary-action:hover,.stack-form button:hover{filter:none;background:#202426}.secondary-action{background:#f7f7f5!important;border:1px solid #cbd0d1!important;color:#474d50!important}.secondary-action:hover{background:#e7e9e9!important;border-color:#aeb4b6!important}.project-card,.empty-card,.surface-panel,.creation-card,.settings-card{background:rgba(252,252,250,.9);border-color:#d1d4d4;color:#292d2f;box-shadow:0 12px 34px rgba(49,55,57,.045)}.project-card:hover,.entity-card:hover{border-color:#a58b5b;box-shadow:0 16px 34px rgba(49,55,57,.08)}.project-card-mark,.empty-card>span{color:#a58b5b}.project-card h2,.empty-card h2{color:#292d2f}.project-card p,.empty-card p{color:#747a7d}.project-card>span:last-child{color:#75623e}
.creation-page{background:radial-gradient(circle at 50% 0,#fff,transparent 34%),linear-gradient(145deg,#e3e5e5,#f3f4f3)}.creation-card h1{color:#25292b}.creation-card>p:not(.eyebrow),.settings-card p{color:#73797c}.back-link,.entity-back-link{color:#75623e}.creation-form label,.settings-card label,.stack-form label,.detail-form label{color:#555b5e}.creation-form input,.creation-form textarea,.settings-card input,.settings-card textarea,.workspace input,.workspace textarea,.workspace select{background:#f8f9f8;border-color:#c9cdce;color:#292d2f}.creation-form input:focus,.creation-form textarea:focus,.workspace input:focus,.workspace textarea:focus,.workspace select:focus{border-color:#8e9598;box-shadow:0 0 0 3px rgba(75,82,85,.1)}.section-heading>span{background:#e0e2e2;color:#6f5b37}.section-heading h2{color:#292d2f}.section-heading p,.muted{color:#777d80}.settings-section+.settings-section,.advanced-fields{border-top-color:#d7dada}.advanced-fields summary,.advanced-fields[open] summary{color:#676d70}.form-message{color:#666d70}.form-message.success{color:#547560}.form-message.error{color:#b55050}
.entity-card,.tree-book,.tree-volume li{background:#f8f8f6;border-color:#d6d9d9;color:#292d2f}.entity-card h2,.tree-heading h2,.tree-book h3,.tree-volume h4,.detail-aside h2{color:#292d2f}.entity-type,.identity-meta span{background:#e6e8e8;border-color:#d0d3d4;color:#596064}.entity-card p,.entity-card small{color:#777d80}.entity-card b,.tree-heading span,.tree-book h3 span{color:#8a7249}.codex-create,.tree-editor,.detail-aside{filter:none}.tree-volume{border-left-color:#b8a47e}.tree-series+.tree-series{border-top-color:#d6d9d9}.character-import>summary,.ai-advanced>summary{color:#34393c}.character-import>summary small,.ai-advanced>summary small{color:#7b8184}.danger-zone{border-color:#d0d4d4}.confirm-dialog{background:linear-gradient(150deg,#fdfdfb,#eceeee);border-color:#bfc4c5;box-shadow:0 24px 80px rgba(44,48,50,.2)}.confirm-dialog h2{color:#292d2f}.confirm-dialog p{color:#71777a}
.ai-security-note{background:linear-gradient(135deg,#e1e3e3,#f7f7f5);border-color:#cbd0d1}.ai-security-note>span{background:#d3d6d6;color:#6f5b37}.ai-security-note strong,.ai-purpose-panel h2{color:#292d2f}.ai-security-note p{color:#73797c}.ai-purpose-empty,.provider-picker button{background:#f4f5f4;border-color:#d0d4d4;color:#6e7477}.provider-picker button.active{background:#d9dcdd;border-color:#a58b5b;color:#2f3436}.ai-config-card>header{background:#eceeee;border-bottom-color:#d2d5d5}.ai-config-card>header strong{color:#292d2f}.ai-config-card>header small{background:#d9dcdd;color:#656b6e}.ai-config-card>header>span{color:#73797c}.ai-config-card>footer{border-top-color:#d2d5d5}.ai-config-card>footer button:not(.secondary-action){background:#34393c}.integration-unavailable{background:#eef0ef;border-color:#d1d5d5;color:#687073}
.workspace:has(.novel-home){background:#eef0f0}.workspace:has(.novel-home) .workspace-content{background:radial-gradient(circle at 86% 0,rgba(255,255,255,.95),transparent 31%),linear-gradient(145deg,#edf0f0,#f6f6f4);color:#292d2f}.novel-home .eyebrow{color:#8a7249}.novel-home-hero h1{color:#25292b}.novel-home-hero>div>p:last-child{color:#707679}.novel-continue-button{background:linear-gradient(135deg,#3b4043,#272b2d);box-shadow:0 12px 28px rgba(40,45,47,.14)}.novel-continue-button span{color:#303538}.novel-progress-card,.novel-home-grid article,.novel-recent-panel,.novel-home-backup{background:rgba(252,252,250,.86);border-color:#d2d5d5;box-shadow:0 12px 38px rgba(49,55,57,.045)}.novel-progress-copy span{color:#62686b}.novel-progress-copy span:first-child{color:#292d2f}.novel-progress-track{background:#d9dcdd}.novel-progress-track i{background:linear-gradient(90deg,#8c744b,#b7a277)}.novel-focus-card{background:linear-gradient(145deg,#3b4043,#25292c)!important}.novel-card-heading>span,.novel-section-title>div>span,.novel-sync-state>span{color:#817557}.novel-focus-card .novel-card-heading>span{color:#cfbd96}.novel-focus-card .novel-card-heading small{color:#c4c8c9}.novel-home-grid h2,.novel-section-title h2{color:#292d2f}.novel-home-grid article>p{color:#747a7d}.novel-focus-card>p{color:#d9dcdd}.novel-home-grid article>a,.novel-section-title>a{color:#75623e}.novel-focus-card>a{color:#d9c79e}.novel-memory-card li{color:#61676a}.novel-sync-state{background:#e3e5e5}.novel-sync-state strong,.novel-home-backup .project-card h2{color:#303538}.novel-sync-state small,.novel-home-backup .project-card p{color:#73797c}.novel-recent-list>a{border-top-color:#dcdfdf;color:#303538}.novel-recent-list p,.novel-recent-list>a>span{color:#7b8184}.novel-home-backup .project-card .secondary-action{background:#f7f7f5!important;border-color:#cbd0d1!important;color:#474d50!important}
/* 正文工作台：鈦銀協作區＋中性白稿紙 */
.writing-workspace{background:#e7e9e9;color:#303538}.writing-sidebar{background:linear-gradient(180deg,#e5e7e7,#dadddd);border-right-color:#c4c8c9}.writing-project-head,.writing-memory,.writing-versions{border-color:#c7cbcc}.writing-project-head a,.edit-project-name{color:#60676a}.writing-project-head a:hover,.edit-project-name:hover{color:#292d2f}.writing-project-head span{color:#34393c}.writing-project-head .writing-ai-settings{background:#f2f3f2;border-color:#c7cbcc;color:#5e6467}.chapter-switch label,.writing-memory>label{color:#686f72}.chapter-switch select,.writing-memory textarea,.ai-composer textarea{background:#f8f9f8;border-color:#c4c9ca;color:#292d2f}.chapter-switch select:focus,.writing-memory textarea:focus,.ai-composer textarea:focus{border-color:#858d90;box-shadow:0 0 0 3px rgba(72,79,82,.1)}.writing-memory>summary,.writing-versions>summary{color:#3f4548}.writing-memory>summary small,.writing-versions>summary small{color:#747b7e}.memory-summary,.proposal-list,.context-manifest,.rolling-summary-list,.continuity-list{background:#f4f5f4;border-color:#cdd1d2}.memory-summary>b,.proposal-list>b,.rolling-summary-list>b,.continuity-list>b{color:#75623e}.memory-summary p,.proposal-list p,.context-manifest p,.memory-summary ul,.rolling-summary-list p,.continuity-list p{color:#676e71}.proposal-list article,.rolling-summary-list details,.continuity-list article{border-top-color:#d5d8d8}.proposal-list button,.apply-card button,.rolling-summary-list button,.continuity-list button{background:#e2e4e4;border-color:#c1c6c7;color:#4d5457}.proposal-list button+button,.apply-card button+button{background:#f6f7f6;border-color:#ccd0d1;color:#62696c}.context-manifest summary{color:#676052}.conversation-title b{color:#303538}.conversation-title span,.conversation-empty{color:#747b7e}.ai-message.user{background:#34393c;color:#fff}.ai-message.user p,.ai-message.user small{color:#f4f5f4}.ai-message.assistant{background:#fafaf8;border-color:#cdd1d2;color:#303538}.ai-message.assistant p{color:#303538}.apply-card{background:#eef0ef;border-color:#c4b48f;color:#34393c}.apply-card b{color:#75623e}.ai-composer{background:#dfe2e2;border-top-color:#c6cacc}.ai-modes button{color:#656c6f}.ai-modes button.active{background:#f7f7f5;box-shadow:inset 0 -2px #a58b5b;color:#2e3335}.send-ai{background:linear-gradient(135deg,#3c4144,#292d30)}.manuscript-pane{background:#eef0f0;color:#2d3133}.manuscript-toolbar{background:rgba(248,248,246,.98);border-bottom-color:#d0d3d3}.save-state,.chapter-status{color:#72787b}.chapter-status{background:#e5e7e7}.manuscript-toolbar button{background:#34393c}.manuscript-editor{background:#fffefc;border-color:#d4d6d5;border-top:0;box-shadow:0 16px 45px rgba(48,53,55,.07);color:#2c3032}.manuscript-editor::selection{background:#ded5c1}.manuscript-footer{color:#797f82}.version-list button,.candidate-compare section{background:#f7f8f7;border-color:#cfd3d3;color:#444a4d}.version-list button:hover{background:#e8eaea;border-color:#b6bcbd}.candidate-compare textarea,.proposal-list textarea,.version-preview-dialog textarea{background:#fffefc;border-color:#cbd0d1;color:#303538}.candidate-tabs button.active{background:#3b4043;color:#fff}.version-preview-dialog .restore-version-action{background:#34393c;border-color:#555b5e}.side-toolbar{border-bottom-color:#c7cbcc}.side-toolbar button{color:#656c6f}.side-toolbar button.active{background:#e5e7e7;color:#2e3335}.side-toolbar button:hover{color:#2e3335}.toolbar-hint{color:#8f9598}.side-panel{background:#f4f5f4;border-bottom-color:#c7cbcc}.side-panel label{color:#656c6f}.side-panel textarea{background:#f8f9f8;border-color:#c4c9ca;color:#292d2f}.side-panel textarea:focus{border-color:#858d90;box-shadow:0 0 0 3px rgba(72,79,82,.1)}.generating-overlay{background:rgba(238,240,240,.68)}.generating-overlay span{background:#34393c;color:#f8f7f4}.selection-toolbar{background:#34393c;box-shadow:0 8px 28px rgba(40,45,47,.14)}.selection-toolbar button{color:#e8e5df}.selection-toolbar button:hover{background:#4a5154}.compare-model{color:#686f72}.compare-model select,.ai-modes select{background:#f8f9f8;border-color:#c4c9ca;color:#292d2f}.chapter-switch label{display:flex;flex-direction:row;align-items:center;gap:8px}.chapter-switch select{flex:1 1}.side-panel{max-height:40vh}.ai-conversation{min-height:120px}.ai-chat-input{background:#f8f9f8;border:1px solid #c4c9ca;border-radius:14px;color:#292d2f;font:inherit;font-size:13px;line-height:1.6;min-height:90px;outline:none;padding:13px 14px;resize:vertical;width:100%}.ai-chat-input:focus{border-color:#858d90;box-shadow:0 0 0 3px rgba(72,79,82,.1)}.ai-send-row{align-items:center;display:flex;gap:10px;margin-top:9px}.ai-intent-hint{color:#8f9598;font-size:10px;white-space:nowrap}.ai-send-row .send-ai{margin-top:0;flex:1 1}.proposed-preview{color:#676e71;font-size:12px;line-height:1.6;max-height:120px;overflow:hidden;white-space:pre-wrap}.manuscript-model-selects{display:flex;gap:5px;align-items:center}.manuscript-model-selects select{background:#f8f9f8;border:1px solid #c4c9ca;border-radius:7px;color:#292d2f;font:inherit;font-size:10px;min-height:28px;padding:3px 5px;max-width:130px}.version-row{display:flex;gap:5px;align-items:center}.version-row>button:first-child{flex:1 1}.version-delete{background:transparent!important;border:1px solid #c5c9ca!important;border-radius:6px!important;color:#6b7175!important;cursor:pointer;font-size:12px!important;padding:4px 7px!important;line-height:1}.version-delete:hover{background:#e7e9e9!important;color:#4e5558!important}.manuscript-tabs{align-items:center;background:#f8f8f6;border-bottom:1px solid #d0d3d3;display:flex;gap:2px;padding:6px 18px}.manuscript-tabs button{background:transparent;border:0;border-radius:7px;color:#72787b;cursor:pointer;font-size:11px;font-weight:700;padding:7px 12px;transition:background .15s,color .15s}.manuscript-tabs button:hover{color:#34393c}.manuscript-tabs button.active{background:#fff;box-shadow:0 1px 4px rgba(48,53,55,.08);color:#2e3335}.manuscript-tab-content{flex:1 1;overflow-y:auto;padding:22px 26px}.manuscript-tab-content label{color:#555c5f;display:grid;font-size:12px;font-weight:700;gap:7px}.manuscript-tab-content textarea{background:#fcfcfa;border:1px solid #cbd0d1;border-radius:10px;color:#292d2f;font:inherit;font-size:13px;line-height:1.7;min-height:120px;padding:12px;resize:vertical;width:100%}.manuscript-toolbar-left{display:flex;gap:10px;align-items:center}.manuscript-toolbar-right{display:flex;gap:10px;align-items:center}.manuscript-title-display{background:#fffefc;border:1px solid #d4d6d5;border-bottom:0;border-radius:22px 22px 0 0;color:#2c3032;font-family:Georgia,"Noto Serif TC",serif;font-size:22px;font-weight:500;margin:18px auto 0;max-width:1240px;padding:20px clamp(48px,6vw,108px) 10px;width:calc(100% - 36px)}.outline-save-row{align-items:center;display:flex;gap:10px;margin-top:12px}.outline-save-row .primary-action{padding:8px 16px;min-height:36px;font-size:12px}.save-hint{color:#72787b;font-size:11px}.field-over-limit{border-color:#c45a5a!important;box-shadow:0 0 0 3px rgba(180,60,60,.15)!important}.field-limit-hint{color:#c45a5a;font-size:10px;font-weight:600}.version-preview-inline{display:flex;flex-direction:column;gap:14px}.version-preview-textarea{background:#fffefc;border:1px solid #d4d6d5;border-radius:12px;color:#2c3032;flex:1 1;font:15px/1.75 Georgia,"Noto Serif TC",serif;min-height:400px;padding:18px;resize:vertical;width:100%}
@media(max-width:760px){.mobile-workspace-nav{background:#e2e4e4}.mobile-workspace-nav nav a{color:#555b5e}}
.novel-focus-card{background:linear-gradient(145deg,#d8dcdd,#f6f7f6)!important;border-color:#c5c9ca!important;color:#292d2f!important}.novel-focus-card .novel-card-heading>span{color:#79663f}.novel-focus-card .novel-card-heading small{color:#71787b}.novel-focus-card h2{color:#292d2f}.novel-focus-card>p{color:#676e71}.novel-focus-card>a{color:#665535}
.recover-candidate{align-items:center;background:#f6f4ed;border:1px solid #cab98e;border-radius:12px;display:flex;gap:12px;justify-content:space-between;margin:0 12px 12px;padding:12px}.recover-candidate div{display:grid;gap:4px}.recover-candidate b{color:#4b4438;font-size:12px}.recover-candidate small{color:#7b7160;font-size:10px}.recover-candidate button{background:#4a5053;border:0;border-radius:8px;color:#fff;cursor:pointer;font-size:11px;padding:9px 11px;white-space:nowrap}

/* 人物與作品結構：霧銀淺色元件 */
.entity-row{background:rgba(252,252,250,.92);border-color:#d1d5d5;color:#2b3032;box-shadow:0 7px 22px rgba(48,53,55,.035)}
.entity-row:hover{background:#fff;border-color:#b8a47e;box-shadow:0 10px 26px rgba(48,53,55,.07)}
.entity-row-title strong{color:#2b3032}.entity-row-title small{background:#e7e9e9;color:#656c6f}.entity-row p{color:#70777a}.entity-row>b{color:#75623e}
.mode-switch{background:#e5e7e7;border-color:#ccd0d1}.mode-switch button{color:#687073}.mode-switch button.active{background:#fdfdfb;box-shadow:0 2px 8px rgba(47,52,54,.08);color:#2f3436}
.chapter-preview{border-top-color:#d5d8d8}.chapter-preview-row{background:#f5f6f5;border-color:#d2d5d5}.preview-heading span{color:#747b7e}
.chapter-row{background:#f7f8f7;border-color:#d8dbdb;color:#303538}.chapter-row[open]{background:#fff;border-color:#b9bec0}.chapter-row summary p,.chapter-row summary>span{color:#747b7e}.chapter-edit-form{border-top-color:#d9dcdc}
.field-help{color:#7a8083;font-size:11px;font-weight:400;line-height:1.55}
.danger-zone{border-color:#d0d4d4}.danger-zone p{color:#737a7d}.danger-zone button,.chapter-edit-form .chapter-delete-action{background:#f3f4f3;border-color:#bfc4c5;color:#4e5558}.danger-zone button:hover,.chapter-edit-form .chapter-delete-action:hover{background:#e2e5e5}
.confirm-dialog{border-color:#bfc4c5}.confirm-delete-action{background:#454b4e;border-color:#62696c}.confirm-delete-action:hover{background:#2f3437}

/* 工作台側欄與人物清單：固定可視範圍 */
.workspace{align-items:start;grid-template-columns:clamp(214px,18vw,264px) minmax(0,1fr)}
.workspace-sidebar{height:100dvh;min-width:0;overflow-y:auto;position:sticky;top:0}
.workspace-content{min-width:0}
.workspace-navigation{display:grid;gap:20px}
.workspace-nav-section{display:grid;gap:5px}
.workspace-nav-section>p,.workspace-nav-label{color:#7d8385;font-size:10px;font-weight:700;letter-spacing:.12em;margin:0 12px 5px;text-transform:uppercase}
.workspace-sidebar nav a{padding:10px 12px}
.workspace-signout{border-top:1px solid rgba(108,115,117,.22);margin-top:auto;padding-top:18px}
.workspace-signout .workspace-nav-label{display:block;margin-bottom:7px}
.workspace-signout .admin-nav-link{font-size:16px}
.workspace-signout button{align-items:center;display:flex;font-size:16px;gap:8px;text-align:left}
@media (max-width: 1200px){.workspace{grid-template-columns:220px minmax(0,1fr)}.workspace-content{padding:44px 36px}}
.codex-entity-panel{min-width:0}
.entity-groups{max-height:min(720px,calc(100dvh - 300px));min-height:360px;overflow-y:auto;overscroll-behavior:contain;padding-right:8px;scrollbar-color:#aeb4b6 transparent;scrollbar-width:thin}
.entity-groups::-webkit-scrollbar{width:8px}.entity-groups::-webkit-scrollbar-thumb{background:#b4babc;border:2px solid transparent;border-radius:999px;background-clip:padding-box}
.dashboard-actions{align-items:center;display:flex;gap:12px}.dashboard-actions .primary-button{margin-top:25px}.secondary-button{background:#f7f7f5;border:1px solid #cbd0d1;border-radius:10px;color:#474d50;display:inline-block;font-weight:700;margin-top:25px;padding:12px 17px;text-decoration:none}.secondary-button:hover{background:#e7e9e9}.recycle-confirmation{align-items:flex-start;color:#555d60;display:flex;font-size:13px;gap:9px;line-height:1.5;margin-top:18px}.recycle-confirmation input{accent-color:#4b5154;margin-top:3px}.recycle-bin-panel{max-width:900px}.recycle-bin-intro{margin-bottom:32px}.recycle-bin-intro h1{color:#292d2f;font-family:Georgia,"Noto Serif TC",serif;font-size:clamp(32px,4vw,48px);font-weight:500;letter-spacing:-.04em;margin:10px 0}.recycle-bin-intro>p:last-child{color:#737a7d;line-height:1.7;max-width:680px}.recycle-list{display:grid;gap:14px}.recycle-item{align-items:center;background:#fafaf8;border:1px solid #d3d7d7;border-radius:15px;display:flex;gap:24px;justify-content:space-between;padding:21px 23px}.recycle-item h2{color:#303639;font-family:Georgia,"Noto Serif TC",serif;font-size:21px;font-weight:500;margin:0 0 7px}.recycle-item p{color:#72787b;font-size:14px;margin:0 0 12px}.recycle-item small{color:#8a7249;font-size:12px}.recycle-actions{display:flex;flex:0 0 auto;gap:9px}.permanent-delete-button{background:#784a50;border:1px solid #9e6b71;border-radius:9px;color:#fff;cursor:pointer;font-weight:700;padding:10px 14px}.permanent-delete-button:hover{background:#643b40}.permanent-delete-button:disabled{cursor:not-allowed;opacity:.5}.recycle-empty{min-height:150px;text-align:left}.permanent-delete-dialog .dialog-field{color:#4f5659;display:grid;font-size:13px;font-weight:700;gap:7px;margin-top:20px}.permanent-delete-dialog .dialog-field input{border:1px solid #cbd0d1;border-radius:8px;color:#292d2f;padding:11px}.workspace-nav-section a[href="/recycle-bin"]{color:#8a7249}
.chapter-structure-board{min-width:0;padding:0}.chapter-structure-board>header{align-items:flex-start;border-bottom:1px solid #d7dada;display:flex;justify-content:space-between;padding:25px 27px}.chapter-structure-board h2{color:#292d2f;font-family:Georgia,"Noto Serif TC",serif;font-size:26px;font-weight:500;margin:7px 0}.chapter-structure-board>header p:last-child{color:#737a7d;font-size:13px;line-height:1.6;max-width:580px}.chapter-structure-board>header>span{background:#e7e9e9;border-radius:999px;color:#666e71;font-size:12px;padding:7px 10px;white-space:nowrap}.chapter-board-body{display:grid;grid-template-columns:minmax(205px,29%) minmax(0,1fr);min-height:590px}.chapter-board-list{background:#f3f4f3;border-right:1px solid #d7dada;max-height:calc(100dvh - 285px);min-height:590px;overflow-y:auto;padding:12px}.chapter-board-list button{background:transparent;border:1px solid transparent;border-radius:10px;color:#454c4f;cursor:pointer;display:grid;gap:4px;margin-bottom:5px;padding:11px;text-align:left;width:100%}.chapter-board-list button:hover{background:#fafaf8;border-color:#d6d9d9}.chapter-board-list button.active{background:#fffefb;border-color:#baa576;box-shadow:0 3px 10px rgba(70,74,75,.06)}.chapter-board-list small{color:#8a7249;font-size:10px}.chapter-board-list strong{font-size:13px;font-weight:700;line-height:1.45}.chapter-board-editor{display:grid;align-content:start;gap:17px;padding:28px}.chapter-board-editor label{color:#555c5f;display:grid;font-size:12px;font-weight:700;gap:7px}.chapter-board-editor input,.chapter-board-editor textarea{background:#fcfcfa;border:1px solid #cbd0d1;border-radius:10px;color:#292d2f;font:inherit;padding:12px}.chapter-board-editor textarea{line-height:1.7;min-height:260px;resize:vertical}.chapter-board-meta{border-bottom:1px solid #e0e2e1;color:#7a8083;display:flex;font-size:11px;justify-content:space-between;padding-bottom:14px}.chapter-board-actions{align-items:center;display:flex;gap:10px}.chapter-board-actions .secondary-action{padding:10px 14px;text-decoration:none}.chapter-board-actions>span{flex:1 1}.chapter-board-actions .chapter-delete-action{background:#f4f5f4;border:1px solid #c5c9ca;border-radius:9px;color:#555c5f;cursor:pointer;font-weight:700;padding:10px 14px}.structure-empty{min-height:240px;padding:28px}.structure-empty h2{color:#303639;font-family:Georgia,"Noto Serif TC",serif;font-size:25px;font-weight:500}.structure-empty p{color:#737a7d;line-height:1.7;margin-top:10px}.batch-ready{background:#f4f5f3;border:1px solid #d1d5d5;border-radius:12px;display:grid;gap:10px;padding:16px}.batch-ready strong{color:#303639;font-size:14px}.batch-ready p{color:#626a6d;font-size:12px;line-height:1.6}.batch-ready small{color:#7a8083;font-size:11px;line-height:1.55}.batch-ready .primary-action{margin-top:3px}
@media(max-width:980px){.entity-groups{max-height:none;min-height:0;overflow:visible;padding-right:0}}
@media(max-width:760px){.workspace{display:block;height:auto;overflow:visible}.workspace-sidebar{display:none}.mobile-workspace-nav .workspace-navigation{display:flex;gap:8px;margin-top:14px;overflow-x:auto}.mobile-workspace-nav .workspace-nav-section{display:contents}.mobile-workspace-nav .workspace-nav-section>p{display:none}.mobile-workspace-nav .workspace-navigation a{white-space:nowrap}.workspace-content{height:auto;min-width:0;overflow:visible}.recycle-item{align-items:flex-start;flex-direction:column}.recycle-actions{width:100%}.dashboard-actions,.recycle-actions{align-items:stretch;flex-direction:column}.dashboard-actions .primary-button,.secondary-button{margin-top:8px;text-align:center}.chapter-structure-board>header{gap:14px;padding:20px}.chapter-board-body{display:block}.chapter-board-list{border-bottom:1px solid #d7dada;border-right:0;display:flex;max-height:none;min-height:0;overflow-x:auto;padding:10px}.chapter-board-list button{flex:0 0 180px;margin:0 6px 0 0}.chapter-board-editor{padding:20px}.chapter-board-editor textarea{min-height:190px}.chapter-board-actions{align-items:stretch;flex-wrap:wrap}.chapter-board-actions>span{display:none}.chapter-board-actions .secondary-action{width:100%}}
.edit-title-icon{color:#b0a89a;font-size:24px;margin-left:10px;text-decoration:none;vertical-align:middle}.edit-title-icon:hover{color:#75623e}
.ai-operations-intro{margin-bottom:14px}.ai-operations-intro b{color:#303538;font-size:14px}.ai-operations-intro p{color:#747b7e;font-size:12px;line-height:1.6;margin-top:4px}.ai-operations-empty{color:#747b7e;font-size:13px}.ai-operations-list{display:grid;gap:10px}.ai-operation-row{background:#f7f8f7;border:1px solid #cfd3d3;border-radius:12px;padding:13px 15px}.ai-operation-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.ai-operation-meta>span{color:#6f7679;font-size:11px}.ai-operation-instruction{color:#303538;font-size:13px;line-height:1.6;margin-top:9px;white-space:pre-wrap}.ai-op-status{border-radius:999px;font-size:10px;font-weight:700;padding:3px 8px}.ai-op-status.accepted{background:#dfe9dc;color:#456044}.ai-op-status.rejected{background:#e7e7e7;color:#6b7175}.ai-op-status.candidate{background:#f6ecd7;color:#6b4f28}
.manuscript-model-current{align-items:center;color:#656c6f;display:flex;font-size:11px;gap:6px;white-space:nowrap}.manuscript-model-current b{color:#34393c}.manuscript-model-current small{color:#8f9598;font-size:10px}
.manuscript-model-selects-three{gap:8px}.manuscript-model-field{align-items:center;color:#656c6f;display:flex;font-size:10px;font-weight:700;gap:4px;white-space:nowrap}.manuscript-model-field select{background:#f8f9f8;border:1px solid #c4c9ca;border-radius:7px;color:#292d2f;font:inherit;font-size:10px;max-width:160px;min-height:28px;padding:3px 5px}
.memory-hub{display:grid;gap:20px}.memory-hub-section{padding:24px}.memory-hub-section .muted{margin-top:4px}.memory-hub-summaries{display:grid;gap:12px}.memory-hub-summary{background:#f7f8f7;border:1px solid #cfd3d3;border-radius:12px;padding:15px 17px}.memory-hub-summary header{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.memory-hub-summary header strong{color:#303538}.memory-hub-summary header small{color:#747b7e;font-size:11px}.memory-hub-summary p{color:#444a4d;font-size:13px;line-height:1.7;margin:10px 0 12px;white-space:pre-wrap}.memory-hub-tag{background:#e5e7e7;border-radius:999px;color:#596064;font-size:10px;font-weight:700;padding:3px 8px}.memory-hub-chapters{display:grid;gap:8px}.memory-hub-chapter{background:#f7f8f7;border:1px solid #cfd3d3;border-radius:10px;padding:10px 14px}.memory-hub-chapter summary{color:#303538;cursor:pointer;font-size:13px;font-weight:700}.memory-hub-chapter-body{margin-top:10px;color:#444a4d;font-size:13px;line-height:1.7}.memory-hub-chapter-body b{display:block;color:#676052;font-size:12px;margin-top:10px}.memory-hub-chapter-body ul{margin:4px 0 0 18px}.memory-hub-chapter-body small{color:#8f9598;display:block;font-size:11px;margin-top:12px}.memory-hub-proposals{display:grid;gap:10px}.memory-hub-proposal{background:#f7f8f7;border:1px solid #cfd3d3;border-radius:12px;padding:14px 16px}.memory-hub-proposal header{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.memory-hub-proposal header strong{color:#303538}.memory-hub-proposal header small{color:#747b7e;font-size:11px}.memory-hub-proposal p{color:#444a4d;font-size:13px;line-height:1.7;margin:9px 0 11px}.memory-hub-issues{display:grid;gap:10px}.memory-hub-issue{background:#f7f8f7;border:1px solid #cfd3d3;border-radius:12px;padding:14px 16px}.memory-hub-issue header{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.memory-hub-issue header strong{color:#303538}.memory-hub-issue header small{color:#747b7e;font-size:11px}.memory-hub-issue p{color:#444a4d;font-size:13px;line-height:1.7;margin:9px 0 11px}.memory-hub-status{border-radius:999px;font-size:10px;font-weight:700;padding:3px 8px}.memory-hub-status.open{background:#f3e7cd;color:#6b4f28}.memory-hub-status.resolved{background:#dfe9dc;color:#456044}.memory-hub-status.ignored{background:#e7e7e7;color:#6b7175}.memory-hub-issue-actions{display:flex;gap:8px}
.chapter-length-form{align-items:center;background:#f3f4f3;border:1px solid #d2d5d5;border-radius:12px;display:flex;flex-wrap:wrap;gap:8px;margin:16px 27px 18px;padding:10px 12px}.chapter-length-form label{color:#555c5f;display:flex;font-size:11px;font-weight:700;gap:5px;align-items:center}.chapter-length-form label small{color:#7b8184;font-size:10px;font-weight:400}.chapter-length-form input{background:#fcfcfa;border:1px solid #cbd0d1;border-radius:8px;color:#292d2f;font:inherit;font-size:12px;min-height:30px;padding:4px 8px;width:96px}.chapter-length-form .primary-action{font-size:11px;min-height:30px;padding:0 12px}.chapter-length-form .form-message{font-size:11px;margin:0;width:100%}.chapter-length-title{color:#555c5f;font-size:12px;font-weight:700}.chapter-length-dash{color:#7b8184}.chapter-length-form input::-webkit-outer-spin-button,.chapter-length-form input::-webkit-inner-spin-button,.pricing-input::-webkit-outer-spin-button,.pricing-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.chapter-length-form input[type="number"],.pricing-input[type="number"]{appearance:textfield}
.manuscript-tab-content label:first-child textarea{min-height:min(440px,52vh)}
.version-preview-inline{flex:1 1;min-height:0}.version-preview-textarea{flex:1 1;min-height:calc(100dvh - 280px)}
.version-row>button:first-child{min-height:64px;padding:14px 16px}
.pricing-input{background:#fff;border:1px solid #c9cdce;border-radius:7px;color:#272b2d;font:inherit;font-size:12px;min-height:30px;padding:4px 8px;width:100%}.pricing-input:focus{border-color:#8e9598;outline:none}.pricing-no-url{color:#a7acae}.pricing-remove{background:transparent;border:0;color:#6b7175;cursor:pointer;font-size:13px;padding:4px 6px}.pricing-remove:hover{color:#2f3437}.pricing-actions{display:flex;gap:10px;margin-top:14px}.pricing-actions .primary-action,.pricing-actions .secondary-action{margin-top:0;min-height:38px;padding:0 14px}
.novel-guide-dialog{max-width:680px;width:calc(100% - 40px)}.novel-guide-content{background:#f8f9f8;border:1px solid #d0d3d3;border-radius:10px;color:#292d2f;font-size:13px;line-height:1.75;margin-top:14px;max-height:60vh;overflow:auto;padding:14px 16px;white-space:pre-wrap;word-break:break-word}
@media (max-height: 850px) { .auth-page { padding: 20px 16px; } .auth-card { padding: 28px 36px 24px; } .auth-card h1 { font-size: 30px; margin-top: 10px; } .auth-intro { margin: 8px auto 18px; } .auth-divider { margin-bottom: 16px; } .auth-form { gap: 12px; } .auth-form input { min-height: 42px; } .auth-submit { min-height: 44px; } }
.project-card-cover{aspect-ratio:16/9;background:linear-gradient(135deg,#3c4144,#25292c);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;overflow:hidden}.project-card-cover img{height:100%;object-fit:cover;width:100%}.project-card-cover-default{color:#d9c79e;font-size:34px}
.cover-uploader{align-items:flex-start;display:flex;gap:14px;margin-top:6px}.cover-preview{align-items:center;background:linear-gradient(135deg,#3c4144,#25292c);border:1px solid #cbd0d1;border-radius:12px;display:flex;height:150px;justify-content:center;overflow:hidden;width:110px}.cover-preview img{height:100%;object-fit:cover;width:100%}.cover-preview-default{color:#d9c79e;font-size:30px}.cover-uploader-actions{display:grid;gap:8px}.cover-uploader-actions .secondary-action{margin-top:0;min-height:38px;padding:0 14px}
.manuscript-tabs-actions{margin-left:auto;display:flex;gap:4px}.manuscript-tabs-actions button{background:transparent;border:1px solid #d0d3d3;border-radius:7px;color:#6f7679;cursor:pointer;font-size:11px;font-weight:700;padding:6px 10px}.manuscript-tabs-actions button:hover:not(:disabled){color:#34393c;border-color:#aeb4b6}.manuscript-tabs-actions button:disabled{opacity:.45;cursor:not-allowed}
.manuscript-editor{font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums}


/* Canvas collaboration controls */
.canvas-mode-switch { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin: 10px 0 4px; }
.canvas-mode-switch button { border: 1px solid var(--border, #d8d4cc); background: transparent; color: inherit; border-radius: 8px; padding: 7px 8px; cursor: pointer; font-size: 12px; }
.canvas-mode-switch button.active { background: var(--accent, #315c47); border-color: var(--accent, #315c47); color: #fff; }
.ai-message.streaming { border-left: 3px solid var(--accent, #315c47); }


.inspiration-page { max-width: 920px; margin: 0 auto; padding: 42px 28px 70px; }
.inspiration-head { display:flex; gap:24px; align-items:start; justify-content:space-between; margin-bottom:18px; }
.inspiration-head h1 { margin:4px 0 8px; } .inspiration-head p { max-width:620px; color:#69706b; }
.inspiration-message { padding:11px 14px; border-radius:9px; background:#eff6f1; color:#315c47; }
.inspiration-preferences { align-items:start; border-bottom:1px solid #e6e3dc; border-top:1px solid #e6e3dc; display:grid; gap:12px; grid-template-columns:150px minmax(0,1fr); padding:14px 0; }
.inspiration-preference-label { display:grid; gap:4px; } .inspiration-preference-label small { color:#7b817c; font-size:11px; }
.inspiration-tag-picker { align-items:center; display:flex; flex-wrap:wrap; gap:7px; } .inspiration-tag-picker button { background:#fffefa; border:1px solid #d8d4cc; border-radius:999px; color:#526256; cursor:pointer; font-size:12px; padding:6px 10px; transition:background .15s,border-color .15s,color .15s; } .inspiration-tag-picker button.wanted { background:#e7f0ff; border-color:#4e86da; color:#245ea8; } .inspiration-tag-picker input { background:#fffefa; border:1px dashed #b4b7af; border-radius:999px; font-size:12px; height:28px; min-height:28px; min-width:142px; padding:5px 10px; width:auto; }
.inspiration-adult-toggle { align-items:center; color:#505852; cursor:pointer; display:flex; font-size:12px; gap:8px; grid-column:2; }
.inspiration-adult-toggle input { block-size:1px; clip:rect(0 0 0 0); inline-size:1px; margin:-1px; overflow:hidden; position:absolute; white-space:nowrap; }
.inspiration-adult-toggle span { background:#d8d4cc; border-radius:999px; height:18px; position:relative; transition:.18s ease; width:32px; }
.inspiration-adult-toggle span::after { background:#fff; border-radius:50%; box-shadow:0 1px 3px rgba(35,39,34,.22); content:""; height:14px; left:2px; position:absolute; top:2px; transition:.18s ease; width:14px; }
.inspiration-adult-toggle input:checked + span { background:#315c47; } .inspiration-adult-toggle input:checked + span::after { transform:translateX(14px); } .inspiration-adult-toggle input:focus-visible + span { outline:3px solid rgba(49,92,71,.24); outline-offset:2px; }
.inspiration-save-preferences { align-self:start; background:#fffefa; border:1px solid #809486; border-radius:8px; color:#315c47; cursor:pointer; font-weight:700; min-height:36px; padding:7px 11px; } .inspiration-save-preferences:hover { background:#eff6f1; }
.inspiration-filters { display:flex; flex-wrap:wrap; gap:7px; margin:18px 0; } .inspiration-filters button { border:1px solid #d8d4cc; border-radius:999px; background:#fffefa; padding:6px 12px; cursor:pointer; } .inspiration-filters .active { background:#315c47; color:#fff; border-color:#315c47; }
.inspiration-feed { display:grid; gap:12px; } .inspiration-card { background:#fffefa; border:1px solid #e3dfd6; border-radius:12px; padding:18px 20px; box-shadow:0 3px 12px rgba(35,39,34,.04); }
.inspiration-meta, .inspiration-tags { display:flex; flex-wrap:wrap; gap:6px; } .inspiration-meta span { font-size:11px; color:#67736c; } .inspiration-meta span+span:before { content:"·"; margin-right:6px; color:#aaa; } .inspiration-card h2 { align-items:baseline; display:flex; flex-wrap:wrap; gap:9px; margin:8px 0 6px; font-size:18px; } .inspiration-card h2 small { color:#65756b; font-size:13px; font-weight:500; } .inspiration-summary { margin:0 0 10px; color:#414842; line-height:1.6; } .inspiration-tags span { border-radius:99px; background:#eef2ec; color:#526256; padding:3px 8px; font-size:12px; }
.inspiration-card details { margin-top:12px; border-top:1px solid #eeeae2; padding-top:10px; } .inspiration-card summary { cursor:pointer; color:#315c47; } .inspiration-card dl { margin:12px 0 2px; } .inspiration-card dt { font-size:12px; color:#758078; margin-top:10px; } .inspiration-card dd { margin:3px 0; line-height:1.65; } .inspiration-card footer { display:flex; gap:9px; align-items:center; margin-top:14px; } .inspiration-card footer span { flex:1 1; } .inspiration-card footer button { border:0; background:transparent; color:#526256; cursor:pointer; } .inspiration-card footer a { font-size:12px; color:#315c47; } .inspiration-empty { color:#69706b; padding:30px 0; }
@media (max-width:760px) { .inspiration-page { padding:25px 16px; } .inspiration-head { display:block; } .inspiration-head .primary-button { margin-top:10px; } .inspiration-preferences { grid-template-columns:1fr; } .inspiration-adult-toggle { grid-column:auto; } .inspiration-save-preferences { justify-self:start; } }

