.novel-login-page{display:grid;min-height:100vh;place-items:center;padding:32px 20px;background-color:#111318;background-position:center;background-repeat:no-repeat;background-size:cover}.novel-login-panel{width:min(100%,420px);padding:38px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow-card)}.novel-login-header{text-align:center}.novel-login-mark{display:grid;width:64px;height:64px;margin:0 auto 18px;place-items:center;overflow:hidden;border-radius:14px;background:var(--ink)}.novel-login-mark img{display:block;width:100%;height:100%;object-fit:cover}.novel-login-header p{margin:0 0 8px;color:var(--muted);font-size:12px}.novel-login-header h1{margin:0;font-size:24px;font-weight:650}.novel-login-header span{display:block;margin-top:10px;color:var(--muted);font-size:13px}.novel-login-error{display:flex;gap:8px;align-items:flex-start;margin-top:24px;padding:10px 12px;color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 30%,var(--paper));background:color-mix(in srgb,var(--danger) 6%,var(--paper));font-size:13px}.novel-login-form{display:grid;gap:17px;margin-top:28px}.novel-login-form label{display:grid;gap:7px}.novel-login-form label>span{color:var(--ink-soft);font-size:13px;font-weight:600}.novel-login-input{display:flex;gap:9px;align-items:center;min-height:42px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--muted);transition:border-color .2s ease}.novel-login-input:focus-within{border-color:var(--ink)}.novel-login-input input{width:100%;min-width:0;border:0;outline:0;background:transparent;font-size:14px}.novel-login-input input:focus,.novel-login-input input:focus-visible{border:0;outline:0;outline-offset:0;box-shadow:none}.novel-login-captcha-row{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:10px}.novel-login-captcha{display:grid;min-height:42px;place-items:center;overflow:hidden;padding:0;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);cursor:pointer}.novel-login-captcha img{display:block;width:100%;height:42px;object-fit:cover}.novel-login-remember{display:inline-flex!important;width:fit-content;flex-direction:row;gap:8px!important;align-items:center;color:var(--muted);font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none}.novel-login-remember input{width:15px;height:15px;margin:0;accent-color:var(--ink);cursor:pointer}.novel-login-remember span{color:inherit!important;font-size:inherit!important;font-weight:500!important}.novel-login-submit{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:44px;margin-top:8px;border:0;border-radius:var(--radius);color:var(--paper);background:var(--ink);cursor:pointer;font-weight:650;transition:background .2s ease}.novel-login-submit:hover{background:var(--ink-soft)}.novel-login-wallpaper-control{position:relative;margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}.novel-login-wallpaper-trigger{display:flex;width:100%;gap:7px;align-items:center;padding:0;border:0;color:var(--muted);background:transparent;cursor:pointer;font-size:12px;text-align:left}.novel-login-wallpaper-trigger:hover{color:var(--ink)}.novel-login-wallpaper-trigger small{margin-left:auto;color:inherit;font-size:11px}.novel-login-wallpaper-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.novel-login-wallpaper-option{position:relative;display:grid;gap:5px;min-width:0;padding:0 0 5px;overflow:hidden;border:1px solid var(--line);border-radius:5px;color:var(--muted);background:var(--surface);cursor:pointer;font-size:10px;text-align:left;transition:border-color .2s ease,color .2s ease}.novel-login-wallpaper-option:hover,.novel-login-wallpaper-option.active{border-color:var(--ink);color:var(--ink)}.novel-login-wallpaper-option img{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover}.novel-login-wallpaper-option>span{overflow:hidden;padding:0 6px;text-overflow:ellipsis;white-space:nowrap}.novel-login-wallpaper-option i{position:absolute;top:5px;right:5px;display:grid;width:20px;height:20px;place-items:center;border-radius:50%;color:var(--paper);background:var(--ink)}.novel-login-spin{animation:novel-login-spin .9s linear infinite}.session-expired-dialog{width:min(460px,calc(100vw - 32px))}.session-expired-header{display:flex;gap:12px;align-items:flex-start}.session-expired-icon{display:inline-grid;flex:0 0 auto;width:34px;height:34px;place-items:center;border-radius:50%;color:var(--amber);background:color-mix(in srgb,var(--amber) 14%,var(--surface))}.session-expired-header .dialog-title{margin-top:1px}.session-expired-header .dialog-description{margin-top:7px}.session-expired-actions{justify-content:flex-end;margin-top:24px}.session-expired-actions .primary-button{display:inline-flex;gap:6px;align-items:center}@keyframes novel-login-spin{to{transform:rotate(360deg)}}@media(max-width:480px){.novel-login-panel{padding:28px 22px}.novel-login-wallpaper-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.relative{position:relative}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{color-scheme:light;--paper:#fff;--surface:#f8f9fa;--sidebar-bg:#f1f3f5;--ink:#212529;--ink-soft:#495057;--muted:#868e96;--line:#e9ecef;--line-strong:#dee2e6;--fill:#f1f3f5;--primary:#4263eb;--primary-hover:#364fc7;--primary-rgb:66, 99, 235;--app-background:#fff;--chapter-font-size:16px;--chapter-line-height:2;--chapter-content-width:860px;--chapter-font-family:var(--font-body);--accent:#f59f00;--success:#37b24d;--danger:#f03e3e;--vermilion:#c04a2e;--moss:#4a6840;--amber:#f59f00;--sidebar-width:204px;--topbar-height:62px;--topbar-inline-padding:22px;--sidebar-padding-block:16px;--sidebar-padding-inline:14px;--layout-page-inline:54px;--radius:8px;--shadow-sm:0 1px 2px #0000000a;--shadow-card:0 2px 8px #00000014;--shadow-lift:0 4px 16px #0000001f;--font-display:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", sans-serif;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", sans-serif;font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility}:root[data-theme-mode=dark]{color-scheme:dark;--paper:#1b1e23;--surface:#24282f;--sidebar-bg:#20242a;--ink:#f4f5f6;--ink-soft:#d2d6db;--muted:#9aa2ac;--line:#353b44;--line-strong:#4a525d;--fill:#2c3139;--accent:#fcc419;--success:#51cf66;--danger:#ff6b6b;--shadow-sm:0 1px 2px #00000038;--shadow-card:0 4px 14px #0000003d;--shadow-lift:0 10px 28px #00000052}:root[data-layout-size=small]{--sidebar-width:184px;--topbar-height:56px;--topbar-inline-padding:16px;--sidebar-padding-block:12px;--sidebar-padding-inline:10px;--layout-page-inline:36px}:root[data-layout-size=medium]{--sidebar-width:204px;--topbar-height:62px;--topbar-inline-padding:22px;--sidebar-padding-block:16px;--sidebar-padding-inline:14px;--layout-page-inline:54px}:root[data-layout-size=large]{--sidebar-width:236px;--topbar-height:72px;--topbar-inline-padding:30px;--sidebar-padding-block:20px;--sidebar-padding-inline:20px;--layout-page-inline:72px}*{box-sizing:border-box;letter-spacing:0}html,body,#app{min-width:320px;min-height:100%;margin:0}body{min-height:100vh;color:var(--ink);background:var(--app-background)}button,input,textarea,select{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--ink);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.45}.app-shell{background:var(--app-background);min-height:100vh}.app-topbar{z-index:40;height:var(--topbar-height);padding:0 var(--topbar-inline-padding);border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:24px;display:flex;position:fixed;inset:0 0 auto}@supports (color:color-mix(in lab,red,red)){.app-topbar{background:color-mix(in srgb,var(--paper) 88%,transparent)}}.app-topbar{-webkit-backdrop-filter:blur(20px)saturate(135%);backdrop-filter:blur(20px)saturate(135%);-webkit-user-select:none;user-select:none}.topbar-wordmark{color:var(--ink);font-family:var(--font-display);align-items:center;gap:8px;font-size:20px;font-weight:600;text-decoration:none;display:inline-flex}.topbar-wordmark img{object-fit:cover;border-radius:7px;flex:none;width:28px;height:28px}.topbar-controls,.page-topbar-actions,.page-topbar-action-group{align-items:center;display:flex}.topbar-controls{gap:12px;min-width:0}.page-topbar-actions:empty{display:none}.page-topbar-action-group{border-right:1px solid var(--line);gap:8px;padding-right:12px}.page-topbar-action-group:has(>.resource-topbar-actions){padding-left:10px}.topbar-action-button{background:var(--paper);white-space:nowrap;min-height:34px;padding:0 11px}.resource-topbar-actions{align-items:center;gap:7px;display:flex}.resource-topbar-search{border:1px solid var(--line);background:var(--paper);width:190px;min-height:32px;color:var(--muted);border-radius:6px;align-items:center;gap:6px;padding:0 9px;transition:border-color .2s,color .2s;display:flex}.resource-topbar-search:focus-within{border-color:rgba(var(--primary-rgb),.45);color:var(--ink-soft)}.resource-topbar-search input{background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font-size:10px}.resource-topbar-create{border:1px solid var(--primary);background:var(--primary);min-height:32px;color:var(--paper);white-space:nowrap;cursor:pointer;border-radius:6px;align-items:center;gap:5px;padding:0 9px;font-size:10px;font-weight:700;transition:background-color .2s,border-color .2s;display:inline-flex}.resource-topbar-create:hover{border-color:var(--primary-hover);background:var(--primary-hover)}.topbar-ai-trigger{border:1px solid var(--line);background:var(--paper);width:34px;height:34px;color:var(--muted);cursor:pointer;border-radius:7px;place-items:center;transition:color .2s,border-color .2s,background-color .2s;display:inline-grid}.topbar-ai-trigger:hover,.topbar-ai-trigger.active{border-color:rgba(var(--primary-rgb),.35);background:rgba(var(--primary-rgb),.06);color:var(--primary-hover)}.topbar-settings-trigger{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;padding:0;display:inline-grid}.topbar-settings-trigger:hover,.topbar-settings-trigger.active{background:var(--fill);color:var(--ink)}.topbar-model-selector{border:1px solid var(--line);background:var(--paper);min-width:0;max-width:176px;min-height:34px;color:var(--muted);cursor:pointer;border-radius:7px;align-items:center;gap:6px;margin-right:2px;padding:0 10px;display:inline-flex}.topbar-model-selector>i{background:var(--success);border-radius:50%;flex:none;width:6px;height:6px}.topbar-model-selector>i.custom{background:var(--amber)}.topbar-model-selector>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;font-weight:700;overflow:hidden}.topbar-model-selector>svg{flex:none;transition:transform .2s}.topbar-model-selector.active>svg{transform:rotate(180deg)}.topbar-model-selector:hover,.topbar-model-selector.active{border-color:rgba(var(--primary-rgb),.35);color:var(--ink)}.global-ai-window{z-index:80;top:calc(var(--topbar-height) + 16px);width:min(400px,100vw - 32px);height:min(560px,calc(100dvh - var(--topbar-height) - 32px));border:1px solid var(--line);background:var(--paper);border-radius:9px;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding:14px;display:grid;position:fixed;right:22px}@supports (color:color-mix(in lab,red,red)){.global-ai-window{background:color-mix(in srgb,var(--paper) 96%,transparent)}}.global-ai-window{box-shadow:var(--shadow-lift)}.global-ai-window.minimized{align-items:center;width:238px;height:auto;padding:10px 12px;display:flex}.global-ai-window-header,.global-ai-window-controls{align-items:center;display:flex}.global-ai-window-header{justify-content:space-between;gap:12px}.global-ai-window-header>div:first-child{gap:3px;min-width:0;display:grid}.global-ai-window-header span{color:var(--ink);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.global-ai-window-header small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:700;overflow:hidden}.global-ai-window-controls{flex:none;gap:2px}.global-ai-window-controls button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.global-ai-window-controls button:hover{background:var(--fill);color:var(--ink)}.global-ai-message-list{align-content:start;gap:8px;min-height:0;padding:2px 3px 2px 0;display:grid;overflow-y:auto}.global-ai-latest-button{z-index:3;border:1px solid rgba(var(--primary-rgb),.26);background:var(--paper);min-height:28px;color:var(--primary-hover);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:14px;align-items:center;gap:4px;padding:0 10px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;bottom:84px;right:50%;transform:translate(50%)}.global-ai-latest-button:hover{border-color:var(--primary);background:rgba(var(--primary-rgb),.06)}.global-ai-message-group{width:fit-content;max-width:calc(100% - 28px);display:grid}.global-ai-message-group.user{justify-self:end}.global-ai-message{border-radius:7px;align-self:start;gap:6px;max-width:100%;padding:10px 11px;font-size:11px;line-height:1.65;display:grid}.global-ai-message p{white-space:pre-wrap;margin:0}.global-ai-message-label{color:var(--muted);align-items:center;gap:4px;font-size:9px;font-weight:700;display:inline-flex}.global-ai-markdown{overflow-wrap:anywhere;max-width:100%;font-size:11px;line-height:1.7}.global-ai-markdown p{white-space:normal;margin:0 0 8px}.global-ai-markdown p:last-child{margin-bottom:0}.global-ai-markdown h1,.global-ai-markdown h2,.global-ai-markdown h3,.global-ai-markdown h4,.global-ai-markdown h5,.global-ai-markdown h6{margin:12px 0 6px;font-size:1.05em;line-height:1.45}.global-ai-markdown h1:first-child,.global-ai-markdown h2:first-child,.global-ai-markdown h3:first-child{margin-top:0}.global-ai-markdown ul,.global-ai-markdown ol{margin:7px 0 9px;padding-left:20px}.global-ai-markdown blockquote{background:#0000000a;border-left:2px solid;margin:8px 0;padding:5px 8px}.global-ai-markdown pre{border:1px solid var(--line);background:var(--fill);white-space:pre;border-radius:4px;max-width:100%;margin:8px 0;padding:8px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:10px;line-height:1.55;overflow-x:auto}.global-ai-markdown code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.global-ai-markdown :not(pre)>code{border:1px solid var(--line);background:var(--fill);border-radius:3px;padding:1px 3px}.global-ai-markdown a{color:var(--primary-hover)}.global-ai-thinking{border-left:2px solid rgba(var(--primary-rgb),.35);margin-bottom:8px}.global-ai-thinking>button{width:100%;min-height:23px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 0 0 7px;font-size:9px;font-weight:700;display:flex}.global-ai-thinking>button small{color:var(--primary);font-size:8px}.global-ai-thinking>button svg{margin-left:auto;transition:transform .2s}.global-ai-thinking>button[aria-expanded=true] svg{transform:rotate(180deg)}.global-ai-thinking-content{border:1px solid var(--line);background:var(--fill);color:var(--muted);margin:3px 0 0 7px;padding:6px 8px;font-size:10px}.global-ai-message-state,.global-ai-message-error{font-size:9px;line-height:1.45}.global-ai-message-error{color:#9f3e31}.global-ai-message-editor{gap:6px;display:grid}.global-ai-message-editor textarea{resize:vertical;border:1px solid var(--line-strong);background:var(--paper);width:100%;min-height:70px;color:var(--ink-soft);font:inherit;border-radius:5px;outline:0;padding:7px 8px;line-height:1.5}.global-ai-message-editor footer,.global-ai-message-footer{justify-content:space-between;align-items:center;gap:6px;min-height:22px;margin-top:5px;display:flex}.global-ai-message-editor footer{justify-content:flex-end}.global-ai-message-editor button,.global-ai-message-footer button{min-height:22px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:3px;padding:0 5px;font-size:9px;display:inline-flex}.global-ai-message-editor button:last-child{color:var(--primary)}.global-ai-message-footer{min-height:0;max-height:0;color:var(--muted);opacity:0;pointer-events:none;visibility:hidden;margin-top:0;font-size:8px;transition:max-height .16s,margin-top .16s,opacity .16s,visibility .16s;overflow:hidden}.global-ai-message-group:hover .global-ai-message-footer,.global-ai-message-group:focus-within .global-ai-message-footer{opacity:1;pointer-events:auto;visibility:visible;min-height:22px;max-height:36px;margin-top:5px}.global-ai-message-group.user .global-ai-message-footer{justify-content:flex-end}.global-ai-message-actions{align-items:center;gap:2px;display:inline-flex}.global-ai-message-actions button:hover:not(:disabled),.global-ai-message-editor button:hover:not(:disabled){background:var(--fill);color:var(--ink)}.global-ai-message-group.user .global-ai-message-actions button{color:#ffffffb8}.global-ai-message-actions button.danger:hover:not(:disabled),.global-ai-confirm button.danger:hover{color:var(--danger)}.global-ai-message-actions button:disabled,.global-ai-message-editor button:disabled{cursor:not-allowed;opacity:.45}.global-ai-suggestions{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.global-ai-suggestions button{border:1px solid var(--line);background:var(--paper);min-height:23px;color:var(--ink-soft);cursor:pointer;border-radius:12px;padding:0 7px;font-size:9px}.global-ai-suggestions button:hover{border-color:rgba(var(--primary-rgb),.45);color:var(--primary)}.global-ai-confirm{z-index:2;border:1px solid var(--line-strong);background:var(--paper);border-radius:6px;gap:8px;padding:10px;display:grid;position:absolute;bottom:84px;left:14px;right:14px;box-shadow:0 8px 20px #2125291f}.global-ai-confirm strong{color:var(--ink);font-size:10px}.global-ai-confirm p{color:var(--muted);margin:3px 0 0;font-size:9px}.global-ai-confirm footer{justify-content:flex-end;gap:5px;display:flex}.global-ai-confirm footer button{border:1px solid var(--line);background:var(--paper);min-height:24px;color:var(--ink-soft);cursor:pointer;border-radius:4px;padding:0 8px;font-size:9px}.global-ai-confirm footer button.danger{color:#9f3e31;border-color:#9f3e3140}.global-ai-message-attachments,.writing-message-attachments{flex-wrap:wrap;gap:6px;display:flex}.global-ai-attachment,.writing-attachment{border-radius:5px;overflow:hidden}.global-ai-attachment.image,.writing-attachment.image{background:#ffffff1a;border:1px solid #ffffff3d;width:88px;margin:0;display:grid}.global-ai-attachment.image img,.writing-attachment.image img{object-fit:cover;width:100%;height:58px}.global-ai-attachment figcaption,.writing-attachment figcaption{text-overflow:ellipsis;white-space:nowrap;padding:3px 5px;overflow:hidden}.global-ai-attachment figcaption{font-size:8px}.writing-attachment figcaption{font-size:var(--writing-font-caption)}.global-ai-attachment.file,.writing-attachment.file{min-width:132px;max-width:100%;color:inherit;border:1px solid;align-items:center;gap:6px;padding:6px;text-decoration:none;display:inline-flex}.global-ai-attachment.file{font-size:9px}.writing-attachment.file{font-size:var(--writing-font-small)}.global-ai-attachment.file>span,.writing-attachment.file>span{gap:1px;min-width:0;display:grid}.global-ai-attachment.file strong,.writing-attachment.file strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.global-ai-attachment.file strong{font-size:9px}.writing-attachment.file strong{font-size:var(--writing-font-small)}.global-ai-attachment.file small,.writing-attachment.file small{opacity:.7}.global-ai-attachment.file small{font-size:8px}.writing-attachment.file small{font-size:var(--writing-font-caption)}.global-ai-message.assistant{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft)}.global-ai-message.assistant .global-ai-attachment.image,.writing-message.assistant .writing-attachment.image{border-color:var(--line-strong);background:var(--paper)}.global-ai-message.assistant>span{color:var(--muted);align-items:center;gap:4px;font-size:9px;font-weight:700;display:inline-flex}.global-ai-message.user{background:var(--ink);color:var(--paper);justify-self:end}.global-ai-context-divider{color:var(--muted);align-items:center;gap:8px;font-size:9px;font-weight:700;display:flex}.global-ai-context-divider:before,.global-ai-context-divider:after{background:var(--line);content:"";flex:1;height:1px}.global-ai-composer{border-top:1px solid var(--line);gap:8px;padding-top:10px;display:grid}.global-ai-error{color:#9f3e31;margin:0;font-size:10px;line-height:1.45}.global-ai-composer textarea{resize:none;border:1px solid var(--line-strong);background:var(--paper);width:100%;min-height:58px;color:var(--ink-soft);border-radius:7px;outline:0;padding:9px 10px;font-size:11px;line-height:1.55}.global-ai-composer textarea:focus{border-color:rgba(var(--primary-rgb),.55);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.09)}.global-ai-pending-attachments,.writing-pending-attachments{scrollbar-width:thin;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.global-ai-pending-attachment,.writing-pending-attachment{border:1px solid var(--line);background:var(--surface);min-width:142px;color:var(--muted);border-radius:6px;grid-template-columns:28px minmax(0,1fr) 20px;align-items:center;gap:6px;padding:5px;display:grid}.global-ai-pending-attachment>img,.writing-pending-attachment>img{object-fit:cover;border-radius:4px;width:28px;height:28px}.global-ai-pending-attachment>span,.writing-pending-attachment>span{gap:1px;min-width:0;display:grid}.global-ai-pending-attachment strong,.writing-pending-attachment strong{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.global-ai-pending-attachment strong{font-size:9px}.writing-pending-attachment strong{font-size:var(--writing-font-small)}.global-ai-pending-attachment small,.writing-pending-attachment small{color:var(--muted)}.global-ai-pending-attachment small{font-size:8px}.writing-pending-attachment small{font-size:var(--writing-font-caption)}.global-ai-pending-attachment button,.writing-pending-attachment button{width:20px;height:20px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.global-ai-pending-attachment button:hover,.writing-pending-attachment button:hover{background:var(--fill);color:var(--ink)}.global-ai-composer-actions,.global-ai-composer-actions>div{align-items:center;display:flex}.global-ai-composer-actions{justify-content:space-between;gap:8px}.global-ai-composer-actions>div{gap:3px}.global-ai-tool-button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.global-ai-tool-button:hover{background:var(--fill);color:var(--primary-hover)}.global-ai-send-button{background:var(--ink);width:38px;height:38px;color:var(--paper);cursor:pointer;border:0;border-radius:7px;flex:none;place-items:center;padding:0;display:grid}.global-ai-send-button:hover:not(:disabled){background:var(--primary-hover)}.file-input-hidden{display:none}.global-settings-window{z-index:81;top:calc(var(--topbar-height) + 16px);width:min(348px,100vw - 32px);max-height:calc(100dvh - var(--topbar-height) - 32px);border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-lift);border-radius:9px;gap:20px;padding:16px;display:grid;position:fixed;right:22px;overflow-y:auto}.global-settings-header,.settings-autosave-control>header,.settings-font-control>header,.settings-color-control>header,.global-settings-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.global-settings-header>div{gap:4px;display:grid}.global-settings-header strong{font-size:13px}.global-settings-header span,.settings-autosave-control>header span,.settings-font-control header,.settings-color-control header{color:var(--muted);font-size:10px;font-weight:700}.global-settings-header>button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.global-settings-header>button:hover{background:var(--fill);color:var(--ink)}.settings-group-title{border-bottom:1px solid var(--line);color:var(--ink-soft);padding-bottom:7px;font-size:11px;font-weight:700}.settings-autosave-control{gap:14px;display:grid}.settings-autosave-control>header>div{gap:3px;display:grid}.settings-autosave-control>header strong{color:var(--ink-soft);font-size:11px}.settings-switch{border:1px solid var(--line-strong);background:var(--fill);cursor:pointer;border-radius:10px;outline:0;flex:none;width:36px;height:20px;padding:0;transition:background-color .2s,border-color .2s;position:relative}.settings-switch i{background:var(--paper);border-radius:50%;width:14px;height:14px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #21252933}.settings-switch.active{border-color:var(--primary);background:var(--primary)}.settings-switch.active i{transform:translate(16px)}.settings-switch:focus-visible{box-shadow:0 0 0 3px rgba(var(--primary-rgb),.14)}.settings-font-control,.settings-color-control{gap:10px;display:grid}.settings-font-control output{color:var(--ink-soft);font-size:11px;font-weight:700}.settings-font-control input[type=range]{width:100%;accent-color:var(--primary)}.settings-font-control>div{color:var(--muted);justify-content:space-between;align-items:baseline;display:flex}.settings-font-control>div small:last-child{font-size:14px}.settings-swatch-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.settings-swatch-grid--backgrounds{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-density-control{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.settings-density-control button{border:1px solid var(--line);min-height:34px;color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;padding:0 8px;font-size:11px;font-weight:700}.settings-density-control button:hover,.settings-density-control button.active{border-color:rgba(var(--primary-rgb),.3);background:rgba(var(--primary-rgb),.06);color:var(--primary-hover)}.settings-swatch-grid button{min-height:58px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-items:center;gap:5px;padding:7px 4px;font-size:9px;font-weight:700;display:grid}.settings-swatch-grid button:hover,.settings-swatch-grid button.active{border-color:var(--line-strong);background:var(--surface);color:var(--ink)}.settings-swatch-grid button.active{border-color:var(--primary)}.settings-swatch-grid i{border:1px solid #21252929;border-radius:50%;width:24px;height:24px;display:block;box-shadow:inset 0 1px #ffffffb3}.global-settings-footer{padding-top:2px}.global-settings-footer button{min-height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0 7px;font-size:10px;font-weight:700;display:inline-flex}.global-settings-footer button:hover{color:var(--ink)}.global-settings-layer{z-index:81;pointer-events:auto;position:fixed;inset:0}.global-settings-window.settings-main-panel,.settings-secondary-window{box-sizing:border-box;border:1px solid var(--line-strong);background:var(--paper);box-shadow:var(--shadow-lift);pointer-events:auto;border-radius:8px;gap:16px;display:grid;position:fixed}.global-settings-window.settings-main-panel{z-index:0;top:calc(var(--topbar-height) + 14px);width:min(276px,100vw - 32px);max-height:calc(100dvh - var(--topbar-height) - 28px);padding:15px;right:22px;overflow-y:auto}.settings-main-header,.settings-secondary-header,.settings-main-footer,.settings-layout-control>header,.settings-detail-control>header,.settings-autosave-control--compact>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.settings-main-header>div,.settings-secondary-header>div,.settings-main-header span,.settings-secondary-header span,.settings-section-menu button>span{gap:3px;min-width:0;display:grid}.settings-main-header strong,.settings-secondary-header strong{color:var(--ink);font-size:13px;font-weight:700}.settings-main-header span,.settings-secondary-header small,.settings-section-menu small,.settings-autosave-control--compact>header span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;overflow:hidden}.settings-main-header>button,.settings-secondary-header>button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.settings-main-header>button:hover,.settings-secondary-header>button:hover{background:var(--fill);color:var(--ink)}.settings-section-menu{gap:6px;display:grid}.settings-section-menu button{border:1px solid var(--line);min-height:58px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;transition:color .2s,border-color .2s,background-color .2s;display:grid}.settings-section-menu button>span>strong{color:var(--ink-soft);font-size:12px;font-weight:700}.settings-section-menu button:hover,.settings-section-menu button.active{border-color:rgba(var(--primary-rgb),.5);background:rgba(var(--primary-rgb),.08);color:var(--primary)}.settings-section-menu button.active>span>strong{color:var(--primary-hover)}.settings-section-menu button.active>svg:last-child{transform:rotate(90deg)}.settings-layout-control,.settings-autosave-control--compact{border-top:1px solid var(--line);gap:10px;padding-top:14px;display:grid}.settings-layout-control>header,.settings-detail-control>header{color:var(--ink-soft);justify-content:flex-start;font-size:11px;font-weight:700}.settings-layout-control>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.settings-layout-control button{border:1px solid var(--line);min-height:47px;color:var(--muted);cursor:pointer;background:0 0;border-radius:5px;align-content:center;gap:2px;padding:4px;display:grid}.settings-layout-control button strong{color:inherit;font-size:13px}.settings-layout-control button small{font-size:9px}.settings-layout-control button:hover,.settings-layout-control button.active{border-color:var(--primary);background:rgba(var(--primary-rgb),.08);color:var(--primary-hover)}.settings-autosave-control--compact>header>div{gap:3px;display:grid}.settings-autosave-control--compact>header strong{color:var(--ink-soft);font-size:11px}.settings-inline-range{color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;font-size:10px;display:grid}.settings-inline-range input,.settings-detail-control input[type=range]{width:100%;accent-color:var(--primary)}.settings-main-footer{justify-content:flex-start;padding-top:2px}.settings-main-footer button{min-height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:10px;font-weight:700;display:inline-flex}.settings-main-footer button:hover{color:var(--ink)}.settings-secondary-window{top:calc(var(--topbar-height) + 14px);width:min(368px,100vw - 336px);max-height:calc(100dvh - var(--topbar-height) - 28px);padding:16px;right:min(310px,100vw - 48px);overflow-y:auto}.settings-secondary-header{border-bottom:1px solid var(--line);padding-bottom:13px}.settings-secondary-header>div{color:var(--primary);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px}.settings-detail-control{gap:9px;display:grid}.settings-detail-control>header{justify-content:space-between}.settings-detail-control output{color:var(--ink-soft);font-size:11px;font-weight:700}.settings-range-scale{color:var(--muted);justify-content:space-between;align-items:baseline;display:flex}.settings-range-scale small:last-child{font-size:14px}.settings-segmented-control,.settings-mode-control{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.settings-segmented-control button,.settings-mode-control button{border:1px solid var(--line);min-height:34px;color:var(--muted);cursor:pointer;background:0 0;border-radius:5px;justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.settings-segmented-control button:hover,.settings-segmented-control button.active,.settings-mode-control button:hover,.settings-mode-control button.active{border-color:var(--primary);background:rgba(var(--primary-rgb),.08);color:var(--primary-hover)}.settings-palette-grid,.settings-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.settings-theme-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-palette-grid button,.settings-theme-grid button{border:1px solid var(--line);min-height:54px;color:var(--muted);cursor:pointer;background:0 0;border-radius:5px;justify-items:center;gap:5px;padding:7px 4px;font-size:9px;font-weight:700;display:grid;position:relative}.settings-palette-grid button:hover,.settings-palette-grid button.active,.settings-theme-grid button:hover,.settings-theme-grid button.active{border-color:var(--primary);color:var(--ink)}.settings-palette-grid i,.settings-theme-grid i{border:1px solid #21252933;border-radius:50%;width:23px;height:23px;display:block}.settings-palette-grid button>svg,.settings-theme-grid button>svg{color:var(--primary-hover);position:absolute;top:4px;right:4px}.settings-secondary-enter-active,.settings-secondary-leave-active{transition:opacity .2s,transform .2s}.settings-secondary-enter-from,.settings-secondary-leave-to{opacity:0;transform:translate(8px)}@media(max-width:760px){.global-settings-window.settings-main-panel{top:calc(var(--topbar-height) + 10px);width:min(276px,100vw - 32px);right:16px}.settings-secondary-window{z-index:1;top:calc(var(--topbar-height) + 10px);width:auto;max-height:calc(100dvh - var(--topbar-height) - 20px);background:var(--paper);left:16px;right:16px}}.global-model-window{z-index:82;width:min(320px,100vw - 24px);max-height:min(560px,var(--reka-popover-content-available-height));background:var(--paper);transform-origin:var(--reka-popover-content-transform-origin);border:1px solid #2125291f;border-radius:7px;outline:0;gap:12px;padding:12px;animation:.16s model-dropdown-in;display:grid;overflow-y:auto}.global-model-header,.model-choice-section>header,.custom-model-form footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.global-model-header strong{font-size:12px}.global-model-header>div{gap:2px;display:grid}.global-model-header small{color:var(--muted);font-size:9px;font-weight:500}.model-refresh-button{border:1px solid var(--line);background:var(--paper);width:28px;height:28px;color:var(--muted);cursor:pointer;border-radius:4px;place-items:center;transition:border-color .2s,color .2s,background-color .2s;display:inline-grid}.model-refresh-button:hover{border-color:var(--line-strong);background:var(--fill);color:var(--ink)}.model-refresh-button .spinning{animation:.85s linear infinite model-refresh-spin}.model-choice-section>header{color:var(--muted);font-size:10px;font-weight:700}.model-choice-section{gap:5px;display:grid}.model-choice-section>header{justify-content:flex-start;gap:6px;min-height:24px;padding:0 4px}.custom-model-section>header{justify-content:space-between}.custom-model-section>header>button{min-height:27px;color:var(--primary-hover);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0 6px;font-size:10px;font-weight:700;display:inline-flex}.model-choice-list{gap:2px;display:grid}.model-choice-list>button,.custom-model-choice>button:first-child{min-height:48px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:space-between;align-items:center;gap:12px;padding:7px 8px;transition:background-color .2s,color .2s;display:flex}.model-choice-list>button>div,.custom-model-choice>button:first-child>div{gap:4px;min-width:0;display:grid}.model-choice-list strong,.model-choice-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.model-choice-list strong{color:var(--ink-soft);font-size:11px;font-weight:700}.model-choice-list small{color:var(--muted);font-size:9px}.model-choice-list em{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-style:normal;line-height:1.25;overflow:hidden}.model-choice-list>button>svg,.custom-model-choice>button:first-child>svg{color:var(--primary);flex:none}.model-choice-list>button:hover,.model-choice-list>button.active,.custom-model-choice>button:first-child:hover,.custom-model-choice>button:first-child.active{background:var(--fill)}.model-choice-list>button:hover strong,.model-choice-list>button.active strong,.custom-model-choice>button:first-child:hover strong,.custom-model-choice>button:first-child.active strong{color:var(--primary-hover)}.custom-model-choice{position:relative}.custom-model-choice>button:first-child{width:100%;padding-right:38px}.custom-model-remove{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;display:inline-grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.custom-model-remove:hover{color:var(--danger);background:#f03e3e14}.model-choice-list>button.unavailable{opacity:.58}.model-load-error{color:var(--danger);background:#f03e3e0d;border:1px solid #f03e3e33;border-radius:4px;margin:0;padding:8px 10px;font-size:10px;line-height:1.5}@keyframes model-refresh-spin{to{transform:rotate(360deg)}}.model-custom-empty{color:var(--muted);margin:0;padding:8px 4px;font-size:10px}@keyframes model-dropdown-in{0%{opacity:0;transform:translateY(-4px)scale(.99)}}.custom-model-form{gap:10px;padding-top:4px;display:grid}.custom-model-form label{color:var(--muted);gap:5px;font-size:10px;font-weight:700;display:grid}.custom-model-form input{border:1px solid var(--line-strong);background:var(--paper);width:100%;min-height:36px;color:var(--ink-soft);border-radius:6px;outline:0;padding:7px 9px;font-size:11px}.custom-model-form input:focus{border-color:rgba(var(--primary-rgb),.55);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.09)}.custom-model-token-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.custom-model-form footer{justify-content:flex-end;padding-top:2px}.custom-model-form .primary-button,.custom-model-form .text-button{min-height:32px;padding:0 9px;font-size:10px}.topbar-account{align-items:center;gap:10px;display:flex}.topbar-account-menu{position:relative}.topbar-account-trigger{min-height:38px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:3px 5px 3px 4px;transition:border-color .2s,background-color .2s;display:inline-flex}.topbar-account-trigger:hover,.topbar-account-trigger.active{border-color:var(--line);background:var(--surface)}.topbar-account-trigger>strong{text-overflow:ellipsis;white-space:nowrap;max-width:132px;font-size:12px;overflow:hidden}.topbar-account-trigger>svg{color:var(--muted);flex:none;transition:transform .2s,color .2s}.topbar-account-trigger:hover>svg,.topbar-account-trigger.active>svg{color:var(--ink-soft)}.topbar-account-trigger>svg.expanded{transform:rotate(180deg)}.topbar-account-panel{z-index:70;border:1px solid var(--line);background:var(--paper);width:min(292px,100vw - 28px);box-shadow:var(--shadow-lift);transform-origin:100% 0;border-radius:9px;padding:12px;position:absolute;top:calc(100% + 9px);right:0}.topbar-account-panel-header,.topbar-account-panel-identity,.topbar-account-panel-actions{align-items:center;display:flex}.topbar-account-panel-header{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:2px 1px 12px}.topbar-account-panel-identity{gap:9px;min-width:0}.topbar-account-panel-identity>div{gap:3px;min-width:0;display:grid}.topbar-account-panel-identity strong,.topbar-account-panel-identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar-account-panel-identity strong{font-size:12px}.topbar-account-panel-identity small{color:var(--muted);font-size:10px}.topbar-account-panel-avatar{border:1px solid var(--line-strong);background:var(--surface);width:40px;height:40px;color:var(--muted);border-radius:50%;flex:none;place-items:center;display:grid;overflow:hidden}.topbar-account-panel-avatar img{object-fit:cover;width:100%;height:100%;display:block}.topbar-account-panel-status{color:var(--muted);white-space:nowrap;flex:none;align-items:center;gap:5px;font-size:9px;font-weight:700;display:inline-flex}.topbar-account-panel-status i{background:var(--success);border-radius:50%;width:6px;height:6px}.topbar-account-panel-details{gap:9px;margin:0;padding:12px 1px;display:grid}.topbar-account-panel-details>div{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.topbar-account-panel-details dt,.topbar-account-panel-details dd{margin:0;font-size:10px}.topbar-account-panel-details dt{color:var(--muted);flex:none;align-items:center;gap:6px;display:inline-flex}.topbar-account-panel-details dd{min-width:0;color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar-account-panel-actions{border-top:1px solid var(--line);gap:7px;padding-top:10px}.topbar-account-panel-profile,.topbar-account-panel-logout{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:6px;flex:1 1 0;justify-content:center;align-items:center;gap:6px;min-height:33px;padding:0 8px;font-size:10px;font-weight:700;text-decoration:none;transition:border-color .2s,background-color .2s,color .2s;display:inline-flex}.topbar-account-panel-profile{color:var(--ink-soft)}.topbar-account-panel-profile:hover{border-color:var(--line-strong);background:var(--surface);color:var(--ink)}.topbar-account-panel-logout{color:var(--danger);border-color:#f03e3e2e}.topbar-account-panel-logout:hover{background:#f03e3e0f;border-color:#f03e3e59}.account-panel-enter-active,.account-panel-leave-active{transition:opacity .16s,transform .16s}.account-panel-enter-from,.account-panel-leave-to{opacity:0;transform:translateY(-7px)scale(.98)}.topbar-account>strong{font-size:12px}.topbar-account-profile{min-width:0;color:var(--ink);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.topbar-account-profile:hover .avatar{border-color:var(--ink-soft)}.topbar-account-profile>strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.topbar-status{border:1px solid var(--line);min-height:28px;color:var(--muted);border-radius:14px;align-items:center;gap:7px;margin-right:4px;padding:0 10px;font-size:10px;font-weight:700;display:inline-flex}.topbar-status i{background:var(--success);border-radius:50%;width:6px;height:6px}.topbar-account .icon-button{width:34px;height:34px}.sidebar{inset:var(--topbar-height) auto 0 0;z-index:20;width:var(--sidebar-width);padding:var(--sidebar-padding-block) var(--sidebar-padding-inline);border-right:1px solid var(--line);background:var(--sidebar-bg);color:var(--ink);-webkit-user-select:none;user-select:none;flex-direction:column;transition:width .2s,padding .2s;display:flex;position:fixed}.app-shell.sidebar-collapsed{--sidebar-width:66px}.sidebar.collapsed{padding-left:10px;padding-right:10px}.primary-nav{flex:1;align-content:start;gap:4px;padding-top:6px;display:grid}.nav-item{border-radius:var(--radius);min-height:44px;color:var(--muted);border:1px solid #0000;align-items:center;gap:11px;padding:0 13px;font-size:14px;font-weight:600;text-decoration:none;transition:color .2s,border-color .2s,background-color .2s,transform .1s ease-out;display:flex;position:relative}.nav-item:hover,.nav-item.router-link-exact-active,.nav-item.nav-item--active{border-color:var(--line-strong);color:var(--ink);background:var(--surface)}.nav-item.router-link-exact-active:before,.nav-item.nav-item--active:before{background:var(--primary);content:"";border-radius:2px;width:2px;position:absolute;top:11px;bottom:11px;left:-1px}.nav-item:active{transform:scale(.98)}.sidebar.collapsed .nav-item{justify-content:center;padding:0}.sidebar.collapsed .nav-item>span{display:none}.sidebar-collapse-toggle{border:1px solid var(--line);width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border-radius:7px;align-self:center;place-items:center;padding:0;display:grid}.sidebar-collapse-toggle:hover{border-color:var(--line-strong);background:var(--surface);color:var(--ink)}.sidebar-footer{border-top:1px solid var(--line);align-items:center;gap:10px;padding:15px 6px 0;display:flex}.account{align-items:center;gap:9px;min-width:0;display:flex}.account>span:last-child{min-width:0;display:grid}.account strong,.account small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account strong{font-size:13px}.account small{color:var(--muted);font-size:11px}.avatar{border:1px solid var(--line-strong);border-radius:50%;flex:none;place-items:center;width:32px;min-width:32px;max-width:32px;height:32px;min-height:32px;max-height:32px;line-height:0;display:grid;overflow:hidden}.avatar img{border-radius:inherit;object-fit:cover;object-position:center;width:30px;min-width:30px;max-width:30px;height:30px;min-height:30px;max-height:30px;display:block}.icon-button{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;background:0 0;flex:none;place-items:center;width:36px;height:36px;padding:0;transition:color .2s,border-color .2s,background-color .2s;display:inline-grid}.sidebar .icon-button{border-color:var(--line);color:var(--muted)}.icon-button:hover{border-color:var(--ink);color:var(--ink);background:var(--fill)}.sidebar .icon-button:hover{border-color:var(--line-strong);color:var(--ink);background:var(--fill)}.mobile-header{display:none}.mobile-library-link{border-radius:var(--radius);min-height:38px;color:var(--ink);align-items:center;gap:8px;padding:0 10px;font-size:13px;text-decoration:none;transition:background-color .2s,transform .1s ease-out;display:inline-flex}.mobile-library-link:hover{background:#2c24200f}.mobile-library-link:active{transform:scale(.97)}.main-canvas{min-height:100vh;margin-left:var(--sidebar-width);padding-top:var(--topbar-height);background:var(--app-background)}.library-page{width:min(1280px,100%);margin:0 auto;padding:54px 54px 80px}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:28px;display:flex}.eyebrow{color:var(--muted);margin:0 0 12px;font-size:11px;font-weight:700}.page-header h1{font-family:var(--font-display);margin:0;font-size:40px;font-weight:600;line-height:1.1}.primary-button,.text-button{border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 15px;font-size:13px;font-weight:700;transition:color .2s,border-color .2s,background-color .2s;display:inline-flex}.primary-button{background:var(--primary);color:#fff;border:none}.primary-button:hover{background:var(--primary-hover)}.text-button{border:1px solid var(--line);color:var(--ink-soft);background:0 0}.text-button:hover{border-color:var(--line-strong);color:var(--ink)}.danger-button{border-radius:var(--radius);background:var(--danger);color:#fff;cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 15px;font-size:13px;font-weight:700;transition:background-color .2s;display:inline-flex}.danger-button:hover{background:#d9312f}.library-topbar-actions{align-items:center;gap:7px;display:flex}.library-total{color:var(--muted);white-space:nowrap;margin:0;font-size:11px}.library-total strong{color:var(--ink);font-weight:700}.library-topbar-select{color:var(--muted);align-items:center;gap:5px;font-size:10px;font-weight:700;display:flex}.library-topbar-select select{border:1px solid var(--line);background:var(--surface);min-height:32px;color:var(--ink-soft);cursor:pointer;border-radius:6px;outline:0;padding:0 22px 0 7px;font-size:11px;font-weight:700}.library-topbar-select select:hover,.library-topbar-select select:focus{border-color:var(--line-strong)}.search-field{min-width:240px;color:var(--muted);align-items:center;gap:9px;display:flex}.search-field input{background:0 0;border:0;outline:0;width:100%;padding:8px 0;font-size:13px}.search-field input::placeholder{color:#969991}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;display:grid}.work-cover-link{width:112px;color:inherit;align-self:start;text-decoration:none;display:block}.work-cover-link .cover{transition:transform .2s,border-color .2s}.work-cover-link:hover .cover{box-shadow:var(--shadow-lift);transform:translateY(-3px)}.work-card{grid-template-columns:112px minmax(0,1fr);gap:22px;min-width:0;margin-bottom:32px;padding:30px 0;display:grid}.cover{aspect-ratio:3/4;border-radius:var(--radius);color:#f4eee6;width:112px;box-shadow:var(--shadow-card);background:#302a24;border:1px solid #312b26;flex-direction:column;justify-content:space-between;padding:15px 12px 11px;display:flex;position:relative;overflow:hidden}.cover:after{content:"";opacity:.22;border:1px solid;position:absolute;inset:8px}.cover>*{z-index:1;position:relative}.cover span{font-family:var(--font-display);align-self:center;padding-top:30px;font-size:38px}.cover small{font-size:7px;font-weight:700}.cover--moss{background:var(--moss);border-color:#355244}.cover--vermilion{background:var(--vermilion);border-color:#8f2e23}.cover>img{z-index:0;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.novel-cover-picker{align-items:center;gap:16px;min-width:0;display:flex}.novel-cover-picker-button{border-radius:var(--radius);cursor:pointer;background:0 0;border:0;flex:none;padding:0;position:relative}.novel-cover-picker-button:disabled{cursor:wait}.novel-cover-picker-button .cover{width:104px;box-shadow:var(--shadow-card);margin:0;transition:transform .2s,box-shadow .2s}.novel-cover-picker--compact .cover{width:112px}.work-detail-cover-wrap{align-content:start;gap:8px;width:112px;display:grid}.work-cover-upload-error{color:var(--danger,#b42318);margin:0;font-size:10px;line-height:1.45}.novel-cover-picker-button:not(:disabled):hover .cover{box-shadow:var(--shadow-lift);transform:translateY(-2px)}.novel-cover-picker-button .cover>img{position:absolute}.novel-cover-picker-overlay{z-index:2;color:#fff;opacity:0;background:#181512b8;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:10px;transition:opacity .2s;display:flex;position:absolute;inset:0}.novel-cover-picker-button:hover .novel-cover-picker-overlay,.novel-cover-picker-button:focus-visible .novel-cover-picker-overlay,.novel-cover-picker-button:disabled .novel-cover-picker-overlay,.novel-cover-picker-button .cover:not(.has-image) .novel-cover-picker-overlay{opacity:1}.novel-cover-picker-overlay strong{font-size:10px;font-weight:700}.novel-cover-picker-spinner{animation:.9s linear infinite cover-picker-spin}@keyframes cover-picker-spin{to{transform:rotate(360deg)}}.novel-cover-picker-copy{gap:5px;min-width:0;display:grid}.novel-cover-picker-copy strong{color:var(--ink);font-size:12px}.novel-cover-picker-copy small{max-width:220px;color:var(--muted);font-size:10px;line-height:1.5}.work-card-copy{flex-direction:column;justify-content:space-between;min-width:0;display:flex}.work-card-topline{justify-content:space-between;align-items:center;gap:10px;min-height:28px;display:flex}.work-card-actions{align-items:center;gap:6px;display:flex}.work-card-topline .icon-button{width:28px;height:28px;color:var(--muted)}.work-card-topline .icon-button:hover{color:var(--ink)}.work-meta,.word-count,.work-summary{margin:0}.work-meta{color:var(--muted);font-size:11px}.work-classification{color:var(--muted);align-items:center;gap:10px;margin:8px 0 0;font-size:10px;display:flex}.work-status{color:var(--ink-soft);align-items:center;gap:5px;font-weight:700;display:inline-flex}.work-status:before{background:var(--line-strong);content:"";border-radius:50%;width:6px;height:6px}.work-status--writing:before{background:var(--moss)}.work-status--paused:before{background:#969991}.work-status--completed:before{background:var(--vermilion)}.work-card h2{overflow-wrap:anywhere;font-family:var(--font-display);margin:10px 0 8px;font-size:22px;font-weight:600;line-height:1.3}.work-card h2 a{color:inherit;text-decoration:none}.work-card h2 a:hover{color:var(--vermilion)}.work-summary{color:var(--ink-soft);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13px;line-height:1.7;display:-webkit-box;overflow:hidden}.word-count{color:var(--ink);font-family:var(--font-display);font-size:18px}.word-count span{color:var(--muted);font-family:var(--font-body);font-size:10px}.work-progress{gap:7px;padding-top:16px;display:grid}.work-progress>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.work-progress>div>span,.work-progress>p{color:var(--muted);font-size:9px;font-weight:700}.work-progress>p{margin:0}.work-progress-track{background:var(--fill);width:100%;height:3px;display:block;overflow:hidden}.work-progress-track>span{background:var(--accent);height:100%;transition:width .2s;display:block}.work-detail-page{width:min(1680px,100%);margin:0 auto;padding:42px 54px 80px}.back-link{color:var(--muted);align-items:center;gap:7px;margin-bottom:28px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--ink)}.work-topbar-navigation{align-items:center;gap:12px;min-width:0;max-width:100%;display:flex}.work-topbar-back{min-height:32px;color:var(--muted);flex:none;align-items:center;gap:6px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.work-topbar-back:hover{color:var(--ink)}.work-topbar-tabs{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);-webkit-backdrop-filter:blur(16px)saturate(125%);backdrop-filter:blur(16px)saturate(125%);scrollbar-width:none;align-items:center;gap:4px;min-width:0;max-width:min(500px,42vw);padding:3px;display:flex;overflow-x:auto}.work-topbar-tabs-wrap{min-width:0;max-width:min(500px,42vw);position:relative}.work-topbar-tabs-wrap .work-topbar-tabs{max-width:100%}.work-topbar-tabs::-webkit-scrollbar{display:none}.work-topbar-tabs a{color:#696c67;text-align:center;border-radius:4px;flex:none;min-width:56px;padding:7px 11px;font-size:11px;font-weight:700;text-decoration:none}.work-topbar-tabs a:hover{color:var(--ink);background:var(--fill)}.work-topbar-tabs a.router-link-exact-active{background:var(--primary);color:#fff}.work-topbar-asset-trigger{color:#696c67;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;gap:4px;min-width:56px;padding:7px 11px;font-size:11px;font-weight:700;display:inline-flex}.work-topbar-asset-trigger:hover{color:var(--ink);background:var(--fill)}.work-topbar-asset-trigger.active{background:var(--primary);color:#fff}.work-topbar-asset-trigger svg{transition:transform .2s}.work-topbar-asset-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.work-topbar-timeline-wrap{flex:none;position:relative}.work-topbar-timeline-trigger{color:#696c67;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;gap:4px;min-width:56px;padding:7px 11px;font-size:11px;font-weight:700;display:inline-flex}.work-topbar-timeline-trigger:hover,.work-topbar-timeline-trigger.active{background:var(--fill);color:var(--ink)}.work-topbar-timeline-trigger svg:last-child{transition:transform .2s}.work-topbar-timeline-trigger svg:last-child.expanded{transform:rotate(180deg)}.work-topbar-timeline-dropdown{z-index:50;border:1px solid var(--line);background:var(--paper);width:min(330px,100vw - 28px);box-shadow:var(--shadow-lift);border-radius:7px;gap:10px;padding:12px;display:grid;position:fixed;top:calc(100% + 7px)}.work-topbar-timeline-dropdown>header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.work-topbar-timeline-dropdown>header>div{gap:3px;display:grid}.work-topbar-timeline-dropdown>header strong{color:var(--ink);align-items:center;gap:5px;font-size:12px;display:inline-flex}.work-topbar-timeline-dropdown>header small,.work-topbar-timeline-events p,.work-topbar-timeline-empty{color:var(--muted);font-size:10px}.work-topbar-timeline-dropdown>header>button{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.work-topbar-timeline-dropdown>header>button:hover{color:var(--danger)}.work-topbar-timeline-events{gap:8px;max-height:min(390px,52vh);display:grid;overflow-y:auto}.work-topbar-timeline-events article{border-left:2px solid var(--line-strong);background:var(--fill);gap:4px;padding:8px 9px;display:grid}.work-topbar-timeline-events article>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.work-topbar-timeline-events time,.work-topbar-timeline-events em{color:var(--muted);font-size:9px;font-style:normal}.work-topbar-timeline-events em{align-items:center;gap:3px;display:inline-flex}.work-topbar-timeline-events em.confirmed{color:var(--moss)}.work-topbar-timeline-events em.planned{color:var(--primary)}.work-topbar-timeline-events em.rumor{color:var(--vermilion)}.work-topbar-timeline-events strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.work-topbar-timeline-events p{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.45;display:-webkit-box;overflow:hidden}.work-topbar-timeline-empty{text-align:center;margin:0;padding:10px 0}.work-topbar-timeline-more{color:var(--primary);justify-content:flex-end;align-items:center;gap:4px;font-size:10px;font-weight:700;text-decoration:none;display:inline-flex}.work-topbar-timeline-more:hover{color:var(--ink)}.work-topbar-asset-dropdown{z-index:50;border:1px solid var(--line);background:var(--paper);min-width:138px;box-shadow:var(--shadow-lift);border-radius:7px;gap:2px;padding:5px;display:grid;position:absolute;top:calc(100% + 7px);right:0}.work-topbar-asset-dropdown:before{content:"";height:7px;position:absolute;bottom:100%;left:0;right:0}.work-topbar-asset-dropdown a{min-width:0;color:var(--ink-soft);text-align:left;border-radius:4px;align-items:center;gap:8px;padding:8px 9px;font-size:11px;font-weight:700;text-decoration:none;display:flex}.work-topbar-asset-dropdown a:hover,.work-topbar-asset-dropdown a.router-link-exact-active{background:var(--fill);color:var(--ink)}.work-detail-hero{grid-template-columns:150px minmax(0,1fr);align-items:end;gap:34px;padding-bottom:34px;display:grid}.cover.work-detail-cover{width:150px}.work-detail-cover span{padding-top:42px;font-size:48px}.work-detail-heading{min-width:0;padding-bottom:2px}.work-detail-heading .eyebrow{margin-bottom:14px}.work-detail-heading .work-classification{margin-bottom:12px}.work-detail-heading h1{overflow-wrap:anywhere;font-family:var(--font-display);margin:0;font-size:42px;font-weight:600;line-height:1.15}.work-detail-summary{max-width:720px;color:var(--ink-soft);font-family:var(--font-display);margin:14px 0 0;font-size:15px;line-height:1.8}.work-continue-button{margin-top:18px}.work-stat-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(110px,.65fr)) minmax(180px,1.2fr);display:grid}.work-stat-strip>div{border-right:1px solid var(--line);align-content:center;gap:5px;min-height:82px;padding:14px 20px;display:grid}.work-stat-strip>div:first-child{padding-left:0}.work-stat-strip>div:last-child{border-right:0;padding-right:0}.work-stat-strip span{color:var(--muted);font-size:9px;font-weight:700}.work-stat-strip strong{font-family:var(--font-display);font-size:20px;font-weight:600}.work-stat-progress{grid-template-columns:1fr auto;align-items:center}.work-stat-progress .work-progress-track{grid-column:1/-1}.work-detail-content{grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr);gap:52px;padding-top:42px;display:grid}.work-detail-primary{gap:42px;min-width:0;display:grid}.recent-chapters,.work-resources,.work-foundation{min-width:0}.work-foundation-logline{color:var(--ink-soft);font-family:var(--font-display);margin:16px 0 20px;font-size:15px;line-height:1.8}.work-foundation dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:0;display:grid}.work-foundation dl>div{border-top:1px solid var(--line);min-width:0;padding:14px 0}.work-foundation dt,.work-foundation dd{margin:0}.work-foundation dt{color:var(--primary);margin-bottom:6px;font-size:10px;font-weight:700}.work-foundation dd{color:var(--ink-soft);font-size:12px;line-height:1.75}.section-heading{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:baseline;gap:18px;padding-bottom:12px;display:flex}.section-heading h2{font-family:var(--font-display);margin:0;font-size:20px;font-weight:600}.section-heading>span{color:var(--muted);font-size:11px}.chapter-list{margin:0;padding:0;list-style:none}.chapter-list li{border-bottom:1px solid var(--line);grid-template-columns:32px minmax(0,1fr) 86px;gap:14px;min-width:0;padding:18px 0;display:grid}.chapter-order{color:var(--muted);font-family:var(--font-display);padding-top:2px;font-size:11px}.chapter-copy{min-width:0}.chapter-copy p,.chapter-copy h3,.chapter-copy>span{margin:0}.chapter-copy p{color:var(--muted);font-size:9px;font-weight:700}.chapter-copy h3{overflow-wrap:anywhere;font-family:var(--font-display);margin-top:4px;font-size:16px;font-weight:600}.chapter-copy>span{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:7px;font-size:10px;line-height:1.65;display:-webkit-box;overflow:hidden}.chapter-meta{color:var(--muted);text-align:right;align-content:start;justify-items:end;gap:5px;font-size:9px;display:grid}.chapter-status{color:var(--ink-soft);align-items:center;gap:5px;font-weight:700;display:inline-flex}.chapter-status:before{background:var(--line-strong);content:"";border-radius:50%;width:5px;height:5px}.chapter-status--writing:before{background:var(--moss)}.chapter-status--completed:before{background:var(--vermilion)}.resource-list{display:grid}.resource-list a{border-bottom:1px solid var(--line);color:var(--ink-soft);grid-template-columns:28px minmax(0,1fr) 16px;align-items:start;gap:11px;padding:18px 0;text-decoration:none;transition:color .2s;display:grid}.resource-list a:hover{color:var(--vermilion)}.resource-list a>svg:first-child{margin-top:1px}.resource-list a>svg:last-child{color:var(--muted);align-self:center}.resource-list a>div{gap:4px;min-width:0;display:grid}.resource-list strong{color:var(--ink);font-size:12px}.resource-list span,.resource-list small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.resource-list small{color:var(--ink-soft);font-size:10px}.section-empty,.work-not-found{min-height:220px;color:var(--muted);place-content:center;justify-items:center;gap:12px;font-size:12px;display:grid}.work-not-found{min-height:100vh}.outline-page{width:min(1680px,100%);margin:0 auto;padding:42px 54px 80px}.outline-page-header{justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:28px;display:flex}.outline-page-header h1{font-family:var(--font-display);margin:0;font-size:40px;font-weight:600;line-height:1.1}.outline-workspace{grid-template-columns:224px minmax(0,1fr);min-height:590px;padding-top:28px;display:grid}.volume-rail{border-right:1px solid var(--line);min-width:0;padding:20px 20px 0 0}.volume-rail>header{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:0 10px 14px;font-size:10px;display:flex}.volume-rail>header strong{color:var(--ink);font-family:var(--font-display);font-weight:600}.volume-list{gap:4px;display:grid}.volume-list>button{width:100%;min-height:58px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:8px;padding:10px;transition:color .2s,border-color .2s,background-color .2s,transform .1s ease-out;display:grid}.volume-list>button:hover,.volume-list>button.active{color:var(--ink);background:var(--surface)}.volume-list>button.active{border-color:var(--line)}.volume-list>button:active{transform:scale(.98)}.volume-list>button>span{font-family:var(--font-display);padding-top:2px;font-size:10px}.volume-list>button>div{gap:5px;min-width:0;display:grid}.volume-list strong,.volume-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.volume-list strong{font-family:var(--font-display);font-size:13px;font-weight:600}.volume-list small{color:var(--muted);font-size:9px}.empty-volume-button,.empty-outline-button{border:1px dashed var(--line-strong);border-radius:var(--radius);width:100%;min-height:68px;color:var(--muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;font-size:11px;font-weight:700;display:inline-flex}.empty-volume-button:hover,.empty-outline-button:hover{border-color:var(--ink);color:var(--ink)}.volume-outline{min-width:0;padding:32px 0 0 34px}.volume-outline-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.volume-outline-header .eyebrow{margin-bottom:8px;font-size:9px}.volume-outline-header h2{overflow-wrap:anywhere;font-family:var(--font-display);margin:0;font-size:28px;font-weight:600}.volume-outline-actions{flex:none;gap:6px;display:flex}.volume-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink-soft);font-family:var(--font-display);margin:22px 0 30px;padding:18px 0;font-size:14px;line-height:1.85}.chapter-outline-section{min-width:0}.chapter-outline-heading{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:center;gap:18px;padding-bottom:12px;display:flex}.chapter-outline-heading>div{align-items:baseline;gap:9px;display:flex}.chapter-outline-heading strong{font-family:var(--font-display);font-size:17px}.chapter-outline-heading span{color:var(--muted);font-size:9px}.chapter-outline-heading .text-button{min-height:32px}.chapter-outline-list{margin:0;padding:0;list-style:none}.chapter-outline-list>li{border-bottom:1px solid var(--line);grid-template-columns:30px minmax(0,1fr) auto;gap:14px;padding:20px 0;display:grid}.chapter-outline-list>li>.icon-button{width:30px;height:30px;color:var(--muted)}.chapter-outline-copy{min-width:0}.chapter-outline-copy h3{font-family:var(--font-display);margin:0;font-size:16px;font-weight:600}.chapter-outline-copy>p{color:var(--ink-soft);margin:7px 0 0;font-size:11px;line-height:1.7}.chapter-outline-copy ul{color:var(--muted);flex-wrap:wrap;gap:6px 16px;margin:10px 0 0;padding:0;list-style:none;display:flex}.chapter-outline-copy ul li{padding-left:9px;font-size:9px;position:relative}.chapter-outline-copy ul li:before{background:var(--vermilion);content:"";border-radius:50%;width:3px;height:3px;position:absolute;top:.55em;left:0}.outline-node-note{color:var(--muted);margin-top:10px;font-size:10px;line-height:1.65;display:block}.outline-node-links{color:var(--muted);align-items:center;gap:10px;margin-top:12px;font-size:10px;display:flex}.outline-node-links .text-button,.chapter-outline-actions .text-button{min-height:26px;padding:0 7px;font-size:10px}.chapter-outline-actions{justify-content:flex-end;align-items:flex-start;gap:4px;display:flex}.chapter-outline-actions .icon-button{width:30px;height:30px;color:var(--muted)}.empty-outline-button{margin-top:18px}.outline-empty{color:var(--muted);place-content:center;justify-items:center;gap:10px;font-size:11px;display:grid}.dialog-content.outline-dialog{width:min(620px,100vw - 32px)}.dialog-content.chapter-outline-dialog{width:min(780px,100vw - 32px)}.chapters-page{width:100%;margin:0;padding:18px 20px 18px max(54px,50% - 786px)}.chapters-page-header{justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:28px;display:flex}.chapters-page-header h1{font-family:var(--font-display);margin:0;font-size:40px;font-weight:600;line-height:1.1}.chapter-workspace{height:calc(100dvh - var(--topbar-height) - 36px);grid-template-columns:270px minmax(0,1fr) var(--chapter-ai-width,420px);grid-template-rows:minmax(0,1fr);align-items:start;min-height:0;padding-top:0;display:grid;overflow:hidden}.chapter-workspace.ai-panel-closed{grid-template-columns:270px minmax(0,1fr)}.chapter-topbar-actions{align-items:center;gap:4px;display:flex;position:relative}.chapter-save-status,.chapter-topbar-button{min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:0 8px;font-size:10px;font-weight:700;display:inline-flex}.chapter-timeline-toggle.active{border-color:var(--line-strong);background:var(--surface);color:var(--ink)}.chapter-timeline-popover{z-index:86;width:min(380px,100vw - 24px);max-height:min(520px,calc(100vh - var(--topbar-height) - 24px));border:1px solid var(--line-strong);background:var(--paper);box-shadow:var(--shadow-lift);border-radius:7px;gap:10px;padding:12px;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow:auto}.chapter-timeline-popover>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:8px;display:flex}.chapter-timeline-popover>header>div{gap:3px;display:grid}.chapter-timeline-popover>header strong{color:var(--ink);align-items:center;gap:5px;font-size:12px;display:inline-flex}.chapter-timeline-popover>header small{color:var(--muted);font-size:10px}.chapter-timeline-popover>header>button{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.chapter-timeline-popover>header>button:hover{color:var(--ink)}.chapter-timeline-list{gap:8px;display:grid}.chapter-timeline-event{border:1px solid var(--line);background:var(--surface);border-radius:5px;gap:5px;padding:9px 10px;display:grid}.chapter-timeline-event>header{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:9px;display:flex}.chapter-timeline-event>header em{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:3px;padding:2px 5px;font-size:8px;font-style:normal}.chapter-timeline-event>header em.confirmed{border-color:rgba(var(--primary-rgb),.35);color:var(--primary-hover)}.chapter-timeline-event>header em.planned{color:#a66a00;border-color:#f59f0066}.chapter-timeline-event>header em.rumor{color:var(--muted);border-color:#6c757d66}.chapter-timeline-event>strong{color:var(--ink);font-size:11px;font-weight:700}.chapter-timeline-event>p,.chapter-timeline-empty{color:var(--ink-soft);margin:0;font-size:10px;line-height:1.55}.chapter-timeline-empty{color:var(--muted);text-align:center;padding:18px 8px}.chapter-save-status:hover,.chapter-topbar-button:hover{border-color:var(--line);background:var(--surface);color:var(--ink)}.chapter-rail-toggle{display:none}.chapter-save-details,.chapter-shortcuts-popover{z-index:80;top:calc(var(--topbar-height) - 2px);border:1px solid var(--line);background:var(--paper);min-width:220px;box-shadow:var(--shadow-lift);border-radius:7px;gap:5px;padding:12px;display:grid;position:fixed;right:176px}.chapter-save-details strong,.chapter-shortcuts-popover strong{color:var(--ink);font-size:12px}.chapter-save-details span,.chapter-save-details small{color:var(--muted);font-size:10px}.chapter-save-details button{border:1px solid var(--line-strong);min-height:28px;color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:5px;justify-content:center;align-items:center;gap:5px;margin-top:4px;font-size:10px;font-weight:700;display:inline-flex}.chapter-save-details button:hover{border-color:var(--primary);color:var(--primary-hover)}.chapter-shortcuts-popover{min-width:250px;right:20px}.chapter-shortcuts-popover>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:6px;display:flex}.chapter-shortcuts-popover>header button{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.chapter-shortcuts-popover dl{gap:7px;margin:4px 0 0;display:grid}.chapter-shortcuts-popover dl>div{justify-content:space-between;align-items:center;gap:20px;display:flex}.chapter-shortcuts-popover dt{color:var(--ink-soft);font-size:10px}.chapter-shortcuts-popover dd{color:var(--muted);margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px}.chapter-ai-toggle{font-weight:500}.chapter-ai-toggle:before{background:var(--success);content:"";opacity:0;border-radius:50%;flex:none;width:6px;height:6px;transition:opacity .2s,transform .2s;transform:scale(.6)}.chapter-ai-toggle.active{color:var(--ink);font-weight:700}.chapter-ai-toggle.active:before{opacity:1;transform:scale(1)}.chapter-save-status:before{background:var(--success);content:"";border-radius:50%;width:6px;height:6px}.chapter-save-status.pending:before{background:var(--amber)}.chapter-save-status.saving:before{background:var(--primary)}.chapter-rail{border-right:1px solid var(--line-strong);flex-direction:column;align-self:stretch;min-width:0;height:100%;min-height:0;padding:18px 22px 0 0;display:flex}.chapter-rail>header{justify-content:space-between;align-items:center;gap:14px;padding:0 12px 18px;display:flex}.chapter-rail-heading{gap:4px;display:grid}.chapter-rail-heading strong{color:var(--ink);font-family:var(--font-display);font-size:14px;font-weight:650}.chapter-rail-heading span{color:var(--muted);font-size:10px;font-weight:700}.chapter-rail>header>.icon-button{border-color:var(--line);background:var(--surface);width:38px;height:38px}.chapter-search{border:1px solid var(--line);background:var(--paper);color:var(--muted);border-radius:6px;align-items:center;gap:7px;margin:0 12px 14px;padding:0 9px;display:flex}.chapter-search:focus-within{border-color:rgba(var(--primary-rgb),.55);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.08)}.chapter-search input{width:100%;min-height:32px;color:var(--ink-soft);background:0 0;border:0;outline:0;padding:0;font-size:11px}.chapter-volume-group{gap:4px;display:grid}.chapter-volume-toggle{min-height:30px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 10px;display:flex}.chapter-volume-toggle:hover{color:var(--ink)}.chapter-volume-toggle>svg{transition:transform .2s}.chapter-volume-toggle>svg.collapsed{transform:rotate(-90deg)}.chapter-volume-toggle>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;font-weight:700;overflow:hidden}.chapter-volume-toggle>small{color:var(--muted);margin-left:auto;font-size:9px}.chapter-volume-items{gap:4px;display:grid}.manuscript-chapter-list{overscroll-behavior:contain;flex:auto;align-content:start;gap:6px;min-height:0;padding:0 4px 12px 0;display:grid;overflow-y:auto}.manuscript-chapter-list,.chapter-editor,.writing-message-list{scrollbar-color:var(--line-strong) transparent;scrollbar-width:thin}.manuscript-chapter-list::-webkit-scrollbar{width:6px}.chapter-editor::-webkit-scrollbar{width:6px}.writing-message-list::-webkit-scrollbar{width:6px}.manuscript-chapter-list::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.chapter-editor::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.writing-message-list::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.manuscript-chapter-button{min-width:0;min-height:64px;color:var(--muted);text-align:left;cursor:pointer;background:#f8f9fab8;border:1px solid #0000;border-radius:8px;flex:auto;grid-template-columns:14px 28px minmax(0,1fr);gap:7px;padding:10px 9px;transition:color .2s,border-color .2s,background-color .2s,transform .1s ease-out;display:grid}.manuscript-chapter-button:hover,.manuscript-chapter-button.active{color:var(--ink);background:var(--surface)}.manuscript-chapter-button.active{border-color:rgba(var(--primary-rgb),.28);box-shadow:inset 3px 0 0 var(--primary)}.manuscript-chapter-button:active{transform:scale(.98)}.manuscript-chapter-button.dragging{opacity:.44}.chapter-drag-handle{color:var(--line-strong);align-self:center}.manuscript-chapter-button:hover .chapter-drag-handle{color:var(--muted)}.manuscript-chapter-button>span{color:var(--primary-hover);font-family:var(--font-display);padding-top:2px;font-size:13px;font-weight:700}.manuscript-chapter-button>div{gap:5px;min-width:0;display:grid}.manuscript-chapter-list strong,.manuscript-chapter-list p{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.manuscript-chapter-list p{color:var(--muted);font-size:10px}.manuscript-chapter-list strong{font-family:var(--font-display);font-size:14px;font-weight:650}.chapter-search-empty{color:var(--muted);text-align:center;margin:18px 12px;font-size:10px}.chapter-context-menu{z-index:60;border:1px solid var(--line);background:var(--surface);border-radius:7px;min-width:136px;padding:4px;display:grid;box-shadow:0 10px 28px #21252924,0 2px 8px #21252912}.chapter-context-menu-item{min-height:32px;color:var(--ink-soft);cursor:pointer;border-radius:4px;outline:0;align-items:center;gap:8px;padding:0 8px;font-size:11px;font-weight:650;display:flex}.chapter-context-menu-item[data-highlighted]{background:var(--fill);color:var(--ink)}.chapter-context-menu-item.danger,.chapter-context-menu-item.danger[data-highlighted]{color:var(--vermilion)}.chapter-context-menu-item.danger[data-highlighted]{background:#be3b2d14}.chapter-editor{--chapter-editor-padding-top:28px;--chapter-ui-font-small:.75rem;--chapter-ui-font-body:.8125rem;min-width:0;height:100%;min-height:0;width:min(100%,var(--chapter-content-width));padding:var(--chapter-editor-padding-top) 34px 32px 32px;overscroll-behavior:contain;align-content:start;place-self:stretch center;display:grid;overflow:hidden auto}.writing-ai-panel{--writing-font-micro:.625rem;--writing-font-caption:.6875rem;--writing-font-small:.75rem;--writing-font-body:.8125rem;--writing-font-label:.875rem;--writing-font-input:.9375rem;--writing-font-title:1rem;z-index:24;top:calc(var(--topbar-height) + 18px);width:var(--chapter-ai-width,420px);min-width:0;height:min(820px,calc(95vh - var(--topbar-height) + 3px));min-height:0;max-height:calc(100dvh - var(--topbar-height) - 10px);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-lift);border-radius:10px;flex-direction:column;gap:14px;padding:20px 16px 18px;display:flex;position:fixed;right:20px;overflow:hidden}.writing-ai-resize-handle{cursor:col-resize;width:12px;position:absolute;top:0;bottom:0;left:-8px}.writing-ai-resize-handle:after{content:"";background:0 0;border-radius:2px;width:2px;height:34px;transition:background-color .2s;position:absolute;top:50%;left:5px;transform:translateY(-50%)}.writing-ai-resize-handle:hover:after{background:var(--primary)}.writing-ai-header,.writing-context-heading,.writing-version-list,.writing-prompt,.writing-asset-picker>header{align-items:center;display:flex}.writing-ai-header{justify-content:space-between;gap:10px}.writing-ai-header>div{gap:4px;display:grid}.writing-ai-header span,.writing-context-heading,.writing-version-list>span,.writing-ai-mode{color:var(--muted);font-size:var(--writing-font-small);font-weight:700}.writing-ai-header span,.writing-context-heading>span,.writing-version-list>span{align-items:center;gap:5px;display:inline-flex}.writing-ai-header strong{font-family:var(--font-display);font-size:var(--writing-font-title);font-weight:600}.writing-ai-mode{border:1px solid var(--line);background:#f8f9fad6;border-radius:4px;padding:4px 6px}.writing-ai-header>.writing-ai-header-actions{flex:none;align-items:center;gap:4px;display:flex}.writing-ai-clear-context{border:1px solid var(--line);width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;place-items:center;padding:0;display:grid}.writing-ai-clear-context:hover{border-color:var(--line-strong);color:var(--ink-soft)}.writing-ai-error,.writing-change-error,.writing-outline-deviation{color:#9f3e31;font-size:var(--writing-font-caption);background:#be41300f;border:1px solid #be413047;border-radius:5px;margin:0;line-height:1.5}.writing-ai-error,.writing-change-error{padding:7px 9px}.writing-change-error button{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:4px;padding:0;text-decoration:underline}.writing-outline-deviation{gap:4px;margin-top:8px;padding:8px 9px;display:grid}.writing-outline-deviation p,.writing-outline-deviation ul{margin:0}.writing-outline-deviation ul{padding-left:17px}.writing-change-analyze:disabled{opacity:.55;cursor:wait}.chapter-save-error{color:#9f3e31;line-height:1.45}.writing-selection-context{border:1px solid rgba(var(--primary-rgb),.2);border-left:3px solid var(--primary);background:rgba(var(--primary-rgb),.045);border-radius:7px;flex:none;gap:7px;padding:10px 11px;display:grid}.writing-selection-context>header{color:var(--primary-hover);font-size:var(--writing-font-small);justify-content:space-between;align-items:center;gap:8px;font-weight:700;display:flex}.writing-selection-context>header>button{color:var(--muted);font-size:var(--writing-font-small);cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:0;font-weight:700;display:inline-flex}.writing-selection-context>header>button:hover{color:var(--ink)}.writing-selection-context>p{color:var(--ink-soft);font-size:var(--writing-font-body);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;line-height:1.65;display:-webkit-box;overflow:hidden}.writing-context-sources{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex:none;gap:3px;padding:9px 0;display:grid}.writing-context-sources>header{color:var(--muted);font-size:var(--writing-font-small);justify-content:space-between;align-items:center;gap:8px;padding:0 2px 3px;font-weight:700;display:flex}.writing-context-sources>header>span{color:var(--ink-soft);align-items:center;gap:5px;display:inline-flex}.writing-context-sources>header>small{font-size:var(--writing-font-caption)}.writing-context-sources:not(.expanded){padding:6px 0}.writing-context-sources:not(.expanded)>header{padding:0 2px}.writing-context-summary{width:100%;min-height:26px;color:var(--muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}.writing-context-summary:hover{color:var(--ink-soft)}.writing-context-summary>span{color:var(--ink-soft);align-items:center;gap:5px;display:inline-flex}.writing-context-summary>small{font-size:var(--writing-font-caption);margin-left:auto}.writing-context-summary>svg{flex:none;transition:transform .2s}.writing-context-summary>svg.expanded{transform:rotate(180deg)}.writing-context-source-row{border:1px solid #0000;border-radius:5px;align-items:center;min-width:0;display:flex}.writing-context-source-row:hover{background:var(--fill)}.writing-context-source-row.active{border-color:rgba(var(--primary-rgb),.18);background:rgba(var(--primary-rgb),.045)}.writing-context-source-toggle{width:100%;min-width:0;min-height:28px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;justify-content:space-between;align-items:center;gap:8px;padding:3px 5px;display:flex}.writing-context-source-toggle:hover{color:var(--ink-soft)}.writing-context-source-toggle>span{gap:1px;min-width:0;display:grid}.writing-context-sources strong{color:var(--ink-soft);font-size:var(--writing-font-small);font-weight:700}.writing-context-sources small{color:var(--muted);font-size:var(--writing-font-caption);text-overflow:ellipsis;white-space:nowrap;line-height:1.4;overflow:hidden}.writing-context-source-toggle>svg{flex:none}.writing-action-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.writing-action-grid button{border:1px solid var(--line);min-height:31px;color:var(--ink-soft);font-size:var(--writing-font-body);cursor:pointer;background:#f8f9fabf;border-radius:5px;justify-content:center;align-items:center;gap:4px;padding:0 5px;font-weight:700;transition:background-color .2s,border-color .2s,color .2s,transform .1s ease-out;display:inline-flex}.writing-action-grid button:hover{border-color:rgba(var(--primary-rgb),.42);background:rgba(var(--primary-rgb),.07);color:var(--primary-hover)}.writing-action-grid button:active,.writing-send-button:active{transform:scale(.97)}.writing-context{background:#f8f9fab8;border:1px solid #21252912;border-radius:7px;gap:8px;padding:10px;display:grid}.writing-context-heading{justify-content:space-between}.writing-context>p{color:var(--muted);font-size:var(--writing-font-small);margin:0;line-height:1.5}.writing-asset-chips{flex-wrap:wrap;gap:5px;display:flex}.writing-asset-chips button{border:1px solid rgba(var(--primary-rgb),.18);background:rgba(var(--primary-rgb),.06);min-width:0;max-width:100%;color:var(--ink-soft);font-size:var(--writing-font-small);cursor:pointer;border-radius:4px;align-items:center;gap:4px;padding:4px 5px;display:inline-flex}.writing-asset-chips button>span,.writing-asset-picker>button>span{color:var(--primary);flex:none;font-weight:700}.writing-asset-chips button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.writing-asset-chips button>svg{color:var(--muted);flex:none}.writing-message-area{flex:auto;min-height:0;display:flex;position:relative}.writing-message-list{overflow-anchor:none;overscroll-behavior:contain;flex:auto;align-content:start;gap:8px;min-height:0;padding-right:3px;display:grid;overflow-y:auto}.writing-message-latest-button{z-index:2;border:1px solid rgba(var(--primary-rgb),.26);background:var(--paper);width:fit-content;max-width:max-content;min-height:30px;color:var(--primary-hover);font-size:var(--writing-font-small);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:0 10px;font-weight:700;transition:border-color .2s,background-color .2s,transform .1s ease-out;display:inline-flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 6px 16px #2125291f}.writing-message-latest-button:hover{border-color:var(--primary);background:var(--fill)}.writing-message-latest-button:active{transform:translate(-50%)scale(.97)}.writing-context-divider{color:var(--muted);font-size:var(--writing-font-caption);white-space:nowrap;align-items:center;gap:6px;font-weight:700;display:flex}.writing-context-divider:before,.writing-context-divider:after{background:var(--line);content:"";flex:auto;width:auto;height:1px}.writing-message-group{align-self:start;min-width:0;display:grid}.writing-message-group.user{margin-left:25px}.writing-message{font-size:var(--writing-font-body);border-radius:7px;align-self:start;gap:7px;padding:10px;line-height:1.6;display:grid}.writing-message p{white-space:pre-wrap;margin:0}.writing-message.user{background:var(--ink);color:var(--paper)}.writing-message.assistant{border:1px solid var(--line);color:var(--ink-soft);background:#f8f9fadb}.writing-message .ai-chat-markdown{max-width:none;color:inherit;font-family:inherit;font-size:var(--writing-font-body);line-height:1.7}.writing-message.user .ai-chat-markdown{color:var(--paper)}.writing-message .ai-chat-markdown p{margin:0 0 8px}.writing-message .ai-chat-markdown p:last-child{margin-bottom:0}.writing-message .ai-chat-markdown h1,.writing-message .ai-chat-markdown h2,.writing-message .ai-chat-markdown h3,.writing-message .ai-chat-markdown h4,.writing-message .ai-chat-markdown h5,.writing-message .ai-chat-markdown h6{color:inherit;margin:13px 0 6px;font-family:inherit;font-size:1.05em;line-height:1.45}.writing-message .ai-chat-markdown h1:first-child,.writing-message .ai-chat-markdown h2:first-child,.writing-message .ai-chat-markdown h3:first-child{margin-top:0}.writing-message .ai-chat-markdown ul,.writing-message .ai-chat-markdown ol{margin:7px 0 9px;padding-left:20px}.writing-message .ai-chat-markdown blockquote{background:#ffffff14;border-left:2px solid;margin:8px 0;padding:5px 9px}.writing-message .ai-chat-markdown pre{max-width:100%;font-size:var(--writing-font-small);white-space:pre;background:#00000014;border:1px solid;border-radius:4px;margin:8px 0;padding:8px 10px;overflow-x:auto}.writing-message .ai-chat-markdown code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.writing-message .ai-chat-markdown :not(pre)>code{border:1px solid;border-radius:3px;padding:1px 4px}.writing-message .ai-chat-markdown a{color:var(--primary-hover)}.writing-message.user .ai-chat-markdown a{color:var(--paper)}.writing-message-thinking{border-left:2px solid rgba(var(--primary-rgb),.35);margin-bottom:8px}.writing-message-thinking>button{width:100%;min-height:24px;color:var(--muted);font-size:var(--writing-font-small);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 0 0 8px;font-weight:700;display:flex}.writing-message-thinking>button small{color:var(--primary);font-size:var(--writing-font-caption);font-weight:600}.writing-message-thinking>button svg{margin-left:auto;transition:transform .2s}.writing-message-thinking>button[aria-expanded=true] svg{transform:rotate(180deg)}.writing-message-thinking-content{border:1px solid var(--line);background:var(--fill);margin:3px 0 0 8px;padding:7px 9px;color:var(--muted)!important;font-size:var(--writing-font-small)!important}.writing-message-editor{gap:6px;display:grid}.writing-message-editor textarea{resize:vertical;border:1px solid var(--line-strong);background:var(--paper);width:100%;min-height:90px;color:var(--ink-soft);font:inherit;border-radius:5px;outline:0;padding:8px 9px;line-height:1.6}.writing-message-editor textarea:focus{border-color:rgba(var(--primary-rgb),.55)}.writing-message-editor footer,.writing-message-footer{justify-content:space-between;align-items:center;gap:6px;min-height:24px;margin-top:6px;display:flex}.writing-message-editor footer{justify-content:flex-end}.writing-message-editor footer button,.writing-message-footer button{min-height:24px;color:var(--muted);font-size:var(--writing-font-caption);cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:4px;padding:0 6px;display:inline-flex}.writing-message-editor footer button:last-child{color:var(--primary)}.writing-message-footer{min-height:0;max-height:0;color:var(--muted);font-size:var(--writing-font-caption);opacity:0;pointer-events:none;visibility:hidden;margin-top:0;transition:max-height .16s,margin-top .16s,opacity .16s,visibility .16s;overflow:hidden}.writing-message-group:hover .writing-message-footer,.writing-message-group:focus-within .writing-message-footer{opacity:1;pointer-events:auto;visibility:visible;min-height:24px;max-height:36px;margin-top:2px}.writing-message-group.user .writing-message-footer{justify-content:flex-end}.writing-message-group.assistant .writing-message-footer{justify-content:flex-start}.writing-message-actions button:hover:not(:disabled),.writing-message-editor footer button:hover:not(:disabled){background:var(--fill);color:var(--ink)}.writing-message-actions button.danger:hover:not(:disabled){color:var(--danger);background:#f03e3e1f}.writing-message-footer button:disabled,.writing-message-editor footer button:disabled{cursor:not-allowed;opacity:.45}.writing-message-error{margin:5px 0 0;color:var(--danger)!important;font-size:var(--writing-font-small)!important}.writing-message-suggestions{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.writing-message-suggestions button{border:1px solid var(--line);background:var(--paper);min-height:24px;color:var(--ink-soft);font-size:var(--writing-font-caption);cursor:pointer;border-radius:12px;padding:0 7px}.writing-message-suggestions button:hover{border-color:rgba(var(--primary-rgb),.45);color:var(--primary)}.writing-message.assistant .writing-attachment.file,.global-ai-message.assistant .global-ai-attachment.file{border-color:var(--line-strong);background:var(--paper)}.writing-message header{color:var(--muted);font-size:var(--writing-font-small);justify-content:space-between;align-items:center;gap:8px;font-weight:700;display:flex}.writing-message header span{align-items:center;gap:4px;display:inline-flex}.writing-message header button{color:var(--primary);font-size:var(--writing-font-small);cursor:pointer;background:0 0;border:0;font-weight:700}.writing-message-actions{align-items:center;gap:5px;display:inline-flex}.writing-message-actions button[aria-label=复制消息]{width:22px;height:22px;color:var(--muted);border-radius:4px;place-items:center;padding:0;display:grid}.writing-message-actions button[aria-label=复制消息]:hover{background:var(--fill);color:var(--primary-hover)}.writing-message-generating{color:var(--muted);align-items:baseline;gap:2px;display:inline-flex}.writing-message-generating span{width:1.5em;animation:1.2s steps(4,end) infinite writing-generating-dots;display:inline-block;overflow:hidden}.writing-message-streaming i{vertical-align:-.2em;background:var(--primary);width:1px;height:1.15em;margin-left:3px;animation:.9s step-end infinite writing-stream-caret;display:inline-block}@keyframes writing-generating-dots{0%{width:0}to{width:1.5em}}@keyframes writing-stream-caret{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.writing-message-streaming i{animation:none}}.writing-message-sources{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.writing-message-sources>span{color:var(--muted);font-size:var(--writing-font-caption);font-weight:700}.writing-message-sources button{max-width:100%;color:inherit;font-size:var(--writing-font-caption);cursor:pointer;background:0 0;border:1px solid;border-radius:4px;align-items:center;gap:3px;padding:3px 5px;display:inline-flex}.writing-message-sources button:hover{color:var(--primary-hover)}.writing-message-sources em{color:var(--primary);font-style:normal;font-weight:700}.writing-message-sources button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.writing-message-sources i{color:var(--muted);font-size:var(--writing-font-micro);flex:none;font-style:normal}.writing-result-window{z-index:36;border:1px solid var(--line-dark);background:var(--paper);border-radius:7px;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;width:min(480px,100vw - 32px);height:min(560px,100dvh - 84px);min-height:0;max-height:min(560px,100dvh - 84px);padding:12px;display:grid;position:fixed;overflow:hidden;box-shadow:0 14px 34px #14181e24}.writing-result-window.minimized{width:min(264px,100vw - 32px);height:auto;max-height:none;padding:8px 10px;display:block}.writing-result-window>header{cursor:grab;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.writing-result-window>header:active{cursor:grabbing}.writing-result-window>header>div:first-child{min-width:0;color:var(--primary-hover);font-size:var(--writing-font-small);align-items:center;gap:5px;font-weight:700;display:inline-flex}.writing-result-window>header small{color:var(--muted);font-size:var(--writing-font-caption);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.writing-result-window-actions{flex:none;gap:2px;display:inline-flex}.writing-result-window-actions button{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:grid}.writing-result-window-actions button:hover{background:var(--fill);color:var(--ink-soft)}.writing-result-window>p{overscroll-behavior:contain;min-height:0;color:var(--ink-soft);font-family:var(--chapter-font-family);font-size:var(--writing-font-body);white-space:pre-wrap;margin:0;line-height:1.72;overflow-y:auto}.writing-result-window>footer{flex-wrap:wrap;gap:4px;display:flex}.writing-result-window>footer button{border:1px solid rgba(var(--primary-rgb),.26);background:var(--paper);min-width:78px;min-height:30px;color:var(--primary-hover);font-size:var(--writing-font-caption);cursor:pointer;border-radius:4px;flex:calc(33.333% - 4px);justify-content:center;align-items:center;gap:4px;padding:0 6px;font-weight:700;display:inline-flex}.writing-result-window>footer button:active{transform:scale(.97)}.writing-version-list{justify-content:space-between;gap:8px}.writing-version-list>div{gap:4px;min-width:0;display:flex;overflow-x:auto}.writing-version-option{flex:none;gap:2px;display:flex}.writing-version-list button{border:1px solid var(--line);min-height:24px;color:var(--muted);font-size:var(--writing-font-small);cursor:pointer;background:0 0;border-radius:4px;flex:none;padding:0 6px}.writing-version-list button.active{border-color:rgba(var(--primary-rgb),.3);background:rgba(var(--primary-rgb),.06);color:var(--primary-hover);font-weight:700}.writing-version-list .writing-version-compare-button{place-items:center;width:24px;padding:0;display:grid}.writing-version-list .writing-version-compare-button.active{border-color:var(--primary);background:rgba(var(--primary-rgb),.12)}.writing-version-comparison,.writing-asset-preview{border:1px solid var(--line);background:#f8f9fab3;border-radius:7px;flex:none;gap:8px;padding:10px;display:grid}.writing-version-comparison>header,.writing-asset-preview>header{color:var(--muted);font-size:var(--writing-font-small);justify-content:space-between;align-items:center;gap:8px;font-weight:700;display:flex}.writing-version-comparison>header button,.writing-asset-preview>header button{width:22px;height:22px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:grid}.writing-version-comparison>header button:hover,.writing-asset-preview>header button:hover{background:var(--fill);color:var(--ink)}.writing-version-comparison>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.writing-version-comparison article{gap:5px;min-width:0;display:grid}.writing-version-comparison article+article{border-left:1px solid var(--line);padding-left:7px}.writing-version-comparison strong,.writing-asset-preview strong{color:var(--ink-soft);font-size:var(--writing-font-small)}.writing-version-comparison p,.writing-asset-preview p{color:var(--ink-soft);font-size:var(--writing-font-small);-webkit-line-clamp:5;-webkit-box-orient:vertical;margin:0;line-height:1.6;display:-webkit-box;overflow:hidden}.writing-asset-preview{border-color:rgba(var(--primary-rgb),.22);background:rgba(var(--primary-rgb),.045)}.writing-change-proposals{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex:none;gap:8px;padding:10px 0;display:grid}.writing-change-dock{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex:none;padding:8px 0;position:relative}.writing-change-dock>header{justify-content:space-between;align-items:center;gap:8px;display:flex}.writing-change-dock>header>div:first-child{gap:2px;min-width:0;display:grid}.writing-change-dock>header span{color:var(--ink-soft);font-size:var(--writing-font-body);font-weight:700}.writing-change-dock>header small{color:var(--muted);font-size:var(--writing-font-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.writing-change-open{border:1px solid var(--line-strong);background:var(--paper);min-height:26px;color:var(--ink-soft);font-size:var(--writing-font-caption);cursor:pointer;border-radius:5px;flex:none;align-items:center;gap:4px;padding:0 7px;font-weight:700;display:inline-flex}.writing-change-open:hover{border-color:var(--ink-soft);background:var(--fill)}.writing-change-open>svg{transition:transform .2s}.writing-change-open>svg.expanded{transform:rotate(180deg)}.writing-change-popover{z-index:30;border:1px solid var(--line-strong);background:var(--paper);width:min(360px,100vw - 32px);max-height:min(66vh,560px);box-shadow:var(--shadow-lift);border-radius:8px;padding:12px;display:grid;position:absolute;bottom:calc(100% + 8px);right:0;overflow-y:auto}.writing-change-popover>header{align-items:center}.writing-change-popover-actions{align-items:center;gap:4px;display:inline-flex}.writing-change-popover-close{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.writing-change-popover-close:hover{background:var(--fill);color:var(--ink-soft)}.writing-change-proposals>header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.writing-change-analyze{border:1px solid var(--ink-soft);background:var(--paper);min-height:26px;color:var(--ink-soft);font-size:var(--writing-font-caption);cursor:pointer;border-radius:5px;flex:none;align-items:center;gap:4px;padding:0 8px;font-weight:700;display:inline-flex}.writing-change-analyze:hover{background:var(--ink-soft);color:var(--paper)}.writing-change-proposals>header>div:first-child{gap:2px;display:grid}.writing-change-proposals>header span{color:var(--ink-soft);font-size:var(--writing-font-body);font-weight:700}.writing-change-proposals>header small{color:var(--muted);font-size:var(--writing-font-caption);line-height:1.4}.writing-change-mode{border:1px solid var(--line);background:var(--fill);border-radius:5px;flex:none;align-items:center;gap:2px;padding:2px;display:inline-flex}.writing-change-mode>span{color:var(--muted);font-size:var(--writing-font-caption);white-space:nowrap;padding:0 3px 0 2px;font-weight:600}.writing-change-settings{justify-content:space-between;align-items:center;gap:8px;display:flex}.writing-change-auto-switch{min-width:0;color:var(--muted);font-size:var(--writing-font-caption);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:600;display:inline-flex}.writing-change-auto-switch>span{border:1px solid var(--line-dark);background:var(--fill);border-radius:999px;flex:none;align-items:center;width:24px;height:14px;padding:2px;transition:background .2s,border-color .2s;display:inline-flex}.writing-change-auto-switch>span>i{background:var(--muted);border-radius:50%;width:8px;height:8px;transition:transform .2s,background .2s;display:block}.writing-change-auto-switch.active{color:var(--ink-soft)}.writing-change-auto-switch.active>span{border-color:var(--ink-soft);background:var(--ink-soft)}.writing-change-auto-switch.active>span>i{background:var(--paper);transform:translate(10px)}.writing-change-mode button{min-height:22px;color:var(--muted);font-size:var(--writing-font-caption);cursor:pointer;background:0 0;border:0;border-radius:3px;padding:0 6px;font-weight:700}.writing-change-mode button.active{background:var(--paper);color:var(--ink-soft);box-shadow:0 1px 2px #21252914}.writing-change-list{gap:6px;max-height:218px;padding-right:2px;display:grid;overflow-y:auto}.writing-change-item{border:1px solid var(--line);background:#f8f9fa94;border-radius:6px;gap:7px;padding:8px;display:grid}.writing-change-item--delete{background:#a63d310a;border-color:#a63d3166}.writing-change-item>header{align-items:center;gap:5px;min-width:0;display:flex}.writing-change-item>header>span{border:1px solid rgba(var(--primary-rgb),.22);color:var(--primary-hover);font-size:var(--writing-font-caption);border-radius:3px;flex:none;padding:2px 4px;font-weight:700}.writing-change-item>header>strong{color:var(--ink-soft);font-size:var(--writing-font-small);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.writing-change-diff{gap:4px;display:grid}.writing-change-diff p{color:var(--muted);font-size:var(--writing-font-small);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.55;display:-webkit-box;overflow:hidden}.writing-change-diff p:last-child{color:var(--ink-soft)}.writing-change-diff small{color:var(--primary-hover);font-size:var(--writing-font-caption);margin-right:5px;font-weight:700}.writing-change-actions,.writing-change-batch-actions{justify-content:flex-end;gap:5px;display:flex}.writing-change-actions button,.writing-change-batch-actions button{border:1px solid var(--line-strong);background:var(--paper);min-height:24px;color:var(--ink-soft);font-size:var(--writing-font-caption);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:3px;padding:0 7px;font-weight:700;display:inline-flex}.writing-change-actions button:hover,.writing-change-batch-actions button:hover{border-color:var(--ink-soft)}.writing-change-actions button.primary,.writing-change-batch-actions button.primary{border-color:var(--primary);background:var(--primary);color:var(--paper)}.writing-change-actions button.primary.danger{background:#a63d31;border-color:#a63d31}.writing-change-history-toggle{width:fit-content;color:var(--muted);font-size:var(--writing-font-caption);cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.writing-change-history-toggle:hover{color:var(--ink-soft)}.writing-change-history{gap:3px;padding-top:2px;display:grid}.writing-change-history p{min-width:0;color:var(--muted);font-size:var(--writing-font-caption);align-items:center;gap:5px;margin:0;display:flex}.writing-change-history p>span{background:var(--fill);color:var(--muted);font-size:var(--writing-font-micro);border-radius:3px;flex:none;padding:2px 4px}.writing-change-history p>span.accepted{color:#087f5b;background:#0ca67817}.writing-change-history p>span.rejected{background:#21252912}.writing-action-feedback{color:var(--primary-hover);font-size:var(--writing-font-small);text-align:right;margin:-4px 0 0;font-weight:700}.writing-prompt{align-items:flex-end;gap:7px;margin-top:auto;padding-top:4px;position:relative}.writing-prompt-input{flex:1;gap:6px;min-width:0;display:grid;position:relative}.writing-prompt-tools{align-items:center;gap:3px;display:flex}.writing-prompt-tools button{width:27px;height:27px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.writing-prompt-tools button:hover{background:var(--fill);color:var(--primary-hover)}.writing-tiptap-shell{border:1px solid var(--line-strong);background:var(--paper);border-radius:7px;width:100%;min-height:62px;position:relative}.writing-tiptap-shell:focus-within{border-color:rgba(var(--primary-rgb),.55);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.09)}.writing-tiptap-shell[data-empty=true]:before{z-index:0;color:var(--muted);content:"描述下一段想发生什么，或输入 @ 引用资产";font-size:var(--writing-font-input);pointer-events:none;line-height:1.5;position:absolute;top:9px;left:10px;right:10px}.writing-tiptap-editor{z-index:1;min-height:62px;max-height:180px;color:var(--ink-soft);font-size:var(--writing-font-input);white-space:pre-wrap;word-break:break-word;outline:0;padding:9px 10px;line-height:1.5;position:relative;overflow-y:auto}.writing-tiptap-editor p{margin:0}.writing-tiptap-mention{border:1px solid rgba(var(--primary-rgb),.25);background:rgba(var(--primary-rgb),.08);max-width:100%;color:var(--primary-hover);font-family:inherit;font-size:var(--writing-font-body);-webkit-user-select:none;user-select:none;vertical-align:baseline;border-radius:4px;align-items:center;margin:1px 2px;padding:1px 5px;font-weight:400;line-height:1.5;display:inline-flex}.writing-tiptap-mention[data-snapshot=true]:after{color:var(--muted);content:"快照";font-size:var(--writing-font-caption);margin-left:3px;font-weight:700}.writing-send-button{background:var(--ink);width:34px;height:34px;color:var(--paper);cursor:pointer;border:0;border-radius:7px;flex:none;place-items:center;display:grid}.writing-send-button.generating{background:var(--primary)}.writing-send-button.generating:hover{background:var(--primary-hover)}.writing-send-button:disabled{cursor:not-allowed;opacity:.42}.writing-asset-picker{z-index:5;background:#fffffffa;border:1px solid #21252924;border-radius:9px;flex-direction:column;max-height:356px;padding:8px;display:flex;position:absolute;bottom:calc(100% + 7px);left:0;right:0;overflow:hidden;box-shadow:0 14px 34px #1c202624,0 2px 7px #1c20260f}.writing-asset-picker>header{justify-content:space-between;align-items:flex-start;gap:10px;padding:4px 3px 10px;display:flex}.writing-asset-picker>header>div:first-child{gap:3px;display:grid}.writing-asset-picker>header span{color:var(--ink-soft);font-size:var(--writing-font-label);font-weight:700}.writing-asset-picker>header small{color:var(--muted);font-size:var(--writing-font-caption)}.writing-reference-mode{border:1px solid var(--line);border-radius:5px;flex:none;gap:2px;padding:2px;display:flex}.writing-reference-mode button{min-height:22px;color:var(--muted);font-size:var(--writing-font-caption);cursor:pointer;background:0 0;border:0;border-radius:3px;padding:0 6px;font-weight:700}.writing-reference-mode button.active{background:var(--fill);color:var(--ink)}.writing-asset-picker-body{border-top:1px solid #21252912;grid-template-columns:76px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.writing-asset-filter{border-right:1px solid #21252912;align-content:start;gap:2px;padding:6px 5px 6px 0;display:grid}.writing-asset-filter button{min-height:25px;color:var(--muted);font-size:var(--writing-font-body);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0 6px;font-weight:600}.writing-asset-filter button.active,.writing-asset-filter button:hover{background:rgba(var(--primary-rgb),.1);color:var(--primary-hover)}.writing-asset-content{grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.writing-asset-search-row{align-items:center;gap:6px;margin:6px 7px;display:flex}.writing-asset-search{border:1px solid var(--line);min-width:0;color:var(--muted);border-radius:5px;flex:auto;align-items:center;gap:5px;margin:0;padding:0 6px;display:flex}.writing-asset-search:focus-within{border-color:rgba(var(--primary-rgb),.45)}.writing-asset-search input{width:100%;min-height:26px;color:var(--ink-soft);font-size:var(--writing-font-small);background:0 0;border:0;outline:0;padding:0}.writing-asset-add-category{border:1px solid rgba(var(--primary-rgb),.35);background:rgba(var(--primary-rgb),.07);min-height:28px;color:var(--primary-hover);font-size:var(--writing-font-caption);white-space:nowrap;cursor:pointer;border-radius:5px;flex:none;align-items:center;gap:3px;padding:0 7px;font-weight:700;display:inline-flex}.writing-asset-add-category:hover{border-color:var(--primary);background:rgba(var(--primary-rgb),.13)}.writing-asset-options{scrollbar-gutter:stable;border-top:1px solid #21252912;min-height:0;overflow-y:auto}.writing-asset-option{text-align:left;cursor:pointer;background:0 0;border:0 solid #0000;border-bottom:1px solid #2125290e;grid-template-columns:40px minmax(0,1fr);gap:9px;width:100%;min-height:58px;padding:8px 7px;transition:background-color .16s,border-color .16s;display:grid}.writing-asset-option:last-child{border-bottom:0}.writing-asset-option:hover,.writing-asset-option.active{background:rgba(var(--primary-rgb),.075)}.writing-asset-option.active{box-shadow:inset 2px 0 0 var(--primary)}.writing-asset-option>span{border:1px solid rgba(var(--primary-rgb),.16);background:rgba(var(--primary-rgb),.05);width:38px;min-height:22px;color:var(--primary);font-size:var(--writing-font-body);white-space:nowrap;border-radius:4px;align-self:center;place-items:center;padding:0 3px;font-weight:700;line-height:1;display:grid}.writing-asset-option>div{gap:4px;min-width:0;display:grid}.writing-asset-option strong,.writing-asset-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.writing-asset-option strong{color:var(--ink);font-size:var(--writing-font-input);font-weight:650}.writing-asset-option small,.writing-asset-empty{color:var(--muted);font-size:var(--writing-font-body);margin:0;line-height:1.4}.writing-asset-option i{color:var(--primary-hover);font-size:var(--writing-font-caption);font-style:normal;font-weight:700}.writing-context-meter{color:var(--muted);font-size:var(--writing-font-caption);flex-wrap:wrap;gap:6px;margin:-1px 0 0;font-weight:700;display:flex}.writing-context-meter span:last-child{color:var(--primary-hover)}.writing-asset-empty{padding:18px 8px 14px}.chapter-editor-header{justify-content:space-between;align-items:flex-end;gap:22px;padding-bottom:18px;display:flex}.chapter-editor-header-actions{flex:none;align-items:center;gap:7px;display:flex}.chapter-history-button{border:1px solid var(--line-strong);min-height:34px;color:var(--ink-soft);font-size:var(--chapter-ui-font-small);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-weight:700;display:inline-flex}.chapter-history-button:hover:not(:disabled){border-color:var(--ink-soft)}.chapter-history-button:disabled{cursor:not-allowed;opacity:.45}.chapter-title-input{flex:1;gap:5px;min-width:0;display:grid}.chapter-title-input span{color:var(--muted);font-size:var(--chapter-ui-font-small);font-weight:700}.chapter-title-input input{width:100%;font-family:var(--font-display);background:0 0;border:0;outline:0;padding:0;font-size:1.75rem;font-weight:600;line-height:1.35}.chapter-editor-meta{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(180px,.9fr) 130px auto auto;align-items:end;gap:14px;padding:14px 0;display:grid}.chapter-editor-meta label{color:var(--muted);font-size:var(--chapter-ui-font-small);gap:6px;font-weight:700;display:grid}.chapter-editor-meta input,.chapter-editor-meta select{border:1px solid var(--line);background:var(--fill);width:100%;min-height:36px;color:var(--ink);font-size:var(--chapter-ui-font-body);border-radius:7px;outline:0;padding:7px 9px}.chapter-editor-meta input:focus,.chapter-editor-meta select:focus{border-color:rgba(var(--primary-rgb),.7);background:var(--surface)}.chapter-editor-meta>p{color:var(--muted);font-size:var(--chapter-ui-font-small);white-space:nowrap;margin:0 0 9px}.chapter-editor-sticky-header{z-index:5;top:calc(-1 * var(--chapter-editor-padding-top));background:var(--app-background);display:grid;position:sticky}.chapter-writing-progress{min-height:36px;color:var(--muted);font-size:var(--chapter-ui-font-small);white-space:nowrap;justify-content:flex-end;align-items:center;gap:12px;font-weight:700;display:flex}.chapter-writing-progress>span.complete{color:#087f5b}.chapter-editor-tabs{border-bottom:1px solid var(--line);gap:22px;padding-top:22px;display:flex}.chapter-editor-tabs button{min-height:38px;color:var(--muted);font-size:var(--chapter-ui-font-body);cursor:pointer;background:0 0;border:0;padding:0 1px;font-weight:700;position:relative}.chapter-editor-tabs button:after{content:"";background:0 0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.chapter-editor-tabs button:hover,.chapter-editor-tabs button.active{color:var(--ink)}.chapter-editor-tabs button.active:after{background:var(--ink)}.chapter-summary-editor,.chapter-body-editor{min-width:0;display:grid}.chapter-editor-textarea-shell{min-width:0;position:relative}.chapter-selection-highlight{z-index:0;color:#0000;min-height:440px;font-family:var(--chapter-font-family);font-size:var(--chapter-font-size);line-height:var(--chapter-line-height);pointer-events:none;white-space:pre-wrap;overflow-wrap:break-word;word-break:break-word;padding:30px 0;position:absolute;inset:0;overflow:hidden}.chapter-selection-highlight mark{background:rgba(var(--primary-rgb),.22);color:#0000;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:2px}.chapter-summary-editor textarea,.chapter-body-editor textarea{z-index:1;width:100%;min-height:440px;color:var(--ink-soft);font-family:var(--chapter-font-family);font-size:var(--chapter-font-size);line-height:var(--chapter-line-height);resize:none;background:0 0;border:0;outline:0;padding:30px 0;position:relative;overflow:hidden}.chapter-body-editor textarea{min-height:560px;font-size:var(--chapter-font-size);line-height:var(--chapter-line-height)}.chapter-body-editor .chapter-selection-highlight{min-height:560px}:root[data-writing-density=compact] .chapter-editor{--chapter-editor-padding-top:20px;padding-top:var(--chapter-editor-padding-top)}:root[data-writing-density=compact] .chapter-summary-editor textarea,:root[data-writing-density=compact] .chapter-body-editor textarea,:root[data-writing-density=compact] .chapter-selection-highlight{min-height:380px;padding:20px 0}:root[data-writing-density=compact] .chapter-body-editor textarea,:root[data-writing-density=compact] .chapter-body-editor .chapter-selection-highlight{min-height:480px}:root[data-writing-density=compact] .writing-ai-panel{gap:10px;padding:15px 13px}.chapter-editor-meta .chapter-word-goal{width:auto;color:var(--muted);align-items:center;gap:4px;font-weight:700;display:inline-flex}.chapter-word-goal svg{color:var(--primary)}.chapter-word-goal input{border:1px solid var(--line);background:var(--surface);width:72px;min-height:24px;color:var(--ink-soft);font-size:var(--chapter-ui-font-small);font-variant-numeric:tabular-nums;border-radius:4px;outline:0;padding:0 4px}.chapter-word-goal input:focus{border-color:var(--primary)}.chapter-word-progress{background:var(--line);border-radius:2px;height:2px;overflow:hidden}.chapter-word-progress>span{border-radius:inherit;background:var(--primary);height:100%;transition:width .2s;display:block}.dialog-content.chapter-create-dialog{width:min(700px,100vw - 32px)}.dialog-content.chapter-snapshot-dialog{width:min(620px,100vw - 32px)}.chapter-snapshot-list{gap:2px;max-height:min(480px,100dvh - 220px);padding:2px 0;display:grid;overflow-y:auto}.chapter-snapshot-item{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:10px 2px;display:flex}.chapter-snapshot-item>div{gap:3px;display:grid}.chapter-snapshot-item strong{color:var(--ink-soft);font-size:var(--chapter-ui-font-body)}.chapter-snapshot-item span,.chapter-snapshot-empty{color:var(--muted);font-size:var(--chapter-ui-font-small);margin:0}.chapter-snapshot-empty{padding:18px 0}.empty-state{min-height:320px;color:var(--muted);place-content:center;justify-items:center;display:grid}.characters-page,.worlds-page,.scenes-page,.organizations-page,.items-page{width:min(1680px,100%);margin:0 auto;padding:26px 42px 56px}.work-resource-page .page-header{align-items:center;padding-bottom:14px}.work-resource-page .page-header h1{font-size:32px}.resource-owner{background:#2c24200a;border:1px solid #2c242017;border-radius:8px;gap:5px;padding:14px 15px;display:grid}.resource-owner span{color:var(--muted);font-size:10px;font-weight:700}.resource-owner strong{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.resource-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:60px;display:flex}.resource-toolbar>span{color:var(--muted);flex:none;font-size:11px;font-weight:700}.resource-toolbar .search-field{width:min(380px,100%)}.resource-toolbar.resource-toolbar-summary{border-top:0;justify-content:flex-end;min-height:32px}.resource-updated{color:var(--muted);font-size:10px;font-weight:600}.character-toolbar{min-height:60px}.segmented-control{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:3px;display:inline-flex}.segmented-control button{min-height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0 11px;font-size:11px;font-weight:700;transition:color .2s,background-color .2s}.segmented-control button:hover{color:var(--ink)}.segmented-control button.active{background:var(--ink);color:#fff}.character-grid{grid-template-columns:minmax(0,1fr);gap:12px;padding-top:16px;display:grid}@media(min-width:681px){.character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1000px){.character-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.character-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-width:0;min-height:248px;box-shadow:var(--shadow-sm);flex-direction:column;padding:13px;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex}.character-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.character-card-header,.character-card-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.character-index{color:var(--muted);font-family:var(--font-display);font-size:11px}.character-identity{align-items:center;gap:9px;min-width:0;padding:13px 0 9px;display:flex}.character-monogram{border:1px solid var(--ink);width:36px;height:36px;font-family:var(--font-display);border-radius:50%;flex:none;place-items:center;font-size:17px;display:grid}.character-identity>div{min-width:0}.character-identity h2{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:17px;font-weight:600;line-height:1.25;overflow:hidden}.character-identity p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:10px;line-height:1.35;overflow:hidden}.character-summary{min-height:37px;color:var(--ink-soft);font-family:var(--font-display);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;line-height:1.55;display:-webkit-box;overflow:hidden}.character-card-context{border-left:2px solid var(--ink);background:var(--fill);gap:4px;margin-top:9px;padding:7px 8px;display:grid}.character-card-context p{grid-template-columns:42px minmax(0,1fr);gap:6px;min-width:0;margin:0;display:grid}.character-card-context span{color:var(--muted);font-size:9px;font-weight:700}.character-card-context strong{color:var(--ink-soft);-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:10px;font-weight:500;line-height:1.45;display:-webkit-box;overflow:hidden}.character-details{gap:7px;margin:0;display:grid}.character-details>div{grid-template-columns:64px minmax(0,1fr);gap:8px;display:grid}.character-details dt,.character-details dd{margin:0;font-size:11px;line-height:1.55}.character-details dt{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.character-details dd{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.character-card-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:auto;padding-top:9px;font-size:10px}.character-card-count{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.character-card .resource-card-actions{flex:none;gap:3px}.character-card .resource-card-icon-action,.character-card .icon-button{width:26px;height:26px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:6px;flex:none;place-items:center;padding:0;text-decoration:none;transition:color .2s,border-color .2s,background-color .2s;display:inline-grid}.character-card .resource-card-icon-action:hover,.character-card .icon-button:hover{border-color:var(--line-strong);color:var(--ink);background:var(--fill)}.world-toolbar,.scene-toolbar{min-height:60px}.world-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:12px;display:grid}.world-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-width:0;min-height:250px;box-shadow:var(--shadow-sm);flex-direction:column;padding:12px 14px;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}.world-card:before{background:var(--moss);content:"";opacity:.6;width:3px;position:absolute;top:0;bottom:0;left:0}.world-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.world-card-header,.world-card-footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.world-card-header>span:first-child{color:var(--muted);font-family:var(--font-display);font-size:10px}.world-title-row{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:11px 0 9px;display:flex}.world-symbol{border:1px solid var(--ink);width:36px;height:36px;color:var(--moss);border-radius:6px;flex:none;place-items:center;display:grid}.world-title-row h2{overflow-wrap:anywhere;font-family:var(--font-display);margin:0;font-size:17px;font-weight:600;line-height:1.35}.world-title-row p{color:var(--muted);margin:3px 0 0;font-size:10px}.world-summary{min-height:42px;color:var(--ink-soft);font-family:var(--font-display);border-left:2px solid #b8c8be;margin:9px 0 7px;padding-left:10px;font-size:12px;line-height:1.55}.world-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;margin:0;display:grid}.world-details>div{border-top:1px solid var(--line);min-width:0;padding:5px 0}.world-details dt,.world-details dd{margin:0}.world-details dt{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding-bottom:3px;font-size:9px;font-weight:700;overflow:hidden}.world-details dd{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:10px;line-height:1.5;display:-webkit-box;overflow:hidden}.world-card-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:auto;padding-top:8px;font-size:10px}.world-card-footer button{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:2px 0;font-size:10px;font-weight:700;display:inline-flex}.world-card-footer button:hover{color:var(--moss)}.scene-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:12px;display:grid}.scene-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-width:0;min-height:275px;box-shadow:var(--shadow-sm);flex-direction:column;padding:12px 14px;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;position:relative}.scene-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.scene-card-header,.scene-card-footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.scene-card-header>span:first-child{color:var(--muted);font-family:var(--font-display);font-size:10px}.scene-title-row{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:11px 0 9px;display:flex}.scene-symbol{width:36px;height:36px;color:var(--vermilion);border:1px solid #d4b7b0;border-radius:50%;flex:none;place-items:center;display:grid}.scene-title-row h2{overflow-wrap:anywhere;font-family:var(--font-display);margin:0;font-size:17px;font-weight:600;line-height:1.35}.scene-title-row p{color:var(--muted);margin:3px 0 0;font-size:10px}.scene-summary{min-height:42px;color:var(--ink-soft);font-family:var(--font-display);margin:9px 0 7px;font-size:12px;line-height:1.55}.scene-atmosphere{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:7px 0;display:grid}.scene-atmosphere p{min-width:0;color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:10px;line-height:1.5;display:-webkit-box;overflow:hidden}.scene-atmosphere span{color:var(--muted);padding-bottom:3px;font-size:9px;font-weight:700;display:block}.scene-details{gap:0;margin:4px 0 0;display:grid}.scene-details>div{border-bottom:1px solid var(--line);grid-template-columns:56px minmax(0,1fr);gap:8px;min-width:0;padding:5px 0;display:grid}.scene-details dt,.scene-details dd{margin:0;font-size:9px;line-height:1.5}.scene-details dt{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.scene-details dd{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.scene-card-footer{color:var(--muted);margin-top:auto;padding-top:8px;font-size:10px}.scene-card-footer button{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:2px 0;font-size:10px;font-weight:700;display:inline-flex}.scene-card-footer button:hover{color:var(--vermilion)}.organization-page-kicker{color:var(--muted);letter-spacing:.04em;margin:0 0 6px;font-size:10px;font-weight:700}.organization-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:12px;display:grid}.organization-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-width:0;min-height:260px;box-shadow:var(--shadow-sm);flex-direction:column;padding:12px 14px;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}.organization-card:before{background:var(--amber);content:"";opacity:.78;width:3px;position:absolute;top:0;bottom:0;left:0}.organization-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.organization-card-header,.organization-card-footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.organization-card-header>span:first-child{color:var(--muted);font-family:var(--font-display);font-size:10px}.organization-title-row{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:11px 0 9px;display:flex}.organization-symbol{color:#a16a00;border:1px solid #d9be83;border-radius:6px;flex:none;place-items:center;width:36px;height:36px;display:grid}.organization-title-row h2{overflow-wrap:anywhere;font-family:var(--font-display);margin:0;font-size:17px;font-weight:600;line-height:1.35}.organization-title-row p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:10px;overflow:hidden}.organization-summary{min-height:42px;color:var(--ink-soft);font-family:var(--font-display);border-left:2px solid #d9be83;margin:9px 0 7px;padding-left:10px;font-size:12px;line-height:1.55}.organization-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;margin:0;display:grid}.organization-details>div{border-top:1px solid var(--line);min-width:0;padding:5px 0}.organization-details dt,.organization-details dd{margin:0}.organization-details dt{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding-bottom:3px;font-size:9px;font-weight:700;overflow:hidden}.organization-details dd{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:10px;line-height:1.5;display:-webkit-box;overflow:hidden}.organization-card-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:auto;padding-top:8px;font-size:10px}.organization-card-footer button{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:2px 0;font-size:10px;font-weight:700;display:inline-flex}.organization-card-footer button:hover{color:#a16a00}.organization-card-actions{align-items:center;gap:6px;display:inline-flex}.organization-card-actions .icon-button{width:24px;height:24px;color:var(--muted)}.organization-card-actions .icon-button:hover{color:var(--vermilion);background:#fbf6f5;border-color:#d0aaa3}.resource-card-actions{align-items:center;gap:12px;display:inline-flex}.character-dynamic-state{border-left:2px solid var(--primary);background:var(--fill);color:var(--ink-soft);gap:3px;margin:12px 0 0;padding:8px 9px;font-size:11px;line-height:1.5;display:grid}.character-dynamic-state span{color:var(--muted);font-size:9px;font-weight:700}.resource-timeline-link{color:var(--ink-soft);align-items:center;gap:4px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.resource-timeline-link:hover{color:#8d5d00}.asset-card-focused{box-shadow:0 0 0 2px #b88b2d29,var(--shadow-md)!important;border-color:#b88b2d!important}.asset-conflict-notice{background:#fffaf0;border:1px solid #d9be83;border-radius:6px;gap:8px;margin-top:10px;padding:10px 11px;display:grid}.asset-missing-conflicts{gap:10px;margin-top:12px;display:grid}.asset-conflict-heading,.asset-conflict-heading>span,.asset-conflict-actions,.asset-conflict-actions button,.asset-history-source,.asset-history-item-header>div,.asset-history-item-footer,.asset-history-item-footer button{align-items:center;display:flex}.asset-conflict-heading{color:#8d5d00;justify-content:space-between;font-size:10px;font-weight:700}.asset-conflict-heading>span{gap:5px}.asset-conflict-notice>p{color:var(--ink-soft);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.6;display:-webkit-box;overflow:hidden}.asset-conflict-notice>p strong{font-weight:500}.asset-conflict-actions{justify-content:flex-end;gap:10px}.asset-conflict-actions button,.asset-history-item-footer button{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;gap:4px;font-size:10px;font-weight:700}.asset-conflict-actions .asset-conflict-adopt,.asset-history-item-footer button{color:#8d5d00}.asset-conflict-actions button:hover,.asset-history-item-footer button:hover{color:var(--vermilion)}.asset-conflict-merge{gap:4px;display:grid}.asset-conflict-merge span{color:#8d5d00;font-size:10px;font-weight:700}.asset-conflict-merge textarea{width:100%;min-height:48px;color:var(--ink-soft);font:inherit;resize:vertical;background:#fffdf7;border:1px solid #d9be83;border-radius:4px;padding:6px 7px;font-size:11px;line-height:1.5}.asset-conflict-merge-button{color:#8d5d00;cursor:pointer;background:#fffdf7;border:1px solid #d9be83;border-radius:4px;justify-content:center;align-items:center;gap:4px;min-height:25px;padding:0 8px;font-size:10px;font-weight:700;display:inline-flex}.asset-conflict-merge-button:disabled{opacity:.5;cursor:not-allowed}.dialog-content.asset-history-dialog{width:min(100vw - 36px,760px);max-height:min(760px,100dvh - 48px);padding:0}.asset-history-dialog .dialog-header{border-bottom:1px solid var(--line);padding:20px 22px 16px}.asset-history-list{gap:12px;max-height:min(560px,100dvh - 230px);padding:16px 22px;display:grid;overflow:auto}.asset-history-item{border:1px solid var(--line);background:var(--paper);border-radius:6px;gap:11px;padding:14px;display:grid}.asset-history-item-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.asset-history-item-header>div{gap:8px}.asset-history-item-header strong{color:var(--ink);font-size:12px}.asset-history-item-header time,.asset-history-item-footer small{color:var(--muted);font-size:10px;line-height:1.45}.asset-history-source{color:var(--muted);gap:4px;font-size:10px;font-weight:700}.asset-history-diff{gap:7px;display:grid}.asset-history-diff-row{min-width:0;color:var(--ink-soft);grid-template-columns:76px minmax(0,1fr) 14px minmax(0,1fr);align-items:start;gap:7px;font-size:11px;line-height:1.55;display:grid}.asset-history-diff-row>span{color:var(--muted);font-weight:700}.asset-history-diff-row del,.asset-history-diff-row ins{overflow-wrap:anywhere;text-decoration:none}.asset-history-diff-row del{color:#99635c}.asset-history-diff-row ins{color:#456858}.asset-history-diff-row b{color:var(--muted);font-weight:400}.asset-history-snapshot{background:var(--surface);gap:5px;padding:10px;display:grid}.asset-history-snapshot>span{color:var(--muted);font-size:10px;font-weight:700}.asset-history-snapshot p{color:var(--ink-soft);grid-template-columns:76px minmax(0,1fr);gap:8px;margin:0;font-size:11px;line-height:1.55;display:grid}.asset-history-snapshot b{color:var(--muted);font-weight:700}.asset-history-item-footer{border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding-top:10px}.asset-history-item-footer button{margin-left:auto}.asset-history-dialog>.dialog-actions{border-top:1px solid var(--line);padding:12px 22px 16px}.asset-history-empty{min-height:220px;color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:7px;padding:32px;display:grid}.asset-history-empty p{color:var(--ink-soft);margin:0;font-size:13px;font-weight:700}.asset-history-empty span{font-size:11px}.timeline-page{width:min(1160px,100%);margin:0 auto;padding:28px 42px 64px}.timeline-page-header{padding-top:18px}.timeline-page-kicker{color:var(--muted);letter-spacing:.04em;margin:0 0 6px;font-size:10px;font-weight:700}.timeline-page-summary{max-width:570px;color:var(--ink-soft);font-family:var(--font-display);margin:8px 0 0;font-size:14px;line-height:1.65}.timeline-control-bar,.timeline-filter-controls,.timeline-filter-controls>span,.timeline-event-labels,.timeline-event-status,.timeline-event-link{align-items:center;display:flex}.timeline-control-bar{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;min-height:56px;padding:10px 0}.timeline-view-mode{flex:none}.timeline-filter-controls{gap:8px;min-width:0;margin-left:auto}.timeline-filter-controls>span{color:var(--muted);flex:none;gap:5px;font-size:10px;font-weight:700}.timeline-filter-controls label{min-width:0}.timeline-filter-controls select{border:1px solid var(--line);background-color:var(--paper);width:min(190px,22vw);min-height:32px;color:var(--ink-soft);border-radius:5px;padding:0 26px 0 9px;font-size:11px}.timeline-filter-reset{flex:none;min-height:30px;padding-left:2px;padding-right:2px}.timeline-list{gap:0;padding:12px 0 0;display:grid}.timeline-event{grid-template-columns:58px minmax(0,1fr);gap:18px;min-width:0;display:grid}.timeline-event-rail{align-content:start;justify-items:center;min-height:100%;padding-top:15px;display:grid;position:relative}.timeline-event-rail:after{background:var(--line);content:"";width:1px;position:absolute;top:40px;bottom:-1px}.timeline-event:last-child .timeline-event-rail:after{display:none}.timeline-event-rail span{z-index:1;border:1px solid var(--ink);background:var(--paper);width:28px;height:28px;color:var(--ink);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:10px;display:grid}.timeline-event-rail i{display:none}.timeline-event-body{border-bottom:1px solid var(--line);min-width:0;padding:14px 0 22px}.timeline-event-header,.timeline-event-footer,.timeline-event-meta,.timeline-event-actions,.timeline-event-actions button,.timeline-event-time,.timeline-event-assets,.timeline-asset-chip,.timeline-asset-group-title,.timeline-asset-option{align-items:center;display:flex}.timeline-event-header,.timeline-event-footer{justify-content:space-between;gap:16px}.timeline-event-time{color:#8d5d00;gap:5px;font-size:10px;font-weight:700}.timeline-event-labels{flex-wrap:wrap;gap:7px}.timeline-event-status{border:1px solid var(--line);color:var(--muted);border-radius:4px;gap:4px;padding:3px 6px;font-size:9px;font-weight:700}.timeline-event-status.confirmed{color:#456858;border-color:#b8cdbd}.timeline-event-status.planned{color:#8d5d00;border-color:#d9be83}.timeline-event-status.rumor{color:#705a79;border-color:#c8becd}.timeline-event-header h2{overflow-wrap:anywhere;color:var(--ink);font-family:var(--font-display);margin:6px 0 0;font-size:19px;font-weight:600;line-height:1.35}.timeline-event-summary{color:var(--ink-soft);white-space:pre-wrap;margin:10px 0 14px;font-size:12px;line-height:1.7}.timeline-event-meta{min-width:0;color:var(--muted);gap:14px;font-size:10px}.timeline-event-meta>span:first-child{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;min-width:0;display:inline-flex;overflow:hidden}.timeline-event-link{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;gap:4px;text-decoration:none;overflow:hidden}.timeline-event-link:hover{color:var(--ink)}.timeline-event-actions{flex:none;gap:9px}.timeline-event-actions button{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;gap:4px;padding:3px 0;font-size:11px;font-weight:700}.timeline-event-actions button:hover{color:var(--vermilion)}.timeline-event-actions .icon-button{width:28px;height:28px;color:var(--muted);padding:0}.timeline-event-assets{flex-wrap:wrap;gap:6px;margin-top:12px}.timeline-asset-chip{border:1px solid var(--line);max-width:100%;color:var(--ink-soft);border-radius:4px;gap:4px;padding:4px 7px;font-size:10px;text-decoration:none}.timeline-asset-chip:hover{border-color:var(--line-strong);color:var(--ink)}.timeline-asset-chip.deleted,.timeline-asset-chip svg:last-child{color:var(--muted)}.dialog-content.timeline-dialog{width:min(100vw - 36px,780px);max-height:min(760px,100dvh - 48px);padding:0}.timeline-dialog .dialog-header{border-bottom:1px solid var(--line);padding:20px 22px 16px}.timeline-form{max-height:min(560px,100dvh - 230px);display:grid;overflow:auto}.timeline-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px 22px 0;display:grid}.timeline-time-type-field{border:0;min-width:0;margin:0;padding:0}.timeline-time-type-field legend{color:var(--ink-soft);margin-bottom:7px;font-size:11px;font-weight:700}.timeline-time-type-field .segmented-control{width:max-content}.timeline-time-type-field .segmented-control button{min-width:72px}.timeline-form-wide{grid-column:1/-1}.timeline-asset-fieldset{border:1px solid var(--line);min-width:0;margin:18px 22px 0;padding:13px}.timeline-asset-fieldset legend{color:var(--ink-soft);padding:0 6px;font-size:11px;font-weight:700}.timeline-asset-fieldset legend span{color:var(--muted);margin-left:4px;font-weight:500}.timeline-asset-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;display:grid}.timeline-asset-group{gap:7px;display:grid}.timeline-asset-group-title{color:var(--muted);gap:5px;font-size:10px;font-weight:700}.timeline-asset-option{min-width:0;color:var(--ink-soft);cursor:pointer;gap:7px;font-size:11px}.timeline-asset-option input{accent-color:var(--ink);flex:none}.timeline-asset-option span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.timeline-empty-assets{color:var(--muted);margin:0;font-size:11px;line-height:1.6}.timeline-form .dialog-actions{border-top:1px solid var(--line);margin-top:18px;padding:12px 22px 16px}@media(max-width:680px){.timeline-page{padding:20px 18px 44px}.timeline-page-header{padding-top:8px}.timeline-page-summary{font-size:13px}.timeline-control-bar{flex-direction:column;align-items:stretch}.timeline-view-mode{width:100%}.timeline-view-mode button{flex:1 1 0}.timeline-filter-controls{width:100%;margin-left:0}.timeline-filter-controls>span{display:none}.timeline-filter-controls label{flex:1 1 0}.timeline-filter-controls select{width:100%}.timeline-filter-reset{align-self:flex-end}.timeline-event{grid-template-columns:34px minmax(0,1fr);gap:10px}.timeline-event-rail{padding-top:13px}.timeline-event-rail span{width:24px;height:24px;font-size:9px}.timeline-event-rail:after{top:34px}.timeline-event-body{padding:12px 0 18px}.timeline-event-header,.timeline-event-footer{align-items:flex-start}.timeline-event-header h2{font-size:17px}.timeline-event-header .resource-updated,.timeline-event-meta>span:last-child{display:none}.timeline-event-footer{align-items:center}.timeline-event-meta{min-width:0}.timeline-event-actions button:not(.icon-button){width:28px;height:28px;padding:0;font-size:0;overflow:hidden}.dialog-content.timeline-dialog,.dialog-content.asset-history-dialog{width:min(100vw - 24px,780px)}.timeline-form-grid,.timeline-asset-groups{grid-template-columns:1fr}.timeline-form-grid,.timeline-dialog .dialog-header,.timeline-form .dialog-actions,.timeline-asset-fieldset,.asset-history-dialog .dialog-header,.asset-history-list,.asset-history-dialog>.dialog-actions{margin-left:16px;margin-right:16px}.timeline-form-grid,.timeline-dialog .dialog-header,.timeline-form .dialog-actions,.asset-history-dialog .dialog-header,.asset-history-list,.asset-history-dialog>.dialog-actions{padding-left:0;padding-right:0}.timeline-asset-fieldset{margin-top:16px;padding:12px}.asset-history-diff-row{grid-template-columns:64px minmax(0,1fr)}.asset-history-diff-row b{display:none}.asset-history-diff-row ins{grid-column:2}.asset-history-item-header{flex-direction:column;align-items:stretch;gap:4px}.asset-history-item-footer{flex-direction:column;align-items:flex-start}.asset-history-item-footer button{margin-left:0}}.templates-page{width:min(1280px,100%);margin:0 auto;padding:48px 54px 80px}.template-page-header{align-items:center}.template-page-intro{color:var(--muted);margin:11px 0 0;font-size:12px}.template-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:60px;display:flex}.template-genre-filter{color:var(--muted);align-items:center;gap:8px;font-size:10px;font-weight:700;display:flex}.template-genre-filter select{border:1px solid var(--line);background:var(--paper);min-width:104px;min-height:34px;color:var(--ink-soft);cursor:pointer;border-radius:7px;outline:0;padding:0 28px 0 10px;font-size:11px;font-weight:700}.template-genre-filter select:hover,.template-genre-filter select:focus{border-color:rgba(var(--primary-rgb),.45)}.template-management-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding-top:26px;display:grid}.template-management-card{aspect-ratio:4/3;border:1px solid var(--line);background:var(--paper);border-radius:8px;flex-direction:column;min-width:0;padding:15px;transition:border-color .2s,background-color .2s,transform .1s ease-out;display:flex;position:relative;overflow:hidden}.template-management-card:hover{border-color:var(--line-strong);background:var(--surface);transform:translateY(-2px)}.template-card-actions,.template-management-title,.template-management-tags{align-items:center;display:flex}.template-card-actions{z-index:1;gap:5px;position:absolute;top:12px;right:12px}.template-card-actions .icon-button{width:29px;height:29px;color:var(--muted)}.template-card-actions .icon-button:last-child:hover{color:var(--danger);background:#f03e3e0d;border-color:#f03e3e40}.template-management-title{border-bottom:1px solid var(--line);gap:11px;padding:0 68px 12px 0}.template-management-title>span{background:rgba(var(--primary-rgb),.09);width:40px;height:40px;color:var(--primary);font-family:var(--font-display);border-radius:8px;flex:none;place-items:center;font-size:17px;font-weight:700;display:grid}.template-management-title p,.template-management-title h2{margin:0}.template-management-title p{color:var(--primary);margin-bottom:4px;font-size:9px;font-weight:700}.template-management-title h2{overflow-wrap:anywhere;font-family:var(--font-display);font-size:17px;font-weight:600}.template-management-description{min-height:48px;color:var(--ink-soft);font-family:var(--font-display);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:12px 0;font-size:12px;line-height:1.7;display:-webkit-box;overflow:hidden}.template-management-tags{border-top:1px solid var(--line);min-height:25px;color:var(--muted);flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:8px;overflow:hidden}.template-management-tags>svg{color:var(--primary);flex:none}.template-management-tags span{border:1px solid rgba(var(--primary-rgb),.2);background:rgba(var(--primary-rgb),.08);color:var(--primary);border-radius:4px;padding:3px 7px;font-size:9px;font-weight:600;line-height:1.2}.template-management-tags span:first-of-type{border-color:var(--primary);background:var(--primary);color:#fff}.template-management-tags small{font-size:10px}.dialog-content.template-dialog{width:min(720px,100vw - 32px)}.template-form{gap:22px;padding-top:22px;display:grid}.template-source-fieldset{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;display:grid}.template-source-fieldset legend{color:var(--muted);margin-bottom:8px;font-size:11px;font-weight:700}.template-source-fieldset label{border:1px solid var(--line);cursor:pointer;border-radius:6px;grid-template-columns:auto 1fr;align-items:start;gap:3px 8px;padding:10px 12px;display:grid}.template-source-fieldset label:has(input:checked){border-color:var(--primary);background:rgba(var(--primary-rgb),.04)}.template-source-fieldset label input{grid-row:1/span 2;margin-top:2px}.template-source-fieldset label span{color:var(--ink);font-size:12px;font-weight:700}.template-source-fieldset label small{color:var(--muted);font-size:10px;line-height:1.4}.template-source-fieldset label:has(input:disabled){opacity:.55;cursor:not-allowed}.template-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.template-form-wide{grid-column:1/-1}.ai-writing-page{min-height:calc(100vh - var(--topbar-height));background:var(--app-background)}.ai-context-preview{border:1px solid var(--line);background:var(--paper);border-radius:6px;gap:7px;margin:8px 0 2px;padding:8px 9px;display:grid}.ai-context-preview.warning{border-color:#f59f0066}.ai-context-preview--nav{background:0 0;border-radius:5px;flex:0 clamp(184px,19vw,268px);width:clamp(184px,19vw,268px);margin:0;padding:5px 8px;position:relative}.ai-context-preview-error{color:var(--danger,#a63d31);white-space:nowrap;font-size:11px;font-weight:700}.ai-context-preview--nav .ai-context-preview-summary{min-height:16px}.ai-context-preview--nav .ai-context-preview-title,.ai-context-preview--nav .ai-context-preview-value{gap:4px}.ai-context-preview--nav .ai-context-preview-title strong,.ai-context-preview--nav .ai-context-preview-value strong{font-size:9px}.ai-context-preview--nav .ai-context-preview-title small,.ai-context-preview--nav .ai-context-preview-value small{font-size:8px}.ai-context-preview--nav .ai-context-preview-details{z-index:86;border:1px solid var(--line-strong);background:var(--paper);border-radius:6px;width:min(380px,100vw - 24px);padding:10px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 26px #21252924}.ai-context-preview-summary{width:100%;min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:0;display:flex}.ai-context-preview-title,.ai-context-preview-value{align-items:center;gap:5px;min-width:0;display:inline-flex}.ai-context-preview-title{color:var(--ink-soft)}.ai-context-preview-title strong,.ai-context-preview-value strong{font-size:10px;font-weight:700}.ai-context-preview-title small,.ai-context-preview-value small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.ai-context-preview-value>svg{color:var(--muted);flex:none;transition:transform .2s}.ai-context-preview-value>svg.expanded{transform:rotate(180deg)}.ai-context-preview-track{background:var(--fill);border-radius:2px;height:3px;overflow:hidden}.ai-context-preview-track>i{border-radius:inherit;background:var(--primary);min-width:2px;height:100%;transition:width .2s;display:block}.ai-context-preview.warning .ai-context-preview-track>i{background:var(--amber)}.ai-context-preview-details{gap:8px;padding-top:3px;display:grid}.ai-context-preview-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0;display:grid}.ai-context-preview-totals>div{background:var(--fill);gap:2px;min-width:0;padding:5px 6px;display:grid}.ai-context-preview-totals dt,.ai-context-preview-totals dd{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.ai-context-preview-totals dt{color:var(--muted);font-size:9px}.ai-context-preview-totals dd{color:var(--ink-soft);font-size:10px;font-weight:700}.ai-context-preview-blocks{gap:3px;margin:0;padding:0;list-style:none;display:grid}.ai-context-preview-blocks li{min-width:0;color:var(--ink-soft);grid-template-columns:16px minmax(0,1fr) auto minmax(0,9rem);align-items:center;gap:5px;font-size:9px;display:grid}.ai-context-preview-block-icon{width:16px;height:16px;color:var(--muted);place-items:center;display:grid}.ai-context-preview-blocks strong,.ai-context-preview-blocks small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-context-preview-blocks strong{font-weight:600}.ai-context-preview-blocks em{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:3px;padding:1px 4px;font-size:8px;font-style:normal}.ai-context-preview-blocks small{color:var(--muted);text-align:right}.ai-context-preview-summary{color:var(--muted);grid-column:2/-1;margin:0 0 2px;font-size:9px;line-height:1.45}.ai-context-preview-blocks .mode-summary em{color:#a66a00;border-color:#f59f0073}.ai-context-preview-blocks .mode-excluded{opacity:.6}.ai-context-preview-warning{color:#a66a00;align-items:flex-start;gap:5px;margin:0;font-size:9px;line-height:1.45;display:flex}.ai-context-preview-warning>svg{flex:none;margin-top:1px}@media(max-width:560px){.ai-context-preview-blocks li{grid-template-columns:16px minmax(0,1fr) auto}.ai-context-preview-blocks small{text-align:left;grid-column:2/-1}}.ai-history-trigger{align-items:center;gap:.375rem;display:inline-flex}.ai-history-trigger--icon-only{border-radius:4px;flex:0 0 26px;place-items:center;gap:0;width:26px;min-width:26px;height:26px;min-height:26px;padding:0;display:grid}.ai-history-trigger--icon-only:hover{border-color:var(--line-strong);color:var(--ink-soft)}.ai-history-trigger-chevron{flex:none;transition:transform .2s}.ai-history-trigger.active{border-color:rgba(var(--primary-rgb),.38);background:rgba(var(--primary-rgb),.055);color:var(--primary)}.ai-history-trigger.active .ai-history-trigger-chevron{transform:rotate(180deg)}.ai-history-popover{z-index:84;width:min(22rem,100vw - 2rem);max-height:min(30rem,var(--reka-popover-content-available-height));border:1px solid var(--line-strong);background:var(--paper);transform-origin:var(--reka-popover-content-transform-origin);border-radius:.5rem;outline:0;padding:0;animation:.16s ai-history-popover-in;overflow:hidden;box-shadow:0 1rem 2.5rem #21252924,0 .1875rem .75rem #21252914}.ai-history-popover-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1rem 1rem .75rem;display:flex}.ai-history-popover-header>div{gap:.1875rem;display:grid}.ai-history-popover-header strong{color:var(--ink);font-family:var(--font-display);font-size:.875rem;font-weight:600}.ai-history-popover-header small{color:var(--muted);font-size:.625rem}.ai-history-popover-header>span{border:1px solid var(--line);color:var(--muted);border-radius:.25rem;padding:.1875rem .375rem;font-size:.5625rem;line-height:1.25}.ai-history-list{scrollbar-color:var(--line-strong) transparent;scrollbar-width:thin;max-height:21rem;display:grid;overflow-y:auto}.ai-history-list::-webkit-scrollbar{width:.5rem}.ai-history-list::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:padding-box;border:.125rem solid #0000;border-radius:99rem}.ai-history-item{border:0;border-bottom:1px solid var(--line);background:var(--paper);width:100%;min-width:0;color:var(--ink);text-align:left;cursor:pointer;grid-template-columns:1.875rem minmax(0,1fr) .9375rem;align-items:center;gap:.625rem;padding:.75rem 1rem;transition:background-color .2s,color .2s;display:grid}.ai-history-item:hover{background:var(--fill)}.ai-history-item.active{background:rgba(var(--primary-rgb),.06)}.ai-history-item>svg{color:var(--primary)}.ai-history-item-mark{background:var(--fill);width:1.875rem;height:1.875rem;color:var(--muted);border-radius:.375rem;place-items:center;display:grid}.ai-history-item.active .ai-history-item-mark{background:rgba(var(--primary-rgb),.11);color:var(--primary)}.ai-history-item-copy{gap:.1875rem;min-width:0;display:grid}.ai-history-item-copy strong,.ai-history-item-copy small,.ai-history-item-copy em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-history-item-copy strong{color:var(--ink);font-size:.6875rem;font-weight:700}.ai-history-item-copy small,.ai-history-item-copy em{color:var(--muted);font-size:.5625rem;font-style:normal}.ai-history-item-copy em{color:var(--ink-soft)}.ai-history-context-menu{z-index:90;border:1px solid var(--line);background:var(--paper);border-radius:.4375rem;outline:0;gap:.125rem;min-width:8.5rem;padding:.25rem;display:grid;box-shadow:0 .75rem 2rem #21252924,0 .125rem .5rem #21252914}.ai-history-context-menu-item{min-height:2rem;color:var(--ink-soft);cursor:pointer;border-radius:.25rem;outline:0;align-items:center;gap:.5rem;padding:0 .5rem;font-size:.6875rem;font-weight:700;display:flex}.ai-history-context-menu-item[data-highlighted]{background:var(--fill);color:var(--ink)}.ai-history-context-menu-item.danger,.ai-history-context-menu-item.danger[data-highlighted]{color:var(--danger)}.ai-history-context-menu-item.danger[data-highlighted]{background:#f03e3e14}.ai-history-empty{color:var(--muted);text-align:center;margin:0;padding:1.5rem 1rem;font-size:.6875rem}.ai-history-popover-footer{padding:.625rem}.ai-history-popover-footer button{border:1px solid var(--line);background:var(--paper);width:100%;min-height:2.125rem;color:var(--ink-soft);cursor:pointer;border-radius:.375rem;justify-content:center;align-items:center;gap:.375rem;padding:0 .75rem;font-size:.6875rem;font-weight:700;transition:border-color .2s,background-color .2s,color .2s;display:inline-flex}.ai-history-popover-footer button:hover{border-color:rgba(var(--primary-rgb),.38);background:rgba(var(--primary-rgb),.055);color:var(--primary)}.dialog-content.ai-session-rename-dialog{width:min(420px,100vw - 2rem)}.ai-session-rename-form{gap:1.25rem;padding-top:1.25rem;display:grid}.ai-session-rename-form label{color:var(--muted);gap:.5rem;font-size:.6875rem;font-weight:700;display:grid}.ai-session-rename-form input{border:1px solid var(--line);background:var(--paper);width:100%;min-height:2.375rem;color:var(--ink-soft);border-radius:.375rem;outline:0;padding:0 .75rem;font-size:.8125rem}.ai-session-rename-form input:focus{border-color:rgba(var(--primary-rgb),.55);box-shadow:0 0 0 .1875rem rgba(var(--primary-rgb),.08)}@keyframes ai-history-popover-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.ai-creation-choice,.ai-conversation-workspace{width:min(940px,100%);margin:0 auto;padding:64px 48px 88px}.ai-conversation-workspace{width:100%;height:calc(100dvh - var(--topbar-height));box-sizing:border-box;min-height:0;padding:22px 28px 24px}.ai-creation-choice-copy{max-width:570px}.ai-creation-choice-copy h2{font-family:var(--font-display);margin:0;font-size:32px;font-weight:600;line-height:1.2}.ai-creation-choice-copy>p:last-child{color:var(--ink-soft);font-family:var(--font-display);margin:14px 0 0;font-size:14px;line-height:1.85}.ai-creation-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:36px;display:grid}.ai-creation-mode{border:1px solid var(--line);background:var(--paper);min-height:142px;color:var(--primary);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:26px minmax(0,1fr) 18px;align-items:center;gap:14px;padding:24px 22px;transition:border-color .2s,background-color .2s,transform .1s ease-out;display:grid}.ai-creation-mode>span{gap:7px;display:grid}.ai-creation-mode strong{color:var(--ink);font-family:var(--font-display);font-size:18px}.ai-creation-mode small{color:var(--muted);font-size:11px;line-height:1.65}.ai-creation-mode:hover{border-color:rgba(var(--primary-rgb),.5);background:rgba(var(--primary-rgb),.035)}.ai-creation-mode:active{transform:scale(.98)}.ai-creation-mode--conversation{color:var(--moss)}.ai-creation-mode--conversation:hover{background:#4a68400a;border-color:#4a684080}.ai-conversation-layout{height:calc(100dvh - var(--topbar-height) - 46px);grid-template-columns:292px minmax(0,1fr) minmax(290px,320px);gap:18px;min-height:0;display:grid}.ai-conversation-left-panels{grid-template-rows:auto minmax(0,1fr);gap:8px;min-width:0;min-height:0;display:grid}.ai-conversation-left-switcher{border:1px solid var(--line-strong);background:var(--fill);-webkit-user-select:none;user-select:none;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.ai-conversation-left-tab{min-width:0;min-height:32px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;align-items:center;gap:6px;padding:0 8px;font-size:10px;font-weight:700;transition:border-color .2s,background-color .2s,color .2s;display:flex}.ai-conversation-left-tab span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-conversation-left-tab small{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:9px}.ai-conversation-left-tab:hover{color:var(--ink-soft)}.ai-conversation-left-tab.active{border-color:var(--line-strong);background:var(--paper);color:var(--ink)}.ai-conversation-left-tab.active:first-child{color:var(--moss)}.ai-conversation-left-tab.active:last-child{color:#345a80}.ai-conversation-left-viewport{cursor:grab;touch-action:pan-y;overscroll-behavior-x:contain;min-width:0;min-height:0;overflow:hidden}.ai-conversation-left-viewport.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.ai-conversation-left-track{will-change:transform;width:200%;height:100%;transition:transform .24s cubic-bezier(.22,.61,.36,1);display:flex}.ai-conversation-left-track.is-dragging{transition:none}.ai-conversation-left-page{width:50%;min-width:0;min-height:0;display:flex;overflow:hidden}.ai-conversation-left-page>.ai-asset-panel,.ai-conversation-left-page>.ai-chapter-panel{flex:auto;width:100%}.ai-asset-panel,.ai-chapter-panel{border:1px solid var(--line-strong);background:var(--paper);border-radius:10px;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden;box-shadow:0 6px 20px #2125290a}.ai-chapter-panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:72px;padding:14px 14px 14px 16px;display:flex}.ai-chapter-panel-heading{align-items:center;gap:9px;min-width:0;display:flex}.ai-chapter-panel-heading>div{gap:3px;min-width:0;display:grid}.ai-chapter-panel-heading .eyebrow{margin:0}.ai-chapter-panel-heading h2{color:var(--ink);font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;font-weight:600;line-height:1.3;overflow:hidden}.ai-chapter-panel-icon{color:#345a80;background:#345a8012;border:1px solid #345a802e;border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:grid}.ai-chapter-panel-work{color:var(--muted);margin:12px 14px 0;font-size:10px}.ai-chapter-panel-list{min-height:0;padding:4px 8px 12px;overflow:auto}.ai-chapter-panel-volume{border-bottom:1px solid var(--line)}.ai-chapter-panel-volume-toggle{width:100%;min-height:32px;color:var(--ink-soft);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0 6px;font-size:10px;font-weight:700;display:flex}.ai-chapter-panel-volume-toggle svg{transition:transform .2s}.ai-chapter-panel-volume-toggle svg.collapsed{transform:rotate(-90deg)}.ai-chapter-panel-volume-toggle small{color:var(--muted);margin-left:auto;font-size:9px}.ai-chapter-panel-item{border-left:2px solid #0000;gap:4px;padding:7px 6px;display:grid}.ai-chapter-panel-item.active{background:#345a800f;border-left-color:#345a80}.ai-chapter-panel-select{min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:24px minmax(0,1fr);gap:6px;padding:0;display:grid}.ai-chapter-panel-select>span:last-child{gap:2px;min-width:0;display:grid}.ai-chapter-panel-select strong,.ai-chapter-panel-select small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-chapter-panel-select strong{font-size:10px}.ai-chapter-panel-select small{color:var(--muted);font-size:9px;line-height:1.4}.ai-chapter-panel-order{color:var(--primary);font-variant-numeric:tabular-nums;font-size:9px}.ai-chapter-panel-item footer{gap:4px;padding-left:30px;display:flex}.ai-chapter-panel-item footer button{border:1px solid var(--line);min-height:21px;color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:3px;padding:0 5px;font-size:8px;display:inline-flex}.ai-chapter-panel-item footer button:hover{border-color:var(--line-strong);color:var(--ink)}.ai-chapter-panel-empty{color:var(--muted);text-align:center;justify-items:center;gap:8px;margin:auto;padding:24px 12px;font-size:10px;display:grid}.ai-asset-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:72px;padding:14px 14px 14px 16px;display:flex}.ai-asset-heading{align-items:center;gap:9px;min-width:0;display:flex}.ai-asset-heading-icon{width:30px;height:30px;color:var(--moss);background:#4a684012;border:1px solid #4a68402e;border-radius:8px;flex:none;place-items:center;display:grid}.ai-asset-heading>div{gap:3px;min-width:0;display:grid}.ai-asset-heading .eyebrow{margin:0}.ai-asset-heading h2{color:var(--ink);font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;font-weight:600;line-height:1.3;overflow:hidden}.ai-asset-search{border:1px solid var(--line);min-height:32px;color:var(--muted);border-radius:6px;align-items:center;gap:7px;margin:14px 14px 10px;padding:0 9px;transition:border-color .2s,color .2s;display:flex}.ai-asset-search:focus-within{border-color:rgba(var(--primary-rgb),.45);color:var(--ink-soft)}.ai-asset-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:0;font-size:10px}.ai-asset-search input::placeholder{color:var(--muted)}.ai-asset-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:0 14px 12px;display:grid}.ai-asset-tabs button{min-width:0;min-height:30px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:5px;padding:0 7px;font-size:10px;transition:border-color .2s,color .2s,background-color .2s;display:flex}.ai-asset-tabs button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-asset-tabs button em{color:var(--muted);margin-left:auto;font-size:10px;font-style:normal}.ai-asset-tabs button:hover{background:var(--fill);color:var(--ink-soft)}.ai-asset-tabs button.active{color:var(--moss);background:#4a684014;border-color:#4a684033;font-weight:700}.ai-asset-tabs button.active em{color:var(--moss)}.ai-asset-list{scrollbar-color:var(--line-strong) transparent;scrollbar-width:thin;align-content:start;gap:4px;min-height:0;padding:0 10px 10px;display:grid;overflow-y:auto}.ai-asset-list::-webkit-scrollbar{width:7px}.ai-asset-list::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:padding-box;border:2px solid #0000;border-radius:8px}.ai-asset-item{min-width:0;color:var(--ink-soft);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:26px minmax(0,1fr) 14px;align-items:start;gap:8px;padding:9px 7px;transition:border-color .2s,background-color .2s,color .2s;display:grid}.ai-asset-item:hover{border-color:var(--line);background:var(--fill);color:var(--ink)}.ai-asset-item-mark{background:var(--fill);width:26px;height:26px;color:var(--muted);border-radius:6px;place-items:center;display:grid}.ai-asset-item:hover .ai-asset-item-mark{background:var(--paper);color:var(--moss)}.ai-asset-item-copy{gap:3px;min-width:0;display:grid}.ai-asset-item-copy strong,.ai-asset-item-copy small,.ai-asset-item-copy em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-asset-item-copy strong{color:var(--ink);font-size:11px;font-weight:700}.ai-asset-item-copy small{color:var(--muted);font-size:9px}.ai-asset-item-copy em{color:var(--ink-soft);font-size:9px;font-style:normal}.ai-asset-item-arrow{color:var(--line-strong);margin-top:6px;transition:color .2s,transform .2s}.ai-asset-item:hover .ai-asset-item-arrow{color:var(--moss);transform:translate(2px)}.ai-asset-empty{color:var(--muted);text-align:center;justify-items:center;gap:6px;padding:30px 12px;display:grid}.ai-asset-empty span{color:var(--ink-soft);font-size:11px}.ai-asset-empty small{font-size:9px}.ai-asset-empty--no-work{flex:auto;align-content:center;min-height:0;padding:2rem 1rem}.ai-asset-empty--no-work span{max-width:12rem;line-height:1.45}.ai-asset-empty--no-work small{max-width:13rem;line-height:1.5}.ai-asset-footer{border-top:1px solid var(--line);color:var(--muted);text-align:center;margin-top:auto;padding:10px 14px 12px;font-size:9px}.ai-conversation-dialogue{border:1px solid var(--line-strong);background:var(--paper);border-radius:10px;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden;box-shadow:0 6px 20px #2125290a}.ai-chat-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:14px 22px;display:flex}.ai-chat-header-title{align-items:center;gap:11px;min-width:0;display:flex}.ai-chat-header-icon{border:1px solid rgba(var(--primary-rgb),.18);background:rgba(var(--primary-rgb),.07);width:32px;height:32px;color:var(--primary);border-radius:8px;flex:none;place-items:center;display:grid}.ai-chat-header-title>div{gap:3px;min-width:0;display:grid}.ai-chat-header-title .eyebrow{margin:0}.ai-chat-header-title h1{color:var(--ink);font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:16px;font-weight:600;line-height:1.35;overflow:hidden}.ai-chat-header-mode{color:var(--muted);flex:none;align-items:center;gap:6px;font-size:10px;font-weight:700;display:inline-flex}.ai-chat-header-mode i{background:var(--success);border-radius:50%;width:6px;height:6px}.ai-chat-template-context{border-bottom:1px solid var(--line);background:rgba(var(--primary-rgb),.025);gap:7px;margin:0;padding:13px 22px;display:grid}.ai-chat-template-context>div{color:var(--primary);align-items:center;gap:7px;display:flex}.ai-chat-template-context>div>span{align-items:baseline;gap:7px;min-width:0;display:inline-flex}.ai-chat-template-context strong{color:var(--ink-soft);font-size:10px;font-weight:700}.ai-chat-template-context small{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.ai-chat-template-context p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:10px;line-height:1.55;display:-webkit-box;overflow:hidden}.ai-chat-thread{scrollbar-color:var(--line-strong) transparent;scrollbar-width:thin;flex:auto;align-content:start;gap:22px;width:100%;min-height:0;padding:26px clamp(22px,5vw,72px) 34px;display:grid;overflow-y:auto}.ai-chat-thread::-webkit-scrollbar{width:8px}.ai-chat-thread::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:padding-box;border:2px solid #0000;border-radius:8px}.ai-chat-latest-button{z-index:3;border:1px solid rgba(var(--primary-rgb),.26);background:var(--paper);min-height:2rem;color:var(--primary-hover);cursor:pointer;border-radius:999px;align-items:center;gap:.25rem;padding:0 .75rem;font-size:.6875rem;font-weight:700;transition:border-color .2s,background-color .2s,transform .1s ease-out;display:inline-flex;position:absolute;bottom:10rem;right:50%;transform:translate(50%);box-shadow:0 .375rem 1rem #2125291f}.ai-chat-latest-button:hover{border-color:var(--primary);background:rgba(var(--primary-rgb),.06)}.ai-chat-latest-button:active{transform:translate(50%)scale(.97)}.ai-chat-message{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:12px;display:grid}.ai-chat-message-column{min-width:0;max-width:100%}.ai-chat-message--user{justify-content:flex-end;display:flex}.ai-chat-message--user .ai-chat-message-column{width:min(520px,84%)}.ai-chat-avatar{background:rgba(var(--primary-rgb),.1);width:28px;height:28px;color:var(--primary);border-radius:50%;place-items:center;display:grid}.ai-chat-message-body{min-width:0}.ai-chat-thinking{border-left:2px solid rgba(var(--primary-rgb),.35);width:min(680px,100%);margin:0 0 12px}.ai-chat-thinking-toggle{width:100%;min-height:26px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0 0 0 10px;font-size:10px;font-weight:700;display:flex}.ai-chat-thinking-toggle small{color:var(--primary);font-size:9px;font-weight:600}.ai-chat-thinking-toggle svg{color:var(--muted);margin-left:auto;transition:transform .2s,color .2s}.ai-chat-thinking-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.ai-chat-thinking-toggle:hover:not(:disabled){color:var(--ink)}.ai-chat-thinking-toggle:hover:not(:disabled) svg{color:var(--primary)}.ai-chat-thinking-toggle:disabled{cursor:default}.ai-chat-thinking-content{border:1px solid var(--line);background:var(--fill);color:var(--muted);margin:3px 0 0 10px;padding:8px 11px;font-size:12px;line-height:1.7}.ai-chat-thinking-content p{margin:0 0 7px}.ai-chat-thinking-content p:last-child{margin-bottom:0}.ai-chat-message-body>p{max-width:680px;color:var(--ink-soft);font-family:var(--font-display);white-space:pre-line;margin:0;font-size:14px;line-height:1.8}.ai-chat-markdown{overflow-wrap:anywhere;max-width:680px;color:var(--ink-soft);font-family:var(--font-display);font-size:14px;line-height:1.8}.ai-chat-message--user .ai-chat-markdown{color:var(--ink);font-family:inherit;font-size:13px;line-height:1.75}.ai-chat-markdown p{margin:0 0 10px}.ai-chat-markdown p:last-child{margin-bottom:0}.ai-chat-markdown h1,.ai-chat-markdown h2,.ai-chat-markdown h3,.ai-chat-markdown h4,.ai-chat-markdown h5,.ai-chat-markdown h6{color:var(--ink);font-family:var(--font-display);margin:18px 0 8px;line-height:1.4}.ai-chat-markdown h1:first-child,.ai-chat-markdown h2:first-child,.ai-chat-markdown h3:first-child,.ai-chat-markdown h4:first-child,.ai-chat-markdown h5:first-child,.ai-chat-markdown h6:first-child{margin-top:0}.ai-chat-markdown h1{font-size:20px}.ai-chat-markdown h2{font-size:18px}.ai-chat-markdown h3{font-size:16px}.ai-chat-markdown h4,.ai-chat-markdown h5,.ai-chat-markdown h6{font-size:14px}.ai-chat-markdown ul,.ai-chat-markdown ol{margin:8px 0 12px;padding-left:22px}.ai-chat-markdown li+li{margin-top:4px}.ai-chat-markdown blockquote{border-left:3px solid var(--line-strong);background:var(--fill);color:var(--ink-soft);margin:12px 0;padding:8px 12px}.ai-chat-markdown blockquote p{margin:0}.ai-chat-markdown hr{border:0;border-top:1px solid var(--line);margin:18px 0}.ai-chat-markdown a{color:var(--primary-hover);text-decoration:none}.ai-chat-markdown a:hover{text-decoration:underline}.ai-chat-markdown pre{border:1px solid var(--line);background:var(--fill);max-width:100%;color:var(--ink);white-space:pre;border-radius:6px;margin:12px 0;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.65;overflow-x:auto}.ai-chat-markdown code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.ai-chat-markdown :not(pre)>code{border:1px solid var(--line);background:var(--fill);color:var(--ink);border-radius:4px;padding:2px 5px;font-size:.9em}.ai-chat-markdown table{border-collapse:collapse;max-width:100%;margin:12px 0;font-size:12px;line-height:1.5;display:block;overflow-x:auto}.ai-chat-markdown th,.ai-chat-markdown td{border:1px solid var(--line-strong);text-align:left;min-width:90px;padding:7px 10px}.ai-chat-markdown th{background:var(--fill);color:var(--ink);font-weight:700}.ai-chat-markdown img{border:1px solid var(--line);object-fit:contain;border-radius:6px;max-width:min(560px,100%);max-height:420px;margin:12px 0;display:block}.ai-chat-message--user .ai-chat-message-body{border:1px solid rgba(var(--primary-rgb),.16);background:rgba(var(--primary-rgb),.075);border-radius:10px 3px 10px 10px;max-width:100%;padding:12px 15px}.ai-chat-message--user .ai-chat-message-body>p{color:var(--ink);font-family:inherit;font-size:13px;line-height:1.75}.ai-chat-message-editor{gap:8px;max-width:680px;display:grid}.ai-chat-message-editor textarea{border:1px solid rgba(var(--primary-rgb),.42);background:var(--paper);width:100%;min-height:84px;max-height:260px;color:var(--ink);font-family:var(--font-body);resize:vertical;border-radius:7px;outline:0;padding:10px 11px;font-size:13px;line-height:1.7}.ai-chat-message-editor textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.09)}.ai-chat-message-editor footer{justify-content:flex-end;gap:6px;display:flex}.ai-chat-message-edit-button{border:1px solid var(--line);background:var(--paper);min-height:27px;color:var(--ink-soft);cursor:pointer;border-radius:5px;align-items:center;gap:4px;padding:0 8px;font-size:10px;display:inline-flex}.ai-chat-message-edit-button:hover{border-color:var(--line-strong);color:var(--ink)}.ai-chat-message-edit-button--primary{border-color:var(--primary);background:var(--primary);color:var(--paper)}.ai-chat-message-edit-button--primary:hover{border-color:var(--primary-hover);background:var(--primary-hover);color:var(--paper)}.ai-chat-message-state,.ai-chat-message-error{align-items:center;gap:6px;max-width:680px;margin:8px 0 0;font-size:11px;line-height:1.55;display:flex}.ai-chat-message-state{color:var(--muted)}.ai-chat-message-state-dot{background:var(--line-strong);border-radius:50%;flex:none;width:6px;height:6px}.ai-chat-message-state-dot--active{background:var(--primary);animation:1.2s ease-in-out infinite ai-chat-state-pulse}.ai-chat-message-error{color:var(--danger)}.ai-chat-message-footer{justify-content:space-between;align-items:center;gap:8px;width:min(680px,100%);min-height:24px;margin-top:7px;display:flex}.ai-chat-message--user .ai-chat-message-footer{justify-content:flex-end}.ai-chat-message--assistant .ai-chat-message-footer{justify-content:flex-start}.ai-chat-message-footer-state{color:var(--muted);font-size:9px}.ai-chat-message-actions{opacity:1;gap:2px;display:flex}.ai-chat-message-action{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;transition:background-color .2s,color .2s;display:grid}.ai-chat-message-action:hover:not(:disabled){background:var(--fill);color:var(--ink)}.ai-chat-message-action--danger:hover:not(:disabled){color:var(--danger);background:#f03e3e14}@keyframes ai-chat-state-pulse{0%,to{opacity:.35}50%{opacity:1}}.ai-chat-reference-chips{flex-wrap:wrap;align-items:center;gap:5px;margin-top:10px;display:flex}.ai-chat-reference-chips>span{color:var(--muted);font-size:9px;font-weight:700}.ai-chat-reference-chips>i{border:1px solid rgba(var(--primary-rgb),.18);background:rgba(var(--primary-rgb),.06);max-width:100%;color:var(--ink-soft);border-radius:4px;align-items:center;gap:4px;padding:3px 6px;font-size:9px;font-style:normal;display:inline-flex;overflow:hidden}.ai-chat-reference-chips em{color:var(--primary);flex:none;font-size:8px;font-style:normal;font-weight:700}.ai-chat-reference-chips small{color:var(--muted);flex:none;font-size:8px}.ai-chat-attachments{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.ai-chat-image{border:1px solid var(--line);background:var(--surface);border-radius:7px;width:138px;margin:0;overflow:hidden}.ai-chat-image img{object-fit:cover;width:100%;height:98px;display:block}.ai-chat-image figcaption{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding:6px 8px;font-size:9px;line-height:1.4;overflow:hidden}.ai-chat-file{border:1px solid var(--line);background:var(--surface);min-width:min(190px,100%);color:var(--primary);border-radius:7px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;padding:9px 10px;text-decoration:none;display:grid}.ai-chat-file>span{gap:2px;min-width:0;display:grid}.ai-chat-file strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.ai-chat-file small{color:var(--muted);font-size:9px}.ai-chat-suggestions{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.ai-chat-suggestions button{border:1px solid var(--line);background:var(--paper);min-height:30px;color:var(--ink-soft);cursor:pointer;border-radius:15px;padding:0 10px;font-size:10px;transition:border-color .2s,color .2s,background-color .2s,transform .1s ease-out}.ai-chat-suggestions button:hover{border-color:rgba(var(--primary-rgb),.45);background:rgba(var(--primary-rgb),.04);color:var(--primary)}.ai-chat-suggestions button:active,.ai-chat-send-button:active{transform:scale(.96)}.ai-chat-foundation{border-top:1px solid var(--line);margin-top:18px;padding:18px 0 0}.ai-chat-foundation>header{gap:6px;display:grid}.ai-chat-foundation>header span{color:var(--primary);font-size:10px;font-weight:700}.ai-chat-foundation>header strong{font-family:var(--font-display);font-size:23px;font-weight:600}.ai-chat-logline{color:var(--ink-soft);font-family:var(--font-display);margin:13px 0 16px;font-size:13px;line-height:1.8}.ai-chat-foundation dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:0;display:grid}.ai-chat-foundation dl>div{border-top:1px solid var(--line);padding:11px 0}.ai-chat-foundation dt,.ai-chat-foundation dd{margin:0}.ai-chat-foundation dt{color:var(--primary);margin-bottom:5px;font-size:10px;font-weight:700}.ai-chat-foundation dd{color:var(--ink-soft);font-size:11px;line-height:1.7}.ai-chat-foundation footer{border-top:1px solid var(--line);justify-content:flex-end;gap:12px;margin-top:16px;padding-top:15px;display:flex}.ai-chat-foundation footer .text-button,.ai-chat-foundation footer .primary-button{align-items:center;gap:5px;display:inline-flex}.ai-chat-foundation footer .text-button{color:var(--muted);padding:0}.ai-chat-composer{box-sizing:border-box;border:1px solid var(--line-strong);background:var(--paper);border-radius:9px;width:calc(100% - 36px);margin:0 18px 18px;padding:12px 12px 10px 14px;display:grid;position:relative;box-shadow:0 4px 14px #2125290f}.ai-chat-composer .writing-tiptap-shell[data-empty=true]:before,.ai-chat-composer .writing-tiptap-editor{font-size:12px}.ai-chat-composer .writing-tiptap-editor{line-height:1.6}.ai-chat-composer .writing-tiptap-mention{font-size:11px}.ai-chat-composer .writing-tiptap-mention[data-snapshot=true]:after{font-size:8px}.ai-chat-composer .writing-asset-picker{max-height:16.5rem}.ai-chat-composer .writing-asset-picker>header span{font-size:.6875rem}.ai-chat-composer .writing-asset-picker>header small,.ai-chat-composer .writing-reference-mode button,.ai-chat-composer .writing-asset-option i,.ai-chat-composer .writing-asset-add-category{font-size:.5625rem}.ai-chat-composer .writing-asset-filter button,.ai-chat-composer .writing-asset-search input,.ai-chat-composer .writing-asset-option>span,.ai-chat-composer .writing-asset-option small,.ai-chat-composer .writing-asset-empty{font-size:.625rem}.ai-chat-composer .writing-asset-option{min-height:3.125rem}.ai-chat-composer .writing-asset-option strong{font-size:.6875rem}.ai-file-input{display:none}.ai-pending-attachments{scrollbar-width:thin;gap:8px;padding:0 0 10px;display:flex;overflow-x:auto}.ai-pending-attachment{border:1px solid var(--line);background:var(--fill);min-width:168px;color:var(--muted);border-radius:7px;grid-template-columns:32px minmax(0,1fr) 20px;align-items:center;gap:7px;padding:6px;display:grid}.ai-pending-attachment>img{object-fit:cover;border-radius:4px;width:32px;height:32px}.ai-pending-attachment>span{gap:2px;min-width:0;display:grid}.ai-pending-attachment strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.ai-pending-attachment small{color:var(--muted);font-size:9px}.ai-pending-attachment button,.ai-chat-tool-button{color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.ai-pending-attachment button{border-radius:50%;width:20px;height:20px}.ai-pending-attachment button:hover,.ai-chat-tool-button:hover{color:var(--primary)}.ai-chat-composer textarea{width:100%;min-height:48px;max-height:160px;color:var(--ink);font-family:var(--font-display);resize:vertical;background:0 0;border:0;outline:0;padding:3px 2px;font-size:13px;line-height:1.65}.ai-chat-composer textarea::placeholder{color:var(--muted)}.ai-chat-composer-actions,.ai-chat-composer-actions>div{align-items:center;display:flex}.ai-chat-composer-actions{border-top:1px solid var(--line);justify-content:space-between;gap:16px;padding-top:8px}.ai-chat-composer-actions>span{color:var(--muted);font-size:10px}.ai-chat-composer-actions>div{gap:10px}.ai-chat-tool-button{border-radius:6px;width:30px;height:30px;transition:color .2s,background-color .2s,transform .1s ease-out}.ai-chat-tool-button:hover{background:rgba(var(--primary-rgb),.08)}.ai-chat-tool-button:active,.ai-pending-attachment button:active{transform:scale(.92)}.ai-chat-draft-button{min-height:30px;color:var(--primary);align-items:center;gap:5px;padding:0;font-size:10px;display:inline-flex}.ai-chat-draft-button:disabled{color:var(--muted);cursor:not-allowed}.ai-chat-send-button{border:1px solid var(--primary);background:var(--primary);color:#fff;cursor:pointer;border-radius:7px;place-items:center;width:32px;height:32px;padding:0;transition:background-color .2s,transform .1s ease-out;display:grid}.ai-chat-send-button:hover:not(:disabled){background:var(--primary-hover)}.ai-chat-send-button--stop{color:var(--danger);background:#f03e3e14;border-color:#f03e3e4d}.ai-chat-send-button--stop:hover:not(:disabled){border-color:var(--danger);color:var(--danger);background:#f03e3e24}.ai-chat-send-button:disabled{border-color:var(--line);background:var(--fill);color:var(--muted);cursor:not-allowed}.ai-novel-info{top:calc(var(--topbar-height) + 22px);min-width:0;min-height:0;max-height:calc(100vh - var(--topbar-height) - 46px);box-sizing:border-box;border:1px solid var(--line-strong);background:var(--paper);scrollbar-color:var(--line-strong) transparent;scrollbar-width:thin;border-radius:10px;flex-direction:column;align-self:stretch;padding:22px 20px 24px;display:flex;position:sticky;overflow-y:auto;box-shadow:0 6px 20px #2125290a}.ai-novel-info::-webkit-scrollbar{width:8px}.ai-novel-info::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:padding-box;border:2px solid #0000;border-radius:8px}.ai-novel-info--empty{justify-content:center;align-items:center;min-height:430px}.ai-novel-empty-state{color:var(--muted);text-align:center;justify-items:center;gap:9px;display:grid}.ai-novel-empty-state>svg{color:var(--primary);margin-bottom:4px}.ai-novel-empty-state strong{color:var(--ink);font-family:var(--font-display);font-size:17px;font-weight:600}.ai-novel-empty-state span{max-width:190px;font-size:10px;line-height:1.6}.ai-novel-select-button,.ai-novel-change-button{border:1px solid var(--primary);background:var(--primary);min-height:32px;color:var(--paper);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0 12px;font-size:11px;font-weight:700;display:inline-flex}.ai-novel-select-button{min-width:112px;margin-top:7px}.ai-novel-select-button:hover,.ai-novel-change-button:hover{border-color:var(--primary-hover);background:var(--primary-hover)}.ai-novel-info>header>div{min-width:0}.ai-novel-info>header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.ai-novel-change-button{border-color:var(--line-strong);background:var(--paper);min-height:26px;color:var(--ink-soft);padding:0 8px;font-size:10px}.ai-novel-change-button:hover{color:var(--paper)}.ai-novel-info>header{border-bottom:1px solid #1f23281a;padding-bottom:16px}.ai-novel-info h2{font-family:var(--font-display);margin:0;font-size:24px;font-weight:600;line-height:1.3}.ai-novel-summary{border-bottom:1px solid #1f23281a;padding:18px 0 20px}.ai-novel-summary>span{color:var(--primary);margin-bottom:8px;font-size:10px;font-weight:700;display:block}.ai-novel-summary strong{color:var(--ink);font-size:12px;line-height:1.7;display:block}.ai-novel-summary p{color:var(--ink-soft);font-family:var(--font-display);-webkit-line-clamp:5;-webkit-box-orient:vertical;margin:10px 0 0;font-size:12px;line-height:1.75;display:-webkit-box;overflow:hidden}.ai-novel-progress{border-bottom:1px solid var(--line);gap:.625rem;padding:1.125rem 0 1rem;display:grid}.ai-novel-progress>header,.ai-novel-progress-copy,.ai-novel-latest-chapter>header,.ai-novel-latest-chapter>div{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.ai-novel-progress>header>span,.ai-novel-latest-chapter>header>span,.ai-novel-metrics span,.ai-novel-details dt{color:var(--muted);font-size:.625rem;font-weight:700}.ai-novel-progress>header>strong{color:var(--primary);font-size:.6875rem}.ai-novel-progress-track{background:var(--fill);border-radius:99rem;height:.3125rem;overflow:hidden}.ai-novel-progress-track>i{border-radius:inherit;background:var(--primary);height:100%;transition:width .2s;display:block}.ai-novel-progress-copy>strong{color:var(--ink);font-family:var(--font-display);font-size:.9375rem;font-weight:600}.ai-novel-progress-copy>span{color:var(--muted);font-size:.625rem}.ai-novel-metrics{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));padding:1rem 0;display:grid}.ai-novel-metrics article{gap:.3125rem;min-width:0;display:grid}.ai-novel-metrics article+article{border-left:1px solid var(--line);padding-left:.875rem}.ai-novel-metrics strong{color:var(--ink);font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:1.125rem;font-weight:600;line-height:1.2;overflow:hidden}.ai-novel-metrics small{color:var(--muted);font-size:.5625rem}.ai-novel-latest-chapter{border-bottom:1px solid var(--line);gap:.5rem;padding:1rem 0;display:grid}.ai-novel-latest-chapter>header>small{color:var(--muted);font-size:.5625rem}.ai-novel-latest-chapter>div>em,.ai-novel-latest-chapter>div>span{color:var(--primary);font-size:.625rem;font-style:normal}.ai-novel-latest-chapter>div>span{color:var(--ink-soft)}.ai-novel-latest-chapter>strong{color:var(--ink);font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:600;overflow:hidden}.ai-novel-latest-chapter>p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.625rem;line-height:1.5;overflow:hidden}.ai-novel-latest-chapter>p.ai-novel-latest-empty{white-space:normal;overflow:visible}.ai-novel-details{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem;margin:0;display:grid}.ai-novel-details>div{border-bottom:1px solid var(--line);gap:.375rem;padding:1.125rem 0;display:grid}.ai-novel-details>div:nth-child(3){grid-column:1/-1}.ai-novel-details dt,.ai-novel-details dd{margin:0}.ai-novel-details dt{color:var(--muted);font-size:.625rem;font-weight:700}.ai-novel-details dd{color:var(--ink);overflow-wrap:anywhere;font-size:.75rem;line-height:1.7}.ai-story-change-list{border-top:1px solid var(--line);gap:8px;margin-top:18px;padding-top:18px;display:grid}.ai-story-change-list>header{justify-content:space-between;align-items:center;gap:8px;display:flex}.ai-story-change-list>header>div{gap:3px;display:grid}.ai-story-change-list>header strong{color:var(--ink-soft);font-size:11px}.ai-story-change-list>header small{color:var(--muted);font-size:9px}.ai-story-change-list>header>button,.ai-story-change-item footer button{border:1px solid var(--line);background:var(--paper);width:25px;height:25px;color:var(--muted);cursor:pointer;border-radius:5px;place-items:center;padding:0;display:grid}.ai-story-change-list>header>button:hover,.ai-story-change-item footer button:hover{border-color:rgba(var(--primary-rgb),.42);color:var(--primary)}.ai-story-change-item{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:9px 0;display:flex}.ai-story-change-item>div{gap:5px;min-width:0;display:grid}.ai-story-change-item>div>strong{color:var(--ink-soft);font-size:10px}.ai-story-change-item p{min-width:0;color:var(--muted);align-items:center;gap:4px;margin:0;font-size:10px;line-height:1.45;display:flex}.ai-story-change-item p>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-story-change-item p>span:last-child{color:var(--primary);font-weight:700}.ai-story-change-item footer{flex:none;gap:4px;display:inline-flex}.ai-story-change-item footer button:last-child{border-color:rgba(var(--primary-rgb),.24);color:var(--primary)}.ai-builder{grid-template-columns:292px minmax(0,1fr);align-items:start;display:grid}.ai-config-panel{top:var(--topbar-height);max-height:calc(100vh - var(--topbar-height));border-right:1px solid var(--line);background:var(--paper);grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:sticky}.ai-config-panel>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:0 18px;display:flex}.ai-config-panel>header>div{align-items:center;gap:9px;display:flex}.ai-config-panel>header span{color:var(--primary);font-family:var(--font-display);font-size:10px;font-weight:700}.ai-config-panel>header strong{font-size:12px}.ai-config-panel>header button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:10px;font-weight:700}.ai-config-panel>header button:hover{color:var(--ink)}.ai-config-scroll{gap:21px;padding:20px 18px 28px;display:grid;overflow-y:auto}.ai-field{gap:8px;display:grid}.ai-field>span,.ai-choice-group legend,.ai-range-field strong{color:var(--ink-soft);font-size:11px;font-weight:700}.ai-field input,.ai-field textarea,.ai-field select{background:var(--fill);resize:vertical;border:1px solid #0000;border-radius:8px;outline:0;width:100%;min-height:42px;padding:10px 11px;font-size:12px;line-height:1.65;transition:border-color .2s,background-color .2s}.ai-field input:focus,.ai-field textarea:focus,.ai-field select:focus{border-color:rgba(var(--primary-rgb),.55);background:var(--paper)}.ai-choice-group{border:0;min-width:0;margin:0;padding:0}.ai-choice-group legend{margin-bottom:9px;padding:0}.ai-chip-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.ai-chip-grid button,.ai-trait-list button,.ai-genre-tabs button{border:1px solid var(--line);background:var(--paper);color:var(--muted);cursor:pointer;font-size:10px;font-weight:700;transition:color .2s,border-color .2s,background-color .2s,transform .1s ease-out}.ai-chip-grid button{border-radius:6px;min-height:31px}.ai-chip-grid button:hover,.ai-chip-grid button.active,.ai-trait-list button:hover,.ai-trait-list button.active,.ai-genre-tabs button:hover,.ai-genre-tabs button.active{border-color:rgba(var(--primary-rgb),.4);color:var(--primary);background:rgba(var(--primary-rgb),.07)}.ai-chip-grid button:active,.ai-trait-list button:active,.ai-genre-tabs button:active,.ai-template-card:active,.ai-entry-orb:active,.ai-work-picker button:active{transform:scale(.98)}.ai-trait-list{flex-wrap:wrap;gap:7px;display:flex}.ai-trait-list button{border-radius:15px;align-items:center;gap:4px;min-height:29px;padding:0 8px;display:inline-flex}.ai-range-field{gap:10px;display:grid}.ai-range-field>span,.ai-range-field small{justify-content:space-between;align-items:center;gap:12px;display:flex}.ai-range-field output{color:var(--primary);font-size:11px;font-weight:700}.ai-range-field input{width:100%;accent-color:var(--primary)}.ai-range-field small{color:var(--muted);font-size:9px}.ai-generate-button{border:1px solid var(--primary);background:var(--primary);color:#fff;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:46px;margin:12px 18px 18px;font-size:12px;font-weight:700;transition:background-color .2s,transform .1s ease-out;display:inline-flex}.ai-generate-button:hover{background:var(--primary-hover)}.ai-generate-button:active{transform:scale(.98)}.ai-template-workspace{min-width:0;padding:30px 32px 72px}.ai-foundation-result{border-top:2px solid var(--primary);border-bottom:1px solid var(--line);margin-bottom:34px;padding:24px 0 27px}.ai-foundation-result>header,.ai-section-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.ai-foundation-result h2,.ai-section-header h2,.ai-existing-hero h2,.ai-existing-actions h3,.ai-launch-empty h2{font-family:var(--font-display);margin:0;font-weight:600}.ai-foundation-result h2{font-size:26px}.ai-logline{max-width:800px;color:var(--ink-soft);font-family:var(--font-display);margin:19px 0 23px;font-size:15px;line-height:1.85}.ai-foundation-result dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:0;display:grid}.ai-foundation-result dl>div{border-top:1px solid var(--line);padding:14px 0}.ai-foundation-result dt,.ai-foundation-result dd{margin:0}.ai-foundation-result dt{color:var(--primary);margin-bottom:6px;font-size:10px;font-weight:700}.ai-foundation-result dd{color:var(--ink-soft);font-size:12px;line-height:1.75}.ai-section-header>div>span{color:var(--muted);margin-top:8px;font-size:11px;display:block}.ai-section-header h2{font-size:24px}.ai-template-search{border:1px solid var(--line);background:var(--paper);min-width:210px;min-height:36px;color:var(--muted);border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.ai-template-search:focus-within{border-color:rgba(var(--primary-rgb),.45);color:var(--primary)}.ai-template-search input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:11px}.ai-genre-tabs{scrollbar-width:none;gap:7px;padding:20px 0 16px;display:flex;overflow-x:auto}.ai-genre-tabs::-webkit-scrollbar{display:none}.ai-genre-tabs button{border-radius:15px;flex:none;min-height:30px;padding:0 11px}.ai-template-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.ai-template-card{border:1px solid var(--line);background:var(--paper);min-width:0;min-height:190px;color:var(--ink);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:42px minmax(0,1fr);align-content:start;gap:12px;padding:17px;transition:border-color .2s,background-color .2s,transform .1s ease-out;display:grid;position:relative}.ai-template-card:hover{border-color:var(--line-strong);background:#fff}.ai-template-card.active{border-color:rgba(var(--primary-rgb),.55);background:rgba(var(--primary-rgb),.045)}.ai-template-mark{background:rgba(var(--primary-rgb),.1);width:42px;height:42px;color:var(--primary);font-family:var(--font-display);border-radius:8px;place-items:center;font-size:18px;font-weight:700;display:grid}.ai-template-card:nth-child(3n+2) .ai-template-mark{color:var(--moss);background:#4a68401a}.ai-template-card:nth-child(3n) .ai-template-mark{color:var(--vermilion);background:#c04a2e1a}.ai-template-copy,.ai-template-copy>span:first-child{display:flex}.ai-template-copy{flex-direction:column;min-width:0}.ai-template-copy>span:first-child{align-items:center;gap:7px;padding-right:18px}.ai-template-copy strong{overflow-wrap:anywhere;font-family:var(--font-display);font-size:16px}.ai-template-copy small{color:var(--primary);font-size:9px;font-weight:700}.ai-template-copy em{min-height:57px;color:var(--ink-soft);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:12px;font-size:11px;font-style:normal;line-height:1.75;display:-webkit-box;overflow:hidden}.ai-template-tags{flex-wrap:wrap;gap:5px;margin-top:14px;display:flex}.ai-template-tags i{background:var(--fill);color:var(--muted);border-radius:4px;padding:3px 6px;font-size:9px;font-style:normal}.ai-template-check{color:var(--primary);position:absolute;top:17px;right:15px}.ai-template-empty{min-height:220px;color:var(--muted);place-items:center;font-size:12px;display:grid}.ai-existing-workspace{width:min(1040px,100%);margin:0 auto;padding:58px 48px 80px}.ai-existing-hero{border-bottom:1px solid var(--line);grid-template-columns:124px minmax(0,1fr);align-items:end;gap:28px;padding-bottom:36px;display:grid}.ai-existing-hero .cover{width:124px}.ai-existing-hero h2{font-size:34px}.ai-existing-hero p:last-child{max-width:680px;color:var(--ink-soft);font-family:var(--font-display);margin:12px 0 0;font-size:14px;line-height:1.8}.ai-existing-actions{padding-top:38px}.ai-existing-actions h3{font-size:24px}.ai-existing-actions nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:22px;display:grid}.ai-existing-actions a{border-right:1px solid var(--line);min-width:0;color:var(--ink);grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:22px 18px;text-decoration:none;transition:background-color .2s,transform .1s ease-out;display:grid}.ai-existing-actions a:last-child{border-right:0}.ai-existing-actions a:hover{background:var(--paper)}.ai-existing-actions a:active{transform:scale(.98)}.ai-existing-actions a>span{gap:5px;display:grid}.ai-existing-actions strong{font-size:12px}.ai-existing-actions small{color:var(--muted);font-size:10px;line-height:1.5}.ai-launch-empty{min-height:calc(100vh - var(--topbar-height));color:var(--muted);place-content:center;justify-items:center;gap:14px;display:grid}.ai-launch-empty h2{color:var(--ink);font-size:22px}.dialog-content.ai-entry-dialog{-webkit-backdrop-filter:blur(28px)saturate(140%);backdrop-filter:blur(28px)saturate(140%);background:#ffffffeb;border-color:#ffffff80;width:min(680px,100vw - 32px);padding:28px;overflow:hidden}.dialog-content.ai-novel-selector-dialog{-webkit-backdrop-filter:blur(28px)saturate(140%);backdrop-filter:blur(28px)saturate(140%);background:#fffffff0;border-color:#ffffff80;width:min(620px,100vw - 32px);padding:26px;overflow:hidden}.ai-novel-selector-list{gap:8px;max-height:min(500px,100vh - 190px);padding-top:16px;display:grid;overflow-y:auto}.ai-novel-selector-option{border:1px solid var(--line);background:var(--paper);min-width:0;color:var(--ink);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:11px;padding:12px;transition:border-color .2s,background-color .2s,transform .1s ease-out;display:grid}.ai-novel-selector-option:hover,.ai-novel-selector-option.active{border-color:rgba(var(--primary-rgb),.42);background:rgba(var(--primary-rgb),.045)}.ai-novel-selector-option:active{transform:scale(.99)}.ai-novel-selector-mark{background:var(--fill);width:34px;height:34px;color:var(--muted);border-radius:7px;place-items:center;display:grid}.ai-novel-selector-option.active .ai-novel-selector-mark{background:rgba(var(--primary-rgb),.1);color:var(--primary)}.ai-novel-selector-copy{gap:4px;min-width:0;display:grid}.ai-novel-selector-copy strong,.ai-novel-selector-copy small,.ai-novel-selector-copy em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-novel-selector-copy strong{font-family:var(--font-display);font-size:14px;font-weight:650}.ai-novel-selector-copy small{color:var(--muted);font-size:10px}.ai-novel-selector-copy em{color:var(--ink-soft);font-size:11px;font-style:normal}.ai-novel-selector-option>svg{color:var(--muted)}.ai-novel-selector-empty{color:var(--muted);text-align:center;margin:28px 0 12px;font-size:12px}.ai-entry-header{grid-template-columns:minmax(0,1fr) 36px;align-items:start;gap:18px;padding-bottom:8px;display:grid}.ai-entry-header:has(.ai-dialog-back){grid-template-columns:auto minmax(0,1fr) 36px}.ai-entry-choices{justify-content:center;gap:44px;padding:38px 12px 22px;display:flex}.ai-entry-orb{border:1px solid rgba(var(--primary-rgb),.28);background:rgba(var(--primary-rgb),.08);width:166px;height:166px;color:var(--primary);cursor:pointer;border-radius:50%;flex:none;place-content:center;justify-items:center;gap:8px;padding:18px;transition:color .2s,border-color .2s,background-color .2s,transform .1s ease-out;display:grid}.ai-entry-orb--conversation{color:var(--moss);background:#4a684014;border-color:#4a68404d}.ai-entry-orb:hover{background:var(--paper);border-color:currentColor}.ai-entry-orb strong{color:var(--ink);font-family:var(--font-display);font-size:17px}.ai-entry-orb span{color:var(--muted);font-size:10px}.ai-dialog-back{min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0 8px;font-size:10px;font-weight:700;display:inline-flex}.ai-dialog-back:hover{color:var(--ink)}.ai-work-picker{gap:8px;max-height:min(470px,100vh - 190px);padding-top:20px;display:grid;overflow-y:auto}.ai-work-picker button{border:1px solid var(--line);background:var(--paper);min-width:0;color:var(--ink);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:44px minmax(0,1fr) 20px;align-items:center;gap:13px;padding:13px;transition:border-color .2s,background-color .2s,transform .1s ease-out;display:grid}.ai-work-picker button:hover{border-color:var(--line-strong);background:var(--surface)}.ai-work-picker button>span:nth-child(2){gap:4px;min-width:0;display:grid}.ai-work-picker strong,.ai-work-picker small,.ai-work-picker em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-work-picker strong{font-family:var(--font-display);font-size:14px}.ai-work-picker small,.ai-work-picker em{color:var(--muted);font-size:10px;font-style:normal}.ai-work-monogram{background:var(--ink);color:#fff;width:44px;height:44px;font-family:var(--font-display);border-radius:7px;place-items:center;display:grid}.ai-work-monogram--moss{background:var(--moss)}.ai-work-monogram--vermilion{background:var(--vermilion)}.dialog-content.character-dialog{border-color:var(--line);background:var(--surface);-webkit-backdrop-filter:blur(28px)saturate(140%);backdrop-filter:blur(28px)saturate(140%);width:min(1080px,100vw - 48px);max-height:min(820px,100vh - 32px);padding:0;overflow:hidden}.character-form{min-height:0;display:grid}.character-dialog .dialog-header{border-bottom-color:var(--line);background:var(--surface);-webkit-backdrop-filter:blur(18px)saturate(130%);backdrop-filter:blur(18px)saturate(130%);padding:22px 24px 18px}.character-form-body{grid-template-columns:250px minmax(0,1fr);gap:28px;max-height:calc(100vh - 190px);padding:24px;display:grid;overflow:auto}.character-core-panel{border-right:1px solid var(--line);align-content:start;align-self:start;gap:22px;padding-right:24px;display:grid;position:sticky;top:0}.core-panel-note{color:var(--muted);margin:0;padding-top:2px;font-size:11px;line-height:1.7}.field>span{color:var(--ink-soft);margin-bottom:8px;font-size:12px;font-weight:700;display:block}.field{min-width:0}.field input,.field textarea,.field select{border:1px solid var(--line);background:var(--fill);width:100%;min-height:44px;color:var(--ink);resize:vertical;border-radius:8px;outline:0;padding:10px 12px;font-size:13px;line-height:1.6;transition:background-color .2s,border-color .2s}.field select{min-height:42px}.field input:focus,.field textarea:focus,.field select:focus{border-color:rgba(var(--primary-rgb),.7);background:var(--surface)}.dynamic-field-section{align-content:start;gap:14px;display:grid}.dynamic-field-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.dynamic-field-heading>div{align-items:baseline;gap:8px;display:flex}.dynamic-field-heading strong{font-size:13px}.dynamic-field-heading span{color:var(--muted);font-size:11px}.dynamic-field-heading .text-button{min-height:34px}.field-editor-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 22px;display:grid}.field-editor{border-top:1px solid var(--line);min-width:0;padding:14px 0 16px}.field-name-row{align-items:center;gap:8px;display:flex}.field-name-row .field-label-input{flex:1}.field-editor .icon-button{width:30px;height:30px;color:var(--muted)}.field-editor .icon-button:hover{color:var(--vermilion);background:#ff6b6b1a;border-color:#ff6b6b73}.field-editor-body{grid-template-columns:1fr;gap:8px;display:grid}.field-label-input,.field-value-input{align-content:start;min-width:0;display:grid}.field-label-input input,.field-value-input textarea{border:1px solid var(--line);background:var(--fill);width:100%;min-height:42px;color:var(--ink);resize:vertical;border-radius:8px;outline:0;padding:9px 11px;font-size:12px;line-height:1.6;transition:background-color .2s,border-color .2s}.field-label-input input:focus,.field-value-input textarea:focus{border-color:rgba(var(--primary-rgb),.7);background:var(--surface)}.empty-field-button{border:1px dashed var(--line-strong);border-radius:var(--radius);min-height:72px;color:var(--muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:700;display:inline-flex}.empty-field-button:hover{border-color:var(--ink);color:var(--ink)}.form-error{color:var(--vermilion);margin:0;font-size:11px}.dialog-overlay{z-index:50;-webkit-backdrop-filter:blur(9px)saturate(85%);backdrop-filter:blur(9px)saturate(85%);background:#00000085;animation:.22s cubic-bezier(.16,1,.3,1) fade-in;position:fixed;inset:0}.dialog-content{z-index:51;border:1px solid var(--line);background:var(--surface);width:min(500px,100vw - 32px);max-height:calc(100vh - 32px);box-shadow:var(--shadow-lift);border-radius:12px;padding:24px;animation:.28s cubic-bezier(.16,1,.3,1) dialog-in;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.dialog-content.work-dialog{width:min(720px,100vw - 32px)}.dialog-content.creation-review-dialog{width:min(880px,100vw - 32px)}.creation-review-form{gap:24px;padding-top:22px;display:grid}.creation-review-section{gap:16px;display:grid}.creation-review-section>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:10px;display:flex}.creation-review-section>header>span{color:var(--ink);font-family:var(--font-display);font-size:16px;font-weight:600}.creation-review-section>header>small{color:var(--muted);font-size:11px}.creation-review-form label{min-width:0;color:var(--ink-soft);gap:8px;font-size:12px;font-weight:700;display:grid}.creation-review-form input,.creation-review-form textarea,.creation-review-form select{width:100%;min-height:42px;color:var(--ink);resize:vertical;background:#2c24200d;border:1px solid #0000;border-radius:6px;outline:0;padding:10px 11px;font-size:13px;font-weight:400;line-height:1.6;transition:background-color .2s,border-color .2s}.creation-review-form input:focus,.creation-review-form textarea:focus,.creation-review-form select:focus{border-color:rgba(var(--primary-rgb),.55);background:var(--surface)}.creation-review-foundation{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.creation-review-foundation .field-wide,.creation-review-form .field-wide{grid-column:1/-1}.creation-review-range>span{justify-content:space-between;gap:12px;display:flex}.creation-review-range output{color:var(--primary);font-variant-numeric:tabular-nums}.creation-review-range input[type=range]{min-height:0;accent-color:var(--primary);padding:0}.creation-plan-section{padding-top:2px}.creation-plan-summary{border:1px solid var(--line);background:var(--line);border-radius:6px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.creation-plan-summary>div{background:var(--surface);align-content:center;gap:4px;min-height:72px;padding:12px 14px;display:grid}.creation-plan-summary strong{color:var(--ink);font-family:var(--font-display);font-size:17px;font-weight:600;line-height:1.1}.creation-plan-summary span{color:var(--muted);font-size:11px}.creation-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.creation-plan-block{min-width:0}.creation-plan-block--wide{grid-column:1/-1}.creation-plan-block h3{color:var(--ink-soft);margin:0 0 10px;font-size:12px;font-weight:700}.creation-plan-assets,.creation-plan-outline,.creation-plan-timeline{border:1px solid var(--line);border-radius:6px;gap:1px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.creation-plan-assets li,.creation-plan-outline li,.creation-plan-timeline li{background:var(--surface);min-width:0}.creation-plan-assets li{padding:0}.creation-plan-edit-details{border-top:1px solid var(--line);margin:0 12px 10px 38px;padding-top:7px}.creation-plan-edit-details summary{color:var(--muted);cursor:pointer;font-size:10px}.creation-plan-edit-details>label,.creation-plan-inline-field{gap:4px;margin-top:7px;display:grid}.creation-plan-edit-details label>span,.creation-plan-inline-field>span{color:var(--muted);font-size:10px}.creation-plan-edit-details input,.creation-plan-edit-details textarea,.creation-plan-inline-field input,.creation-plan-inline-field textarea{border:1px solid var(--line);background:var(--paper);width:100%;min-width:0;color:var(--ink-soft);font:inherit;resize:vertical;border-radius:4px;padding:6px 7px;font-size:11px;line-height:1.45}.creation-plan-inline-field{grid-template-columns:54px minmax(0,1fr);align-items:center}.creation-plan-asset-option{cursor:pointer;grid-template-columns:16px 48px minmax(0,1fr);gap:10px;padding:10px 12px;transition:background-color .2s,color .2s;display:grid}.creation-plan-asset-option:hover{background:var(--fill)}.creation-plan-asset-option.excluded{color:var(--muted);background:var(--fill)}.creation-plan-asset-option input{width:16px;height:16px;accent-color:var(--primary);margin:1px 0 0}.creation-plan-asset-option>span{color:var(--primary);align-self:start;font-size:10px;font-weight:700;line-height:1.7}.creation-plan-asset-option>div,.creation-plan-outline li,.creation-plan-timeline li>div{gap:3px;min-width:0;display:grid}.creation-plan-assets strong,.creation-plan-outline strong,.creation-plan-timeline strong{color:var(--ink);font-size:12px;font-weight:700;line-height:1.5}.creation-plan-asset-option.excluded strong,.creation-plan-asset-option.excluded small,.creation-plan-asset-option.excluded>span{color:var(--muted)}.creation-plan-assets small,.creation-plan-outline span,.creation-plan-timeline span{color:var(--muted);font-size:11px;line-height:1.65}.creation-plan-outline li{padding:10px 12px}.creation-plan-outline li.excluded,.creation-plan-timeline li.excluded{opacity:.56;background:var(--fill)}.creation-plan-outline-toggle{background:0 0;margin:-2px 0 6px;padding:0}.creation-plan-outline-toggle:hover{background:0 0}.creation-plan-checkline{min-width:0;color:var(--ink);align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.creation-plan-checkline input{width:14px;height:14px;accent-color:var(--primary);margin:0}.creation-plan-edit-details--excluded{opacity:.58}.creation-plan-timeline li{grid-template-columns:96px minmax(0,1fr);gap:12px;padding:10px 12px;display:grid}.creation-plan-timeline time{color:var(--primary);font-size:11px;font-weight:700;line-height:1.7}.dialog-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:22px;display:flex}.dialog-title{font-family:var(--font-display);margin:0;font-size:24px;font-weight:600}.dialog-description{color:var(--muted);margin:7px 0 0;font-size:13px}.work-form{gap:18px;padding-top:22px;display:grid}.work-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.work-form .field-wide{grid-column:1/-1}.work-cover-fieldset{min-width:0;color:var(--ink-soft);border:0;gap:8px;margin:0;padding:0;font-size:12px;font-weight:700;display:grid}.work-cover-fieldset legend{margin-bottom:0;padding:0}.work-cover-help{color:var(--muted);margin:0;font-size:10px;font-weight:400;line-height:1.5}.work-cover-help.error{color:var(--danger,#b42318)}.work-form label,.accent-fieldset{min-width:0;color:var(--ink-soft);border:0;gap:8px;margin:0;padding:0;font-size:12px;font-weight:700;display:grid}.accent-fieldset legend{margin-bottom:8px;padding:0}.work-form input,.work-form textarea,.work-form select{border:1px solid var(--line);background:var(--fill);width:100%;min-height:44px;color:var(--ink);resize:vertical;border-radius:8px;outline:0;padding:11px 12px;font-size:13px;font-weight:400;line-height:1.6;transition:background-color .2s,border-color .2s}.work-form input:focus,.work-form textarea:focus,.work-form select:focus{border-color:rgba(var(--primary-rgb),.7);background:var(--surface)}.accent-options{align-items:center;gap:12px;min-height:44px;display:flex}.accent-swatch{border:2px solid var(--surface);background:var(--ink);cursor:pointer;border-radius:50%;outline:1px solid #0000;width:28px;height:28px;padding:0;transition:transform .1s ease-out,outline-color .2s;position:relative}.accent-swatch--moss{background:var(--moss)}.accent-swatch--vermilion{background:var(--vermilion)}.accent-swatch:hover,.accent-swatch.active{outline-color:var(--ink)}.accent-swatch:active{transform:scale(.93)}.dialog-actions{justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.character-dialog .dialog-actions{border-top:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(18px)saturate(130%);backdrop-filter:blur(18px)saturate(130%);padding:14px 24px;position:sticky;bottom:0}.primary-button:active,.text-button:active,.icon-button:active{transition-duration:.1s;transform:scale(.97)}@keyframes fade-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,calc(8px - 50%))}}.focus-mode-controls{z-index:90;align-items:center;gap:6px;display:flex;position:fixed;top:18px;right:20px}.focus-mode-exit,.focus-mode-ai-toggle{border:1px solid var(--line-strong);background:var(--paper);min-height:34px;color:var(--ink-soft);cursor:pointer;border-radius:7px;align-items:center;gap:6px;padding:0 10px;font-size:10px;font-weight:700;display:inline-flex;box-shadow:0 4px 14px #2125291a}.focus-mode-exit:hover,.focus-mode-ai-toggle:hover{color:var(--ink)}html.chapter-focus-mode-active .app-topbar,html.chapter-focus-mode-active .sidebar{display:none}html.chapter-focus-mode-active .main-canvas{margin-left:0;padding-top:0}.chapter-focus-mode{width:100%;max-width:none;padding:34px clamp(24px,9vw,160px) 72px}.chapter-focus-mode .chapter-workspace{grid-template-columns:minmax(0,1fr)}.chapter-focus-mode .chapter-rail,.chapter-focus-mode .writing-ai-panel{display:none}.chapter-focus-mode.chapter-focus-ai-open .chapter-workspace{grid-template-columns:minmax(0,1fr) var(--chapter-ai-width,420px)}.chapter-focus-mode.chapter-focus-ai-open .writing-ai-panel{grid-area:1/2;width:auto;height:95%;max-height:95%;display:flex;position:relative;top:auto;right:auto}.profile-page{width:min(1100px,100%);margin:0 auto;padding:28px 54px 50px}.profile-page-header,.profile-section-heading,.profile-word-count,.profile-feedback,.profile-sync-state,.profile-stat-list dt,.profile-avatar-button i{align-items:center;display:flex}.profile-page-header{border-bottom:1px solid var(--line);justify-content:space-between;gap:24px;padding-bottom:18px}.profile-kicker{color:var(--muted);margin:0 0 6px;font-size:10px;font-weight:700}.profile-page-header h1{color:var(--ink);font-family:var(--font-display);margin:0;font-size:30px;font-weight:650;line-height:1.2}.profile-page-header p{color:var(--ink-soft);margin:9px 0 0;font-size:13px;line-height:1.65}.profile-sync-state{border:1px solid var(--line);color:var(--muted);border-radius:5px;flex:none;gap:5px;padding:5px 8px;font-size:10px;font-weight:700}.profile-sync-state.remote{color:#456858;border-color:#b8cdbd}.profile-feedback{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);border-radius:6px;gap:7px;margin:18px 0 0;padding:10px 12px;font-size:12px}.profile-feedback.success{color:#456858;border-color:#b8cdbd}.profile-feedback.error{color:var(--vermilion);border-color:#e5b4af}.profile-layout{grid-template-columns:minmax(230px,.72fr) minmax(0,1.7fr);gap:42px;padding-top:25px;display:grid}.profile-identity-panel{border:1px solid var(--line);background:var(--paper);border-radius:8px;align-self:start;padding:22px}.profile-avatar-wrap{width:82px;height:82px;position:relative}.profile-avatar-button{border:1px solid var(--line-strong);background:var(--fill);width:82px;height:82px;color:var(--ink);font-family:var(--font-display);cursor:pointer;border-radius:50%;place-items:center;padding:0;font-size:24px;font-weight:650;display:grid;position:relative;overflow:hidden}.profile-avatar-button:hover{border-color:var(--ink)}.profile-avatar-button img{object-fit:cover;width:100%;height:100%}.profile-avatar-button i{border:1px solid var(--line-strong);background:var(--paper);width:28px;height:28px;color:var(--ink-soft);border-radius:50%;justify-content:center;font-style:normal;position:absolute;bottom:0;right:0}.profile-avatar-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.profile-identity-heading{margin-top:18px}.profile-identity-heading h2{color:var(--ink);font-family:var(--font-display);margin:0;font-size:21px;font-weight:650}.profile-identity-heading p{color:var(--muted);margin:5px 0 0;font-size:11px}.profile-stat-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:24px 0 0;padding:14px 0;display:grid}.profile-stat-list>div{border-right:1px solid var(--line);min-width:0;padding:0 8px}.profile-stat-list>div:first-child{padding-left:0}.profile-stat-list>div:last-child{border-right:0;padding-right:0}.profile-stat-list dt{color:var(--muted);white-space:nowrap;gap:4px;font-size:9px;font-weight:700}.profile-stat-list dd{color:var(--ink);font-family:var(--font-display);margin:7px 0 0;font-size:19px;font-weight:650}.profile-word-count{color:var(--muted);gap:6px;margin-top:16px;font-size:10px}.profile-word-count strong{color:var(--ink-soft);font-family:var(--font-display);margin-left:auto;font-size:13px}.profile-editor-column{min-width:0}.profile-section{border-bottom:1px solid var(--line);padding:2px 0 25px}.profile-section+.profile-section{padding-top:25px}.profile-section-heading{justify-content:space-between;gap:16px;margin-bottom:20px}.profile-section-heading h2{color:var(--ink);font-family:var(--font-display);margin:0;font-size:18px;font-weight:650}.profile-section-heading p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.5}.profile-sync-panel,.profile-transfer-panel{gap:14px;display:grid}.profile-sync-overview{grid-template-columns:minmax(0,1fr) minmax(150px,.65fr);gap:10px;display:grid}.profile-sync-phase,.profile-sync-meta,.profile-transfer-stat{border:1px solid var(--line);background:var(--paper);min-height:48px;color:var(--ink-soft);align-items:center;gap:9px;padding:9px 11px;display:flex}.profile-sync-phase span,.profile-sync-meta,.profile-transfer-stat{gap:3px;display:grid}.profile-sync-phase svg{color:var(--primary)}.profile-sync-phase.offline svg{color:var(--muted)}.profile-sync-phase.error svg{color:var(--danger)}.profile-sync-phase strong{font-size:11px}.profile-sync-phase small,.profile-sync-meta span,.profile-transfer-stat span{color:var(--muted);font-size:9px}.profile-sync-meta strong,.profile-transfer-stat strong{color:var(--ink);font-size:11px;font-weight:700}.profile-sync-details{border:1px solid var(--line);color:var(--ink-soft);padding:9px 11px;font-size:10px}.profile-sync-details summary{cursor:pointer}.profile-sync-details ul{gap:5px;margin:8px 0 0;padding:0;list-style:none;display:grid}.profile-sync-details li{color:var(--muted);justify-content:space-between;gap:8px;display:flex}.profile-sync-details li span{color:var(--ink-soft);font-weight:700}.profile-sync-conflicts{gap:8px;display:grid}.profile-sync-conflicts>header{align-items:baseline;gap:8px;display:flex}.profile-sync-conflicts>header strong{color:var(--ink);font-size:12px}.profile-sync-conflicts>header small{color:var(--muted);font-size:10px}.profile-sync-conflicts article{background:#c2483b09;border:1px solid #e5b4af;gap:8px;padding:10px 11px;display:grid}.profile-sync-conflicts article strong{color:var(--vermilion);font-size:11px}.profile-sync-conflicts article p{color:var(--ink-soft);margin:3px 0 0;font-size:10px;line-height:1.45}.profile-sync-conflicts footer{flex-wrap:wrap;gap:5px;display:flex}.profile-sync-conflicts footer button,.profile-transfer-actions button{border:1px solid var(--line);background:var(--paper);min-height:28px;color:var(--ink-soft);cursor:pointer;border-radius:4px;align-items:center;gap:5px;padding:0 8px;font-size:10px;display:inline-flex}.profile-sync-conflicts footer button:hover,.profile-transfer-actions button:hover{border-color:var(--line-strong);color:var(--ink)}.profile-sync-remote article{border-color:var(--line);background:var(--paper)}.profile-sync-remote article strong{color:var(--ink)}.profile-sync-empty,.profile-inline-success,.profile-inline-error{align-items:center;gap:5px;margin:0;font-size:10px;display:flex}.profile-sync-empty,.profile-inline-success{color:#456858}.profile-inline-error{color:var(--danger)}.profile-transfer-grid{grid-template-columns:minmax(0,1fr) 160px;gap:12px;display:grid}.profile-transfer-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.profile-transfer-mode{min-height:28px;color:var(--muted);align-items:center;gap:6px;margin-left:auto;font-size:10px;display:inline-flex}.profile-transfer-mode select{border:1px solid var(--line);background:var(--paper);min-height:28px;color:var(--ink-soft);border-radius:4px;padding:0 22px 0 7px;font-size:10px}.profile-save-button{white-space:nowrap;flex:none;gap:5px;min-height:32px}.profile-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 16px;display:grid}.profile-form-wide{grid-column:1/-1}.profile-form-grid .field>span{align-items:center;gap:5px;display:inline-flex}.profile-form-grid .field input,.profile-form-grid .field select,.profile-form-grid .field textarea,.profile-password-form .field input{border-radius:5px}.profile-form-grid .field input:disabled{background:var(--surface);color:var(--muted)}.profile-password-dialog{width:min(100vw - 36px,430px);padding:0}.profile-password-dialog .dialog-header{border-bottom:1px solid var(--line);padding:20px 22px 16px}.profile-password-form{gap:15px;padding:20px 22px 0;display:grid}.profile-password-form .dialog-actions{border-top:1px solid var(--line);margin:4px -22px 0;padding:14px 22px 18px}.avatar-crop-dialog{flex-direction:column;width:min(100vw - 36px,820px);max-height:min(720px,100dvh - 32px);padding:0;display:flex;overflow:hidden}.avatar-crop-dialog .dialog-header{border-bottom:1px solid var(--line);padding:20px 22px 16px}.avatar-crop-body{flex:auto;grid-template-columns:minmax(0,1fr) 164px;align-items:center;gap:24px;min-height:0;padding:22px;display:grid}.avatar-cropper-stage{aspect-ratio:1;border:1px solid var(--line);background:var(--ink);justify-self:center;width:min(100%,460px,47dvh);height:auto;min-height:0;overflow:hidden}.avatar-cropper-stage .vue-cropper{width:100%;height:100%}.avatar-crop-preview-panel{color:var(--muted);justify-items:center;gap:10px;font-size:11px;display:grid}.avatar-crop-preview{border:1px solid var(--line-strong);background:var(--fill);border-radius:50%;place-items:center;width:160px;height:160px;display:grid;overflow:hidden}.avatar-crop-preview-content{position:relative;overflow:hidden}.avatar-crop-preview-content img{max-width:none;display:block;position:absolute;top:0;left:0}.avatar-crop-actions,.avatar-crop-tools,.avatar-crop-confirm-actions{align-items:center;display:flex}.avatar-crop-actions{border-top:1px solid var(--line);gap:10px;padding:14px 22px 18px}.avatar-crop-tools{gap:7px}.avatar-crop-tools .icon-button{width:32px;height:32px}.avatar-crop-confirm-actions{gap:10px;margin-left:auto}.profile-spinner{animation:.8s linear infinite profile-spin}@keyframes profile-spin{to{transform:rotate(360deg)}}@media(max-width:760px){.profile-page{padding:28px 18px 48px}.profile-page-header{flex-direction:column;align-items:flex-start;gap:13px}.profile-page-header h1{font-size:26px}.profile-layout{grid-template-columns:1fr;gap:30px;padding-top:26px}.profile-identity-panel{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:18px;display:grid}.profile-identity-heading{margin-top:0}.profile-stat-list,.profile-word-count{grid-column:1/-1}.profile-form-grid{grid-template-columns:1fr}.profile-form-wide{grid-column:auto}.profile-sync-overview,.profile-transfer-grid{grid-template-columns:1fr}.profile-transfer-mode{margin-left:0}}@media(max-width:420px){.profile-section-heading{flex-direction:column;align-items:flex-start}.profile-save-button{align-self:flex-end}.profile-password-form,.profile-password-dialog .dialog-header{padding-left:16px;padding-right:16px}.profile-password-form .dialog-actions{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.avatar-crop-dialog .dialog-header,.avatar-crop-body,.avatar-crop-actions{padding-left:16px;padding-right:16px}.avatar-crop-body{gap:18px}.avatar-crop-actions{flex-wrap:wrap}.avatar-crop-confirm-actions{margin-left:auto}}@media(max-width:600px){.avatar-crop-dialog{width:min(100vw - 24px,820px)}.avatar-crop-body{grid-template-columns:1fr}.avatar-cropper-stage{aspect-ratio:1;width:min(100%,460px,47dvh);height:auto}.avatar-crop-preview-panel{display:none}.avatar-crop-tools{order:3;width:100%}.avatar-crop-confirm-actions{margin-left:auto}}@media(max-width:1180px){.topbar-model-selector{display:none}.ai-context-preview--nav{flex-basis:clamp(176px,18vw,224px);width:clamp(176px,18vw,224px)}.chapter-topbar-actions .chapter-topbar-button>span,.chapter-topbar-actions .chapter-save-status>span{display:none}.chapter-topbar-actions .chapter-topbar-button,.chapter-topbar-actions .chapter-save-status{justify-content:center;width:32px;padding:0}.chapter-topbar-actions .chapter-timeline-toggle,.chapter-topbar-actions .chapter-focus-toggle,.chapter-topbar-actions .chapter-shortcuts-toggle,.app-topbar:has(.resource-topbar-actions) .topbar-ai-trigger,.app-topbar:has(.resource-topbar-actions) .topbar-model-selector,.app-topbar:has(.resource-topbar-actions) .topbar-account .topbar-account-profile,.app-topbar:has(.resource-topbar-actions) .topbar-account .topbar-account-menu{display:none}.resource-topbar-search{width:140px}.resource-topbar-create{justify-content:center;width:32px;padding:0}.resource-topbar-create span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.ai-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-conversation-layout{grid-template-columns:1fr;gap:14px;height:auto;min-height:0}.ai-conversation-workspace{height:auto;min-height:calc(100vh - var(--topbar-height))}.ai-conversation-left-panels{height:298px}.ai-asset-list{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-conversation-dialogue{min-height:calc(100vh - var(--topbar-height) - 92px)}.ai-chat-thread{padding:24px 28px 34px}.ai-chat-template-context{margin-right:0}.ai-novel-info{max-height:none;margin-left:0;position:static}.chapter-workspace{grid-template-columns:200px minmax(0,1fr) var(--chapter-ai-width,340px)}.chapter-workspace.ai-panel-closed{grid-template-columns:200px minmax(0,1fr)}.chapter-editor{padding-left:24px;padding-right:24px}}@media(max-width:900px){.ai-context-preview--nav{display:none}.template-management-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar{inset:var(--topbar-height) 0 auto;border-right:0;border-bottom:1px solid var(--line);flex-direction:row;width:100%;height:52px;padding:6px 14px}.sidebar.collapsed .nav-item>span{display:inline}.sidebar-collapse-toggle{display:none}.primary-nav{align-content:initial;scrollbar-width:none;gap:6px;padding:0;display:flex;overflow-x:auto}.primary-nav::-webkit-scrollbar{display:none}.nav-item{justify-content:center;min-width:96px;min-height:39px}.nav-item.router-link-exact-active:before,.nav-item.nav-item--active:before{width:auto;height:2px;inset:auto 15px -6px}.main-canvas{padding-top:calc(var(--topbar-height) + 52px);margin-left:0}.ai-builder{grid-template-columns:1fr}.ai-creation-choice,.ai-conversation-workspace{padding:46px 24px 68px}.ai-conversation-workspace{padding-bottom:20px}.ai-conversation-layout{grid-template-columns:1fr;gap:14px}.ai-conversation-dialogue{min-height:calc(100vh - var(--topbar-height) - 92px)}.ai-novel-info{padding:22px}.ai-config-panel{border-right:0;border-bottom:1px solid var(--line);max-height:none;position:static}.ai-config-scroll{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.ai-template-workspace{padding:30px 24px 64px}.ai-existing-workspace{padding:44px 24px 64px}.templates-page,.library-page{padding:36px 24px 64px}.work-detail-page,.outline-page{padding:34px 24px 64px}.chapters-page{padding:20px 24px 64px}.work-detail-content{gap:34px}.characters-page,.worlds-page,.scenes-page,.organizations-page,.items-page{padding:36px 24px 64px}.world-grid,.scene-grid,.organization-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.app-topbar{gap:8px;padding:0 14px}.topbar-controls{gap:8px}.topbar-wordmark{font-size:18px}.topbar-status,.topbar-account-profile>strong,.topbar-account-trigger>strong,.topbar-ai-trigger,.topbar-model-selector,.page-topbar-action-group:has(>.chapter-topbar-actions),.ai-context-preview--nav{display:none}.topbar-account{gap:0}.page-topbar-actions:has(.resource-topbar-actions) .page-topbar-action-group:has(.work-topbar-navigation){display:none}.resource-topbar-search{width:clamp(110px,100vw - 230px,160px)}.page-topbar-action-group .topbar-action-button{width:38px;min-height:38px;padding:0;font-size:0;overflow:hidden}.ai-history-trigger-chevron{display:none}.work-topbar-navigation{gap:5px}.work-topbar-back{justify-content:center;width:30px;min-height:30px;font-size:0;overflow:hidden}.work-topbar-back svg{flex:none}.work-topbar-tabs,.work-topbar-tabs-wrap{max-width:calc(100vw - 228px)}.ai-config-scroll,.ai-foundation-result dl,.ai-template-grid,.ai-creation-mode-grid,.ai-chat-foundation dl{grid-template-columns:1fr}.ai-creation-choice,.ai-conversation-workspace{padding:34px 18px 56px}.ai-conversation-workspace{padding-bottom:12px}.ai-creation-choice-copy h2,.ai-foundation-result h2{font-size:26px}.ai-creation-mode{min-height:108px}.ai-chat-thread{gap:18px;padding:20px 16px 28px}.ai-asset-list{grid-template-columns:1fr}.ai-chat-header{min-height:64px;padding:12px 16px}.ai-chat-header-mode{display:none}.ai-chat-template-context{padding:12px 16px}.ai-chat-message-body>p{font-size:13px}.ai-chat-foundation footer{flex-direction:column;align-items:stretch}.ai-chat-foundation footer .primary-button{justify-content:center}.ai-chat-composer{width:calc(100% - 24px);margin:0 12px 12px}.ai-chat-composer-actions>span{display:none}.ai-novel-info h2{font-size:22px}.ai-template-workspace{padding:24px 18px 56px}.ai-foundation-result>header,.ai-section-header{flex-direction:column;align-items:stretch}.ai-foundation-result .primary-button,.ai-template-search{width:100%}.ai-template-card{min-height:170px}.dialog-content.ai-entry-dialog{padding:22px 18px}.ai-entry-choices{gap:16px;padding:30px 0 16px}.ai-entry-orb{aspect-ratio:1;width:min(132px,50vw - 42px);height:auto;padding:12px}.ai-entry-orb strong{font-size:15px}.ai-entry-orb span{display:none}.ai-existing-workspace{padding:34px 18px 56px}.ai-existing-hero{grid-template-columns:86px minmax(0,1fr);gap:18px}.ai-existing-hero .cover{width:86px}.ai-existing-hero h2{font-size:26px}.ai-existing-actions nav{grid-template-columns:1fr}.ai-existing-actions a,.ai-existing-actions a:last-child{border-right:0;border-bottom:1px solid var(--line)}.ai-existing-actions a:last-child{border-bottom:0}.templates-page{padding:28px 18px 56px}.template-page-header{align-items:center}.template-page-header .primary-button{width:40px;height:40px;min-height:40px;padding:0}.template-page-header .primary-button span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.template-toolbar{flex-direction:column;align-items:stretch;gap:12px;padding:12px 0}.template-genre-filter{justify-content:space-between}.template-management-grid,.template-form-grid{grid-template-columns:1fr}.template-form-wide{grid-column:auto}.nav-item{gap:6px;min-width:88px;padding:0 9px;font-size:12px}.library-page{padding:28px 18px 56px}.work-detail-page,.outline-page{padding:26px 18px 56px}.chapters-page{padding:18px 18px 56px}.characters-page,.worlds-page,.scenes-page,.organizations-page{padding:20px 18px 44px}.page-header{align-items:center;padding-bottom:22px}.page-header h1{font-size:32px}.work-resource-page .page-header{padding-bottom:10px}.page-header .primary-button{width:40px;height:40px;min-height:40px;padding:0}.page-header .primary-button span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.library-total{display:none}.work-grid{grid-template-columns:1fr}.work-cover-link{width:92px}.work-form-grid{grid-template-columns:1fr}.work-form .field-wide{grid-column:auto}.work-card{grid-template-columns:92px minmax(0,1fr);gap:17px;padding:24px 0}.cover{width:92px}.work-detail-hero{grid-template-columns:92px minmax(0,1fr);align-items:start;gap:20px}.cover.work-detail-cover,.work-detail-cover-wrap,.novel-cover-picker--compact .cover{width:92px}.work-detail-cover span{padding-top:22px;font-size:32px}.work-detail-heading h1{font-size:29px}.work-detail-summary{font-size:13px;line-height:1.7}.work-stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.work-stat-strip>div,.work-stat-strip>div:first-child,.work-stat-strip>div:last-child{border-right:0;border-bottom:1px solid var(--line);min-height:70px;padding:12px 10px}.work-stat-strip>div:nth-child(odd){border-right:1px solid var(--line);padding-left:0}.work-stat-strip>div:nth-child(2n){padding-right:0}.work-stat-strip>div:nth-last-child(-n+2){border-bottom:0}.work-detail-content{grid-template-columns:1fr;gap:40px;padding-top:34px}.outline-page-header,.chapters-page-header{align-items:center;padding-bottom:22px}.chapters-page-header h1{font-size:32px}.chapters-page-header .primary-button{width:40px;height:40px;min-height:40px;padding:0}.chapters-page-header .primary-button span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.outline-page-header h1{font-size:32px}.outline-page-header .primary-button{width:40px;height:40px;min-height:40px;padding:0}.outline-page-header .primary-button span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.outline-workspace{grid-template-columns:1fr;min-height:0}.chapter-workspace{grid-template-rows:none;grid-template-columns:1fr;height:auto;min-height:0;overflow:visible}.chapter-workspace.ai-panel-closed{grid-template-columns:1fr}.chapter-rail-toggle{display:inline-flex}.chapters-page:not(.chapter-rail-open) .chapter-rail{display:none}.chapter-rail{border-right:0;border-bottom:1px solid var(--line);height:auto;padding:16px 0;display:block;overflow:visible}.chapter-rail>header{padding-left:0;padding-right:0}.manuscript-chapter-list{flex:none;padding-bottom:2px;display:flex;overflow:auto hidden}.manuscript-chapter-button{min-width:190px}.chapter-editor{--chapter-editor-padding-top:26px;height:auto;min-height:0;padding:var(--chapter-editor-padding-top) 0 0;overflow:visible}.chapter-editor-sticky-header{top:calc(var(--topbar-height) + 52px)}html.chapter-focus-mode-active .chapter-editor-sticky-header{top:0}.writing-ai-panel{width:auto;height:min(680px,calc(100dvh - var(--topbar-height) - 112px));max-height:calc(100dvh - var(--topbar-height) - 112px);grid-area:auto/1;margin-top:26px;position:static;top:auto;right:auto}.writing-ai-resize-handle{display:none}.chapter-editor-header{align-items:flex-end}.chapter-title-input input{font-size:24px}.chapter-editor-header .primary-button{min-width:40px;padding:0 10px}.chapter-editor-meta{grid-template-columns:minmax(0,1fr) 110px}.chapter-editor-meta>p{grid-column:1/-1;margin:0}.chapter-writing-progress{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-start}.chapter-summary-editor textarea,.chapter-body-editor textarea{min-height:420px;padding:24px 0}.volume-rail{border-right:0;border-bottom:1px solid var(--line);padding:16px 0}.volume-rail>header{padding-left:0;padding-right:0}.volume-list{padding-bottom:2px;display:flex;overflow-x:auto}.volume-list>button{min-width:190px}.volume-outline{padding:26px 0 0}.volume-outline-header h2{font-size:24px}.volume-summary{margin-bottom:24px}.chapter-outline-list>li{grid-template-columns:24px minmax(0,1fr) 30px;gap:10px}.chapter-list li{grid-template-columns:26px minmax(0,1fr)}.chapter-meta{text-align:left;grid-column:2;grid-template-columns:repeat(3,auto);justify-content:start;justify-items:start}.cover span{padding-top:22px;font-size:32px}.work-card h2{font-size:19px}.work-summary{-webkit-line-clamp:2}.character-toolbar{flex-direction:column;align-items:stretch;gap:12px;padding:12px 0}.resource-toolbar.resource-toolbar-summary{flex-direction:row;align-items:flex-end;min-height:28px;padding:0 0 7px}.world-toolbar,.scene-toolbar{flex-direction:column;align-items:stretch;gap:12px;padding:12px 0}.world-toolbar .search-field,.scene-toolbar .search-field,.character-toolbar .search-field{min-height:36px}.segmented-control{grid-template-columns:repeat(3,1fr);display:grid}.character-grid,.world-grid,.world-details,.scene-grid,.organization-grid,.organization-details{grid-template-columns:1fr}.world-card,.scene-card{min-height:0}.character-form-body,.field-editor-list,.field-editor-body{grid-template-columns:1fr}.character-form-body{gap:24px;max-height:calc(100vh - 170px);padding:18px}.character-core-panel{border-bottom:1px solid #2c242017;border-right:0;padding:0 0 20px;position:static}.dynamic-field-heading{align-items:flex-start}.dialog-content.character-dialog{width:min(100vw - 24px,1080px)}.character-dialog .dialog-actions{padding:12px 18px}.dialog-content.creation-review-dialog{width:min(100vw - 24px,880px);padding:20px 18px}.creation-review-foundation,.creation-review-form .work-form-grid,.creation-plan-grid{grid-template-columns:1fr}.creation-plan-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.creation-plan-block--wide{grid-column:auto}.creation-plan-timeline li{grid-template-columns:1fr;gap:3px}.work-foundation dl{grid-template-columns:1fr}}@media(prefers-reduced-transparency:reduce){.app-topbar,.work-topbar-tabs,.ai-entry-dialog,.ai-chat-composer,.ai-novel-info,.character-dialog,.character-dialog .dialog-header,.character-dialog .dialog-actions{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}.dialog-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media(min-width:901px){:root[data-layout-size] .library-page,:root[data-layout-size] .outline-page,:root[data-layout-size] .templates-page,:root[data-layout-size] .profile-page,:root[data-layout-size] .work-detail-page,:root[data-layout-size] .characters-page,:root[data-layout-size] .worlds-page,:root[data-layout-size] .scenes-page,:root[data-layout-size] .organizations-page,:root[data-layout-size] .items-page,:root[data-layout-size] .timeline-page{padding-right:var(--layout-page-inline);padding-left:var(--layout-page-inline)}:root[data-layout-size] .chapters-page{padding-right:var(--layout-page-inline);padding-left:max(var(--layout-page-inline),calc(50% - 786px))}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
