/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@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-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--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,ui-sans-serif, system-ui, 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;-webkit-text-decoration:inherit;-webkit-text-decoration: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{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{.invisible{visibility:hidden}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.start\!{inset-inline-start:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.end\!{inset-inline-end:var(--spacing)!important}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.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}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter\!{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)!important}.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))}}.author-dashboard .home-header{text-align:left;margin-bottom:24px}.author-dashboard .brand{font-size:28px}.author-dashboard .brand-sub{letter-spacing:0;color:var(--text);font-size:20px}.author-dashboard .home-actions{justify-content:flex-start;margin-bottom:24px}.author-dashboard .novel-card{align-items:center;padding:22px}.author-dashboard .novel-card-actions{opacity:1;flex-wrap:wrap}.author-dashboard .novel-card-title-row{flex-wrap:wrap}.author-dashboard .novel-card-meta,.author-dashboard .novel-card-synopsis{font-size:14px}.novel-tags{color:var(--accent);flex-wrap:wrap;gap:10px;margin-top:10px;font-size:14px;display:flex}.work-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:6px;margin-bottom:20px;padding-bottom:12px;display:flex}.work-filters button{color:var(--text-dim);border-radius:6px;padding:8px 14px;font-size:14px}.work-filters button.selected{background:var(--accent-soft);color:var(--text);font-weight:600}.publication-page{flex:1;padding:32px;font-size:16px;overflow:auto}.publication-hero,.section-heading,.section-heading>div{align-items:center;gap:12px;display:flex}.publication-hero,.section-heading{justify-content:space-between}.publication-hero{flex-wrap:wrap;align-items:flex-start;margin-bottom:24px}.publication-hero h2{font-size:28px;font-family:var(--font-serif);overflow-wrap:anywhere;margin:8px 0}.publication-hero p{margin:8px 0;line-height:1.7}.eyebrow{color:var(--accent);font-size:14px;font-weight:600}.review-badge{white-space:nowrap;border:1px solid var(--border);color:var(--text-dim);background:var(--bg-panel);border-radius:5px;align-items:center;padding:4px 9px;font-size:14px;display:inline-flex}.status-in_review{color:var(--text);border-color:var(--accent);background:var(--accent-soft)}.status-rejected{color:var(--danger)}.status-approved{color:var(--accent)}.publication-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr);gap:20px;margin-bottom:20px;display:grid}.publication-card{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;padding:24px}.section-heading{flex-wrap:wrap;gap:12px;margin-bottom:22px}.section-heading h3{margin:0;font-size:18px}.step-number{color:var(--accent);font-variant-numeric:tabular-nums;border-right:1px solid var(--border);padding-right:12px;font-size:14px}.cover-and-meta{align-items:center;gap:24px;display:flex}.cover-slot{background:var(--bg-panel);border:1px solid var(--border);width:108px;height:144px;color:var(--text-dim);text-align:center;border-radius:4px;flex-shrink:0;place-items:center;padding:0 8px;font-size:14px;display:grid;overflow:hidden}.cover-slot img{object-fit:cover;width:108px;max-width:none;height:144px}.metadata-list{min-width:0;margin:0}.metadata-list>div{gap:16px;margin:10px 0;font-size:14px;display:flex}.metadata-list dt{color:var(--text-dim);flex-shrink:0}.metadata-list dd{overflow-wrap:anywhere;margin:0}.synopsis-preview{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.cover-upload{cursor:pointer}.cover-upload.disabled{opacity:.5;cursor:default}.readiness-list{color:var(--text-dim);padding:0;line-height:2.5;list-style:none}.readiness-list .ready{color:var(--text)}.publication-actions,.chapter-review-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-hint{color:var(--text-dim);font-size:14px;line-height:1.7}.publication-chapter-row{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px 0;display:flex}.publication-chapter-row>div:first-child{flex:1;gap:6px;min-width:150px;display:grid}.publication-chapter-row strong{overflow-wrap:anywhere;font-weight:500}.publication-chapter-row>div>span{color:var(--text-dim);font-size:14px}.review-lock,.review-reason,.editor-review-lock{background:var(--accent-soft);border-left:3px solid var(--accent);margin-bottom:20px;padding:16px 20px;font-size:14px;line-height:1.7}.review-lock{justify-content:space-between;align-items:center;gap:16px;display:flex}.review-lock p{margin:4px 0 0}.review-reason{color:var(--danger)}.dialog.reader-preview{width:min(800px,95vw);max-width:800px;max-height:88vh;padding:32px;font-size:16px;line-height:1.8;overflow:auto}.reader-preview h2{font-family:var(--font-serif);font-size:28px}.reader-body{white-space:normal;overflow-wrap:anywhere;font-size:18px}.reader-body img{max-width:100%;height:auto}.reader-byline{color:var(--text-dim);font-size:14px}.preview-cover{object-fit:cover}.preview-chapter-link{color:var(--accent);text-align:left;padding:4px;text-decoration:underline}.dialog-form{max-height:90vh;overflow:auto}@media (width<=1000px){.publication-grid{grid-template-columns:1fr}.publication-page{padding:20px}.chapter-review-actions{width:100%}}@media (width<=640px){.author-dashboard .home-inner{padding:24px 16px}.publication-card{padding:16px}.publication-page{padding:12px}.author-dashboard .novel-card{flex-wrap:wrap}.review-lock{flex-direction:column;align-items:flex-start}.cover-and-meta{gap:12px}}.reading-page,.review-page{box-sizing:border-box;width:100%;max-width:1200px;height:calc(100vh - 110px);margin:auto;padding:28px;overflow:auto}.reading-page{max-width:840px;line-height:1.85}.reading-page a{color:var(--accent);text-decoration:underline}.reading-navigation,.publication-actions,.account-bar{flex-wrap:wrap;gap:10px}.reading-navigation{justify-content:space-between;margin:28px 0;display:flex}.review-layout{grid-template-columns:260px minmax(0,1fr);gap:24px;margin-top:24px;display:grid}.review-queue-item{text-align:left;border:1px solid var(--border);white-space:normal;border-radius:8px;flex-direction:column;gap:8px;width:100%;margin-bottom:10px;padding:14px;display:flex}.review-queue-item.selected{border-color:var(--accent)}.comparison-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.comparison-grid pre{white-space:pre-wrap;word-break:break-word;font:inherit;border:1px solid var(--border);padding:12px}.comparison-grid del{color:#c96565;text-decoration:none}.comparison-grid ins{color:#45966f;text-decoration:none}.version-difference{margin:16px 0}.history-entry{border-bottom:1px solid var(--border);padding:12px 0}.review-page textarea{box-sizing:border-box;width:100%;min-height:100px;margin:12px 0;display:block}.review-page .publication-card{margin-bottom:18px}@media (width<=760px){.review-layout,.comparison-grid{grid-template-columns:1fr}.reading-page,.review-page{padding:18px}.review-queue{max-height:260px;overflow:auto}.publication-chapter-row{flex-wrap:wrap}}.foreshadow-dialog{color:var(--text);background:var(--bg-panel,var(--bg));border:1px solid var(--border);border-radius:18px;width:min(600px,100vw - 28px);max-height:calc(100dvh - 32px);padding:28px;overflow:auto;box-shadow:0 24px 90px #0005}.foreshadow-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#101a1666}.foreshadow-dialog{margin:auto}.foreshadow-dialog h2{margin:8px 0 20px;font-size:24px;font-weight:600}.foreshadow-dialog fieldset{border:0;min-width:0;padding:0}.foreshadow-dialog .field,.foreshadow-detail .field{gap:8px;margin:18px 0;display:grid}.foreshadow-dialog input:not([type=checkbox]),.foreshadow-dialog textarea,.foreshadow-dialog select,.foreshadow-page input,.foreshadow-page textarea,.foreshadow-page select{border:1px solid var(--border);width:100%;color:inherit;background:var(--bg-input,var(--bg));min-height:44px;font:inherit;border-radius:8px;padding:10px 12px}.foreshadow-source{background:var(--bg-hover);border-left:3px solid var(--accent);border-radius:0 10px 10px 0;margin:18px 0;padding:15px 18px}.foreshadow-source blockquote,.foreshadow-link blockquote{white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;margin:10px 0 0;line-height:1.8;overflow:auto}.foreshadow-filters{gap:10px;margin:14px 0;display:flex}.foreshadow-filters select{max-width:145px}.foreshadow-choices{gap:6px;max-height:210px;margin-bottom:12px;display:grid;overflow:auto}.foreshadow-choices button{text-align:left;border:1px solid var(--border);min-height:48px;color:inherit;background:0 0;border-radius:8px;justify-content:space-between;gap:12px;padding:12px;display:flex}.foreshadow-choices button.selected{border-color:var(--accent);background:var(--bg-hover)}.foreshadow-check{align-items:center;gap:10px;min-height:44px;padding:12px 0;display:flex}.foreshadow-error{color:var(--danger,#b44b45);line-height:1.7}.selection-toolbar{flex-wrap:wrap;max-width:calc(100vw - 24px)}.selection-toolbar button{min-height:36px}.foreshadow-page{flex-direction:column;height:100%;min-height:0;padding:24px 28px;display:flex}.foreshadow-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.foreshadow-heading h1{margin:0 0 8px;font-size:24px}.foreshadow-layout{flex:1;grid-template-columns:minmax(220px,32%) 1fr;gap:24px;min-height:0;margin-top:20px;display:grid}.foreshadow-list,.foreshadow-detail{min-width:0;overflow-y:auto}.foreshadow-list{border-right:1px solid var(--border);padding-right:20px}.foreshadow-card{text-align:left;border:1px solid var(--border);width:100%;color:inherit;background:0 0;border-radius:12px;gap:9px;margin:0 0 10px;padding:15px;display:grid}.foreshadow-card.active{border-color:var(--accent);background:var(--bg-hover)}.foreshadow-card strong{overflow-wrap:anywhere}.foreshadow-card small{opacity:.7}.foreshadow-link{border:1px solid var(--border);border-radius:12px;margin-top:14px;padding:16px}.foreshadow-link header{justify-content:space-between;gap:12px;display:flex}.foreshadow-link .writing-actions{margin-top:12px}.foreshadow-page .btn{min-height:44px}.foreshadow-page .foreshadow-back{display:none}@media (width<=760px){.foreshadow-page{padding:18px 14px}.foreshadow-layout{display:block;overflow-y:auto}.foreshadow-list{border:0;padding:0}.foreshadow-layout.has-detail .foreshadow-list,.foreshadow-layout:not(.has-detail) .foreshadow-detail{display:none}.foreshadow-page .foreshadow-back{margin-bottom:10px;display:inline-flex}.foreshadow-dialog{padding:20px}.selection-toolbar button{min-height:44px}}:root{--bg:#f8f8f4;--bg-panel:#eeefe9;--bg-elevated:#fff;--bg-hover:#0000000b;--bg-active:#234c3b17;--text:#202e27;--text-dim:#626c65;--accent:#285540;--accent-soft:#234c3b17;--accent-text:#fff;--border:#d8ddd5;--danger:#b3543f;--shadow:0 8px 32px #28282324;--editor-font-size:18px;--editor-line-height:1.9;--editor-page-width:760px;--font-ui:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-serif:"Noto Serif SC", "Source Han Serif SC", "Songti SC", "SimSun", Georgia, serif}[data-theme=dark]{--bg:#17211c;--bg-panel:#1d2922;--bg-elevated:#243128;--bg-hover:#ffffff0e;--bg-active:#a2c7a41f;--text:#e4e9df;--text-dim:#a9b5a9;--accent:#b0d3b2;--accent-soft:#a2c7a41f;--accent-text:#17211c;--border:#3c4a3e;--danger:#c97a68;--shadow:0 8px 32px #00000073}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0;font-size:14px}button{color:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit}input,textarea,select{color:var(--text);background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;outline:none;padding:7px 10px;font-family:inherit;font-size:14px}input:focus,textarea:focus,select:focus{border-color:var(--accent)}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}::-webkit-scrollbar-track{background:0 0}.muted{color:var(--text-dim)}.center{text-align:center}.btn{border:1px solid var(--border);background:var(--bg-elevated);border-radius:6px;align-items:center;gap:6px;padding:7px 14px;font-size:14px;transition:background .12s,border-color .12s;display:inline-flex}.btn:hover{background:var(--bg-hover)}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn-primary:hover{background:var(--accent);filter:brightness(1.08)}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-lg{padding:10px 20px;font-size:15px}.icon-btn{width:28px;height:28px;color:var(--text-dim);border-radius:6px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:inline-flex;position:relative}.icon-btn:hover{background:var(--bg-hover);color:var(--text)}.icon-btn.danger:hover{color:var(--danger)}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);background:var(--text);color:var(--bg);white-space:nowrap;z-index:1000;pointer-events:none;border-radius:4px;padding:4px 8px;font-size:12px;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.activity-bar [data-tip]:hover:after{top:50%;left:calc(100% + 8px);transform:translateY(-50%)}.home{height:100%;position:relative;overflow-y:auto}.home-corner{position:absolute;top:16px;right:20px}.home-inner{max-width:720px;margin:0 auto;padding:9vh 24px 80px}.home-header{text-align:center;margin-bottom:36px}.brand{font-family:var(--font-serif);letter-spacing:.12em;margin:0;font-size:40px;font-weight:600}.brand-sub{color:var(--text-dim);letter-spacing:.2em;margin:10px 0 0}.home-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:44px;display:flex}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.novel-list{flex-direction:column;gap:10px;display:flex}.novel-card{background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:flex-start;gap:12px;padding:16px 18px;transition:border-color .12s,background .12s;display:flex}.novel-card:hover{border-color:var(--accent)}.novel-card-main{flex:1;min-width:0}.novel-card-title-row{align-items:center;gap:8px;display:flex}.novel-card-title{font-size:16px;font-weight:600;font-family:var(--font-serif)}.genre-chip{color:var(--accent);opacity:.85;border:1px solid;border-radius:99px;padding:1px 8px;font-size:12px}.novel-card-meta{flex-wrap:wrap;gap:14px;margin-top:6px;font-size:12.5px;display:flex}.novel-card-synopsis{color:var(--text-dim);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:8px 0 0;font-size:13px;display:-webkit-box;overflow:hidden}.novel-card-actions{opacity:0;gap:4px;transition:opacity .12s;display:flex}.novel-card:hover .novel-card-actions{opacity:1}.workspace{height:100%;display:flex;overflow:hidden}.main-area{flex-direction:column;flex:1;min-width:0;display:flex}.content-area{flex-direction:column;flex:1;min-height:0;display:flex}.activity-bar{background:var(--bg-panel);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;align-items:center;gap:6px;width:46px;padding:10px 0;display:flex}.ab-btn{width:32px;height:32px;color:var(--text-dim);border-radius:7px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex;position:relative}.ab-btn:hover{background:var(--bg-hover);color:var(--text)}.ab-btn.active{background:var(--bg-active);color:var(--accent)}.ab-spacer{flex:1}.sidebar{background:var(--bg-panel);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:252px;min-height:0;display:flex}.sidebar-header{align-items:center;gap:6px;padding:12px 10px 8px 14px;display:flex}.sidebar-title{min-width:0;font-weight:600;font-family:var(--font-serif);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:15px;overflow:hidden}.sidebar-header-actions{gap:2px;display:flex}.sidebar-search{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-dim);border-radius:6px;align-items:center;gap:6px;margin:0 10px 8px;padding:0 8px;display:flex}.sidebar-search input{background:0 0;border:none;flex:1;min-width:0;padding:6px 0;font-size:13px}.tree{flex:1;padding:2px 6px 20px;overflow-y:auto}.tree-empty{padding:12px;font-size:13px}.tree-row{cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;border-radius:6px;align-items:center;gap:4px;width:100%;padding:5px 6px;font-size:13.5px;transition:background .1s;display:flex}.tree-row:hover{background:var(--bg-hover)}.tree-row.dragging{opacity:.5}.volume-row{font-weight:600}.chevron{color:var(--text-dim);flex-shrink:0;align-items:center;transition:transform .15s;display:flex}.chevron.open{transform:rotate(90deg)}.chevron svg{width:13px;height:13px}.row-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.row-words{flex-shrink:0;font-size:11.5px}.row-menu{opacity:0;flex-shrink:0;width:22px;height:22px}.tree-row:hover .row-menu{opacity:1}.chapter-list{padding-left:14px}.chapter-row{color:var(--text);font-weight:400}.chapter-row.active{background:var(--bg-active);color:var(--accent)}.chapter-row.add-hint{font-size:12.5px}.chapter-row.filtered{padding-left:10px}.rename-input{border-radius:4px;flex:1;min-width:0;padding:2px 6px;font-size:13px}.tabbar{border-bottom:1px solid var(--border);background:var(--bg-panel);flex-shrink:0;align-items:stretch;height:37px;display:flex}.tabs{scrollbar-width:thin;flex:1;min-width:0;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{height:3px}.tab{border-right:1px solid var(--border);min-width:100px;max-width:190px;color:var(--text-dim);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;align-items:center;gap:6px;padding:0 10px 0 14px;font-size:13px;transition:background .1s,color .1s;display:flex;position:relative}.tab:hover{background:var(--bg-hover);color:var(--text)}.tab.active{background:var(--bg);color:var(--text)}.tab.active:after{content:"";background:var(--accent);height:2px;position:absolute;top:0;left:0;right:0}.tab-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.tab-pin{color:var(--accent);display:flex}.tab-pin svg{width:12px;height:12px}.dirty-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px}.tab:hover .dirty-dot{display:none}.tab-close{width:18px;height:18px;color:var(--text-dim);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:none}.tab-close svg{width:12px;height:12px}.tab:hover .tab-close{display:flex}.tab-close:hover{background:var(--bg-hover);color:var(--text)}.tab-add{flex-shrink:0;align-self:center;margin:0 6px}.editor-wrap{cursor:text;flex:1;overflow-y:auto}.editor-page{max-width:var(--editor-page-width);cursor:auto;margin:0 auto;padding:44px 36px 45vh}.chapter-title-input{width:100%;font-family:var(--font-serif);font-size:calc(var(--editor-font-size) * 1.45);background:0 0;border:none;border-bottom:1px solid #0000;border-radius:0;margin-bottom:14px;padding:0 0 6px;font-weight:600}.chapter-title-input:focus{border-bottom-color:var(--border)}.editor-content .tiptap{font-family:var(--font-serif);font-size:var(--editor-font-size);line-height:var(--editor-line-height);outline:none;min-height:50vh}.editor-content .tiptap p{text-indent:2em;margin:0 0 .65em}.editor-content .tiptap h2,.editor-content .tiptap h3{font-family:var(--font-serif)}.editor-content .tiptap blockquote{border-left:3px solid var(--border);color:var(--text-dim);margin-left:0;padding-left:1em}.editor-content .tiptap img.novel-illustration,.editor-content .tiptap img{border-radius:8px;max-width:min(100%,680px);height:auto;margin:1.4em auto;display:block;box-shadow:0 10px 28px #0000001f}.selection-toolbar{z-index:80;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);border-radius:8px;align-items:center;padding:4px;animation:.12s ease-out selection-toolbar-in;display:flex;position:fixed;box-shadow:0 8px 24px #0000003d}.selection-toolbar button{min-height:30px;color:var(--text-dim);white-space:nowrap;border-radius:5px;align-items:center;gap:6px;padding:5px 9px;font-size:13px;display:inline-flex}.selection-toolbar button:hover{background:var(--bg-hover);color:var(--text)}.selection-toolbar .selection-toolbar-primary{color:var(--accent)}.selection-toolbar-divider{background:var(--border);width:1px;height:20px;margin:0 2px}@keyframes selection-toolbar-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.editor-content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--text-dim);pointer-events:none;height:0}.editor-loading{text-align:center;padding:60px}.workspace.focus .editor-page{padding-top:8vh}.statusbar{border-top:1px solid var(--border);background:var(--bg-panel);height:27px;color:var(--text-dim);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:0 12px;font-size:12px;display:flex}.statusbar-left{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.statusbar-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.sep{opacity:.5}.save-status.save-saved{color:#6f9668}.save-status.save-error{color:var(--danger)}.statusbar-btn{color:var(--text-dim);border-radius:4px;padding:2px 8px;position:relative}.statusbar-btn:hover{background:var(--bg-hover);color:var(--text)}.statusbar-btn[data-tip]:hover:after{top:auto;bottom:calc(100% + 6px)}.empty-state{text-align:center;max-width:480px;margin:auto;padding:48px 24px}.empty-state p{margin:0 0 8px;font-size:15px}.empty-state .muted{font-size:13.5px}.empty-state.small{padding:20px 12px}.empty-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;display:flex}.workspace-empty{flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.overlay{z-index:100;background:#14141266;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;width:min(440px,100vw - 48px);max-height:calc(100vh - 80px);padding:22px 24px;overflow-y:auto}.dialog-title{font-size:17px;font-family:var(--font-serif);margin:0 0 14px}.dialog-message{color:var(--text-dim);margin:0 0 18px;font-size:14px;line-height:1.7}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.field-label{color:var(--text-dim);font-size:13px}.required{color:var(--danger);font-style:normal}.form-error{color:var(--danger);margin:0;font-size:13px}.segmented{border:1px solid var(--border);border-radius:7px;width:fit-content;display:inline-flex;overflow:hidden}.segmented button{color:var(--text-dim);padding:6px 18px;font-size:13.5px}.segmented button.active{background:var(--bg-active);color:var(--accent)}input[type=range]{accent-color:var(--accent);background:0 0;border:none;padding:0}.context-menu{z-index:200;background:var(--bg-elevated);border:1px solid var(--border);min-width:168px;box-shadow:var(--shadow);border-radius:8px;flex-direction:column;padding:5px;display:flex;position:fixed}.context-menu-item{text-align:left;white-space:nowrap;border-radius:5px;padding:7px 12px;font-size:13.5px}.context-menu-item:hover{background:var(--bg-hover)}.context-menu-item.danger{color:var(--danger)}.toast-host{z-index:300;flex-direction:column;gap:8px;max-width:min(420px,100vw - 40px);display:flex;position:fixed;bottom:40px;right:18px}.toast{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);cursor:pointer;border-radius:8px;padding:10px 14px;font-size:13.5px;line-height:1.6}.toast-error{border-left:3px solid var(--danger)}.toast-success{border-left:3px solid #6f9668}.toast-info{border-left:3px solid var(--accent)}.visually-hidden{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.btn-sm{padding:4px 10px;font-size:13px}.btn-block{justify-content:center;width:100%}.chip{border:1px solid var(--border);color:var(--text-dim);background:var(--bg-elevated);border-radius:99px;align-items:center;gap:4px;padding:3px 10px;font-size:12.5px;transition:background .12s,color .12s,border-color .12s;display:inline-flex;position:relative}.chip:hover{background:var(--bg-hover);color:var(--text)}.chip.active{background:var(--bg-active);color:var(--accent);border-color:var(--accent)}.field-row{gap:12px;display:flex}.field-row .field{flex:1;min-width:0}.field-hint{font-size:12px}.field select{color:var(--text);background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;outline:none;padding:7px 10px;font-family:inherit;font-size:14px}.field select:focus{border-color:var(--accent)}.page-title{font-family:var(--font-serif);margin:0 0 8px;font-size:20px}.type-chip{opacity:.9;border:1px solid;border-radius:99px;flex-shrink:0;padding:1px 7px;font-size:11.5px}.type-character{color:#7d94ad}.type-location{color:#7fa08a}.type-faction{color:#a08578}.type-item{color:#9a8fae}.type-worldview{color:#8d9a6f}.type-event{color:#ab9668}.type-foreshadow{color:#a58899}.type-custom{color:#8a8a85}.library-page{flex:1;min-height:0;display:flex}.library-list{border-right:1px solid var(--border);background:var(--bg-panel);flex-direction:column;flex-shrink:0;width:280px;min-height:0;display:flex}.library-list-header{flex-direction:column;gap:8px;padding:12px 12px 8px;display:flex}.library-list-header .sidebar-search{margin:0}.library-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:6px;padding:4px 12px 10px;display:flex}.library-cards{flex-direction:column;flex:1;gap:4px;padding:8px;display:flex;overflow-y:auto}.entity-item{text-align:left;border-radius:7px;align-items:center;gap:8px;padding:8px 10px;transition:background .1s;display:flex}.entity-item:hover{background:var(--bg-hover)}.entity-item.active{background:var(--bg-active)}.entity-item-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:13.5px;overflow:hidden}.entity-item-time{flex-shrink:0;font-size:11px}.library-detail{flex-direction:column;flex:1;min-width:0;display:flex;overflow-y:auto}.entity-detail{width:100%;max-width:680px;margin:0 auto;padding:24px 28px 60px}.entity-detail-head{align-items:center;gap:10px;margin-bottom:16px;display:flex}.entity-name-input{min-width:0;font-family:var(--font-serif);background:0 0;border:none;border-bottom:1px solid #0000;border-radius:0;flex:1;padding:4px 0;font-size:20px;font-weight:600}.entity-name-input:focus{border-bottom-color:var(--border)}.entity-save{flex-shrink:0;font-size:12px}.field-grid{grid-template-columns:1fr 1fr;column-gap:12px;display:grid}.field-grid .field-wide{grid-column:1/-1}.visual-identity-card{border:1px solid var(--border);background:var(--bg-panel);border-radius:8px;margin:2px 0 14px;padding:12px 14px}.visual-identity-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px;display:flex}.visual-identity-card p{margin:0;line-height:1.55}.visual-identity-card p+p{margin-top:5px}.visual-identity-status{border:1px solid var(--border);color:var(--text-dim);border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:12px}.visual-identity-status.status-provisional{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.visual-identity-status.status-provisional{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}}.visual-identity-status.status-provisional{color:var(--accent)}.visual-identity-status.status-stable{border-color:#6e9a79}@supports (color:color-mix(in lab, red, red)){.visual-identity-status.status-stable{border-color:color-mix(in srgb, #6e9a79 55%, var(--border))}}.visual-identity-status.status-stable{color:#7fab8a}.related-chips{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.related-chip{gap:6px}.chip-x{color:var(--text-dim);padding:0 2px;font-size:14px;line-height:1}.chip-x:hover{color:var(--danger)}.entity-meta{margin-top:4px;font-size:12px}.graph-page{flex:1;min-height:0;position:relative}.graph-page .react-flow{background:var(--bg)}.graph-page .react-flow__attribution{color:var(--text-dim);background:0 0}.graph-toolbar{z-index:10;pointer-events:none;flex-wrap:wrap;align-items:center;gap:10px;display:flex;position:absolute;top:10px;left:12px;right:12px}.graph-toolbar>*{pointer-events:auto}.graph-toolbar-group{background:var(--bg-elevated);border:1px solid var(--border);border-radius:7px;gap:2px;padding:2px;display:flex}.graph-search{width:180px;margin:0}.graph-filters{flex-wrap:wrap;gap:6px;display:flex}.graph-empty{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.graph-empty p{margin:0 0 8px}.gnode{--n-color:#8a8a85;border:1.6px solid var(--n-color);background:var(--bg-elevated);border-radius:9px;flex-direction:column;align-items:center;gap:2px;min-width:84px;max-width:180px;padding:8px 14px;font-size:13px;display:flex;box-shadow:0 2px 8px #14141214}.gnode.selected{box-shadow:0 0 0 3px var(--n-color)}@supports (color:color-mix(in lab, red, red)){.gnode.selected{box-shadow:0 0 0 3px color-mix(in srgb, var(--n-color) 35%, transparent)}}.gnode-character{--n-color:#7d94ad}.gnode-location{--n-color:#7fa08a}.gnode-faction{--n-color:#a08578}.gnode-item{--n-color:#9a8fae}.gnode-event{--n-color:#ab9668}.gnode-custom{--n-color:#8a8a85}.gnode-type{color:var(--n-color);letter-spacing:.1em;font-size:10.5px}.gnode-label{color:var(--text);text-align:center;word-break:break-all;font-weight:600}.gnode-handle{background:var(--n-color);border:2px solid var(--bg-elevated);width:9px;height:9px}.react-flow__node.search-hit .gnode{box-shadow:0 0 0 3px var(--accent)}@supports (color:color-mix(in lab, red, red)){.react-flow__node.search-hit .gnode{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 55%, transparent)}}.react-flow__edge.gedge .react-flow__edge-path{stroke:var(--text-dim);stroke-width:1.6px}.react-flow__edge.gedge.selected .react-flow__edge-path{stroke:var(--accent);stroke-width:2.2px}.react-flow__edge.gedge-past .react-flow__edge-path{stroke-dasharray:7 5}.react-flow__edge.gedge-secret .react-flow__edge-path{stroke-dasharray:2 5;opacity:.75}.react-flow__edge.gedge-unknown .react-flow__edge-path{stroke-dasharray:1 7;opacity:.7}.react-flow__edge-textbg{fill:var(--bg)}.react-flow__edge-text{fill:var(--text-dim);font-size:11px}.graph-inspector{z-index:11;background:var(--bg-elevated);border:1px solid var(--border);width:280px;box-shadow:var(--shadow);border-radius:10px;padding:14px 16px;position:absolute;top:56px;bottom:12px;right:12px;overflow-y:auto}.inspector-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.inspector-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13.5px;font-weight:600;overflow:hidden}.inspector-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.ai-page{flex-direction:column;flex:1;width:100%;max-width:860px;min-height:0;margin:0 auto;display:flex}.ai-messages{flex-direction:column;flex:1;gap:10px;padding:20px 24px;display:flex;overflow-y:auto}.ai-messages .empty-state{margin:auto}.ai-msg{white-space:pre-wrap;border-radius:10px;max-width:78%;padding:9px 13px;font-size:14px;line-height:1.7}.ai-msg-user{background:var(--bg-active);color:var(--text);align-self:flex-end}.ai-msg-system{background:var(--bg-panel);border:1px dashed var(--border);color:var(--text-dim);align-self:flex-start}.ai-unconfigured{font-size:12.5px}.ai-panel{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding:10px 24px 16px;display:flex}.ai-scopes{flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;display:flex}.ai-actions{flex-wrap:wrap;gap:6px;display:flex}.ai-input-row{align-items:flex-end;gap:10px;display:flex}.ai-input-row textarea{resize:none;flex:1}.ai-send{flex-shrink:0}.media-page{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:28px;overflow-y:auto}.illustration-header,.panel-heading,.candidate-title,.candidate-actions,.edit-reference-note{justify-content:space-between;align-items:center;gap:10px;display:flex}.illustration-header{margin-bottom:18px}.illustration-header h2,.panel-heading h3{align-items:center;gap:8px;margin:0;display:flex}.illustration-header p,.panel-heading p{margin:4px 0 0}.ai-health{background:var(--bg-hover);color:var(--text-dim);white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:12px}.ai-health.configured{color:#5f925d}.illustration-layout{grid-template-columns:minmax(0,1.55fr) minmax(270px,.85fr);align-items:start;gap:14px;display:grid}.illustration-panel,.candidate-section{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;padding:16px}.illustration-form{flex-direction:column;gap:9px;display:flex}.illustration-form>label,.illustration-row>label{font-size:12.5px;font-weight:600}.illustration-form textarea{resize:vertical;width:100%}.style-picker-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.style-picker-row select{width:100%}.style-custom-btn{white-space:nowrap;justify-content:center;min-width:112px}.style-custom-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.custom-style-field{border:1px solid var(--accent);background:var(--accent-soft);border-radius:8px;flex-direction:column;gap:5px;padding:10px;display:flex}.custom-style-field textarea{background:var(--bg-panel);min-height:68px}.style-description{color:var(--text-dim);margin:-3px 0 1px;font-size:12px;line-height:1.45}.illustration-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.illustration-row label{flex-direction:column;gap:6px;display:flex}.count-options{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.count-options button{border:1px solid var(--border);background:var(--bg-panel);color:var(--text-dim);border-radius:6px;padding:6px}.count-options button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.generate-btn{justify-content:center;min-height:40px;margin-top:2px}.compact{margin:0;font-size:12px;line-height:1.45}.edit-reference-note{border-left:3px solid var(--accent);color:var(--accent);justify-content:flex-start;padding-left:9px;font-size:12px}.link-btn{color:var(--accent);text-decoration:underline}.reference-panel{flex-direction:column;gap:12px;display:flex}.reference-empty{border:1px dashed var(--border);border-radius:8px;padding:18px 12px;font-size:12.5px}.reference-list{flex-direction:column;gap:8px;display:flex}.reference-chip{border:1px solid var(--border);border-radius:8px;grid-template-columns:52px 1fr 24px;align-items:center;gap:9px;padding:6px;font-size:12px;display:grid}.reference-chip img{object-fit:cover;border-radius:6px;width:52px;height:52px}.candidate-section{margin-top:14px}.candidate-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-top:14px;display:grid}.candidate-card{border:1px solid var(--border);background:var(--bg-panel);border-radius:10px;min-width:0;overflow:hidden}.candidate-card.status-approved{border-color:#6f9668}.candidate-image-preview{background:var(--bg-hover);cursor:zoom-in;width:100%;padding:0;display:block;position:relative;overflow:hidden}.candidate-image-preview>img{aspect-ratio:3/2;object-fit:contain;background:var(--bg-hover);width:100%;display:block}.candidate-image-preview>span{color:#fff;opacity:0;pointer-events:none;background:#141416c7;border:1px solid #ffffff2e;border-radius:6px;align-items:center;gap:5px;padding:5px 8px;font-size:12px;transition:opacity .12s,transform .12s;display:inline-flex;position:absolute;bottom:10px;right:10px;transform:translateY(3px)}.candidate-image-preview:hover>span,.candidate-image-preview:focus-visible>span{opacity:1;transform:translateY(0)}.candidate-image-preview:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.image-lightbox{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#07080aeb;place-items:center;padding:24px;animation:.14s ease-out lightbox-in;display:grid;position:fixed;inset:0}.image-lightbox-content{background:#151619;border:1px solid #ffffff24;border-radius:10px;flex-direction:column;max-width:min(94vw,1400px);max-height:94vh;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 80px #00000080}.image-lightbox-content>img{object-fit:contain;width:auto;max-width:94vw;height:auto;max-height:calc(94vh - 58px);display:block}.image-lightbox-content>footer{color:#d8d9dc;justify-content:space-between;align-items:center;gap:18px;min-height:54px;padding:8px 12px 8px 16px;font-size:13px;display:flex}.image-lightbox-content>footer>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.image-lightbox-close{z-index:1;color:#fff;background:#0a0a0cb8;border:1px solid #ffffff2e;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:10px;right:10px}.image-lightbox-close:hover,.image-lightbox-close:focus-visible{background:#0a0a0ceb}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}.candidate-body{flex-direction:column;gap:8px;padding:11px;display:flex}.candidate-actions{flex-wrap:wrap;justify-content:flex-start}.candidate-actions .btn{padding:5px 8px;font-size:12px}.reference-badge{color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:2px 7px;font-size:11px}.icon-btn.danger{color:var(--danger)}@media (width<=850px){.illustration-layout{grid-template-columns:1fr}.illustration-header{flex-direction:column;align-items:flex-start}.style-picker-row{grid-template-columns:1fr}.style-custom-btn{width:100%}.image-lightbox{padding:10px}.image-lightbox-content>footer{min-height:50px}}.import-page{flex:1;overflow-y:auto}.import-inner{flex-direction:column;align-items:flex-start;gap:14px;max-width:760px;margin:0 auto;padding:28px 28px 80px;display:flex}.import-fileinfo{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;flex-direction:column;gap:10px;width:100%;padding:14px 16px;display:flex}.import-fileinfo-row{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.import-filename{word-break:break-all;font-weight:600}.import-preview{background:var(--bg-panel);font-family:var(--font-serif);white-space:pre-wrap;word-break:break-all;max-height:200px;color:var(--text-dim);border-radius:7px;margin:0;padding:10px 12px;font-size:13.5px;line-height:1.8;overflow-y:auto}.import-preview-full{max-height:50vh;color:var(--text)}.import-modes{flex-wrap:wrap;gap:8px;display:flex}.import-form{border-top:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:6px;padding-top:12px;display:flex}.import-form .field-row{width:100%}@media (width<=1100px){.sidebar{width:220px}.library-list{width:240px}.graph-inspector{width:250px}}.ai-convbar{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:10px 24px 8px;display:flex}.ai-conv-select{max-width:220px;color:var(--text);background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;outline:none;padding:5px 8px;font-family:inherit;font-size:13px}.ai-usage{white-space:nowrap;margin-left:auto;font-size:12px}.ai-banner{border:1px solid var(--border);border-left:3px solid var(--danger);background:var(--bg-panel);color:var(--text);border-radius:8px;margin:10px 24px 0;padding:9px 14px;font-size:13.5px}.ai-msg-assistant{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);align-self:flex-start;max-width:86%}.ai-msg-content{white-space:pre-wrap;word-break:break-word}.ai-msg-footer{flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;font-size:11.5px;display:flex}.ai-msg-error{color:var(--danger)}.ai-msg-btn{border:1px solid var(--border);color:var(--text-dim);border-radius:5px;padding:1px 8px;font-size:11.5px}.ai-msg-btn:hover{background:var(--bg-hover);color:var(--text)}.ai-ctx-info{white-space:nowrap;margin-left:auto;font-size:11.5px}.ai-actions-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ai-tier button{padding:4px 14px;font-size:12.5px}.md-body p{margin:0 0 .6em}.md-body p:last-child{margin-bottom:0}.md-body h4,.md-body h5{font-size:15px;font-family:var(--font-ui);margin:.7em 0 .35em}.md-body h5{font-size:14px}.md-body ul,.md-body ol{margin:.3em 0 .6em;padding-left:1.5em}.md-body li{margin:.15em 0}.md-body blockquote{border-left:3px solid var(--border);color:var(--text-dim);margin:.4em 0;padding:.1em 0 .1em .9em}.md-body hr{border:none;border-top:1px solid var(--border);margin:.8em 0}.md-body code{background:var(--bg-panel);border:1px solid var(--border);border-radius:4px;padding:0 4px;font-size:.9em}.md-codeblock{border:1px solid var(--border);background:var(--bg-panel);border-radius:8px;margin:.5em 0;overflow:hidden}.md-codebar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:3px 10px;font-size:11.5px;display:flex}.md-codeblock pre{margin:0;padding:10px 12px;font-size:12.5px;line-height:1.6;overflow-x:auto}.md-codeblock pre code{background:0 0;border:none;padding:0}.ai-mode-tabs{align-self:flex-start;margin:10px 24px 0}.review-panel{flex:1;padding:14px 24px 60px;overflow-y:auto}.review-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;font-size:12.5px;display:flex}.review-group{margin-bottom:18px}.review-group-title{font-family:var(--font-serif);margin:0 0 8px;font-size:14px}.pc-item{border:1px solid var(--border);background:var(--bg-elevated);border-radius:9px;margin-bottom:8px;padding:10px 14px}.pc-accepted,.pc-edited{opacity:.75}.pc-rejected{opacity:.55}.pc-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pc-name{font-size:13.5px;font-weight:600}.pc-conf{font-size:11.5px}.pc-risk{color:var(--danger);opacity:.85;border:1px solid;border-radius:99px;padding:0 6px;font-size:11px}.pc-reason{margin:6px 0 0;font-size:12.5px}.pc-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.pc-evidence{border-left:3px solid var(--border);margin-top:8px;padding-left:10px;font-size:12.5px}.pc-evidence p{margin:2px 0}.pc-merge{flex-direction:column;gap:3px;margin-top:8px;font-size:12px;display:flex}.pc-dup{border:1px dashed var(--border);border-radius:7px;margin-top:8px;padding:8px 10px;font-size:12.5px}.pc-dup p{margin:0 0 4px}.pc-edit{flex-direction:column;gap:6px;margin-top:8px;display:flex}.pc-resolved{margin:6px 0 0;font-size:12px}.ai-chip{color:var(--text-dim);border:1px solid #0000;border-radius:99px;align-items:center;gap:5px;padding:1px 8px;font-size:11.5px;display:inline-flex}.ai-chip:hover{background:var(--bg-hover);color:var(--text)}.ai-chip-warn{color:var(--danger);opacity:.85}.ai-chip-note,.ai-chip-busy{color:var(--accent)}.ai-chip-breath{background:currentColor;border-radius:50%;width:6px;height:6px;animation:2.4s ease-in-out infinite ai-breath}@keyframes ai-breath{0%,to{opacity:.25}50%{opacity:.85}}.ai-chip-dot{background:var(--text-dim);opacity:.5;cursor:pointer;border-radius:50%;width:8px;height:8px;display:inline-block}.analysis-drawer{z-index:60;background:var(--bg-elevated);border:1px solid var(--border);width:300px;max-height:min(560px,100vh - 80px);box-shadow:var(--shadow);border-radius:10px;padding:12px 14px;font-size:12.5px;position:fixed;bottom:36px;right:10px;overflow-y:auto}.ad-row{justify-content:space-between;gap:10px;padding:3px 0;display:flex}.ad-row>span:last-child{text-align:right;word-break:break-all;min-width:0}.ad-small{font-size:11.5px}.ad-switch{border-top:1px solid var(--border);align-items:center;margin-top:6px;padding-top:8px}.ad-history{border-top:1px solid var(--border);flex-direction:column;gap:5px;margin-top:10px;padding-top:8px;display:flex}.ad-history-item{flex-direction:column;font-size:11.5px;display:flex}.pc-score{padding:0 8px;font-size:11px}.pc-endpoint{margin-top:6px}.pc-endpoint p{margin:0 0 4px}.pc-dup select,.pc-actions select{background:var(--bg-elevated);max-width:240px;color:var(--text);border:1px solid var(--border);border-radius:6px;padding:4px 8px;font-size:12.5px}.review-head select{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:4px 8px;font-size:12.5px}.pc-auto_applied{border-left:3px solid #6f9668}.pc-low_confidence{opacity:.8;border-left:3px solid var(--border)}.pc-reverted{opacity:.65}.gnode-instances{color:var(--accent);border:1px dashed;border-radius:99px;margin-top:2px;padding:0 6px;font-size:10px}.bookimport{flex-direction:column;gap:16px;margin-top:12px;display:flex}.bookimport-summary{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.bookimport-summary-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.bookimport-conf{border-radius:10px;padding:2px 8px;font-size:12px}.bookimport-conf-ok{color:#2e7d32;background:#2e7d3226}.bookimport-conf-warn{color:#b26a00;background:#b26a0026}.bookimport-conf-err{color:#c62828;background:#c6282826}.bookimport-warn{color:#b26a00;margin:0;font-size:13px}.bookimport-err{color:#c62828;font-size:13px}.bookimport-settings{border:1px solid var(--border);border-radius:8px;padding:10px 14px}.bookimport-settings summary{cursor:pointer;-webkit-user-select:none;user-select:none}.bookimport-settings .field,.bookimport-settings .btn{margin-top:8px}.bookimport-tree{border:1px solid var(--border);border-radius:8px;max-height:420px;padding:8px 12px;overflow-y:auto}.bookimport-vol{margin-bottom:10px}.bookimport-vol-title{background:var(--bg-primary);align-items:center;gap:8px;padding:4px 0;display:flex;position:sticky;top:0}.bookimport-chapters{margin:0;padding:0 0 0 14px;list-style:none}.bookimport-ch{border-bottom:1px dashed var(--border)}.bookimport-ch:last-child{border-bottom:none}.bookimport-ch-row{align-items:center;gap:8px;padding:3px 0;font-size:13px;display:flex}.bookimport-ch-row input,.bookimport-vol-title input{flex:1;font-size:13px}.bookimport-ch-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.bookimport-ch-tools{opacity:0;gap:6px;transition:opacity .15s;display:flex}.bookimport-ch-row:hover .bookimport-ch-tools{opacity:1}.bookimport-link{color:var(--accent,#4a6da7);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px}.bookimport-link:hover{text-decoration:underline}.bookimport-flag{color:#b26a00;white-space:nowrap;background:#b26a001f;border-radius:8px;padding:1px 6px;font-size:11px}.bookimport-body-preview{color:var(--text-secondary);background:var(--bg-secondary);white-space:pre-wrap;border-radius:6px;max-height:140px;margin:4px 0 8px;padding:8px 10px;font-size:12px;overflow-y:auto}.bookimport-confirm{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.bookimport-check{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.bookimport-progress{flex-direction:column;gap:10px;max-width:480px;margin-top:12px;display:flex}.bookimport-bar{background:var(--bg-secondary);border-radius:4px;height:8px;overflow:hidden}.bookimport-bar-fill{background:var(--accent,#4a6da7);height:100%;transition:width .2s}.bookimport-progress .btn{align-self:flex-start}.bookimport-done{flex-direction:column;gap:12px;max-width:560px;margin-top:12px;display:flex}.bookimport-stats{flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:14px;display:flex}.bookimport-actions{gap:10px;display:flex}.bookimport-ai-prompt{border:1px solid var(--border);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.bookimport-ai-prompt p{margin:0}.bookimport-error{flex-direction:column;gap:8px;margin-top:12px;display:flex}.bookimport-error-msg{color:#c62828;font-weight:500}.ai-exec-card{border:1px solid var(--border);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:10px;margin:8px 0;padding:12px 14px;display:flex}.ai-exec-title{margin:0;font-weight:600}.ai-exec-range-picker{flex-direction:column;gap:6px;display:flex}.ai-exec-radio{flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.ai-exec-num{text-align:center;width:64px}.ai-exec-summary{border-top:1px dashed var(--border);flex-direction:column;gap:4px;padding-top:8px;display:flex}.ai-exec-warn{color:#b26a00;margin:4px 0 0;font-size:13px}.ai-exec-actions{gap:10px;display:flex}.ai-exec-badge{color:var(--accent,#4a6da7);border:1px dashed;border-radius:99px;align-self:flex-start;margin-bottom:4px;padding:1px 8px;font-size:11px;display:inline-block}.ai-page{max-width:none;margin:0}.ai-messages,.review-panel{padding-left:max(24px,50% - 406px);padding-right:max(24px,50% - 406px)}.ai-msg{max-width:min(78%,670px)}.ai-msg-assistant{max-width:min(86%,740px)}.ai-convbar,.ai-panel{box-sizing:border-box;width:min(100%,860px);margin-left:auto;margin-right:auto}.ai-banner,.ai-exec-card{box-sizing:border-box;width:min(100% - 48px,812px);margin-left:auto;margin-right:auto}.ai-mode-tabs{margin-left:max(24px,50% - 406px)}.recovery-backdrop{z-index:70;background:#0008;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.recovery-dialog{background:var(--bg,#fff);color:var(--text,#222);border-radius:12px;width:min(760px,95vw);max-height:85vh;padding:24px;overflow:auto;box-shadow:0 15px 50px #0004}.recovery-dialog select,.recovery-dialog textarea{background:var(--bg,#fff);width:100%;color:inherit;border:1px solid #999;margin:8px 0;padding:10px}.recovery-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.acceptance-panel{z-index:100;color:#4c3b17;width:min(520px,100vw - 24px);max-height:calc(100vh - 24px);box-shadow:var(--shadow);background:#fff8df;border:1px solid #b38b35;border-radius:8px;padding:10px 14px;font-size:12px;position:fixed;top:12px;right:12px;overflow:auto}.acceptance-panel summary{cursor:pointer;font-weight:700}.acceptance-panel p{margin:6px 0}.acceptance-panel ol{margin:6px 0;padding-left:20px}.acceptance-panel code{overflow-wrap:anywhere}.local-login{border:1px solid var(--border);border-radius:8px;margin:14px 0;padding:12px}.local-login p{color:var(--text-dim);margin:6px 0;font-size:12px}.directory-modes{background:var(--bg-hover);border-radius:10px;gap:4px;margin:4px 12px 10px;padding:4px;display:flex}.directory-modes button{color:var(--text-dim);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:6px;padding:7px;display:flex}.directory-modes button[aria-pressed=true]{color:var(--accent);background:var(--bg-elevated);box-shadow:0 1px 4px #0001}.directory-modes svg{width:14px;height:14px}.manuscript-search{min-height:0;padding:0 12px 16px;overflow-y:auto}.manuscript-search input{border-radius:8px;width:100%;padding:10px;font-size:12px}.search-status{margin:12px 0 4px;font-size:12px;line-height:1.6}.search-hint{color:var(--text-dim);margin:0 0 14px;font-size:11px;line-height:1.6}.search-result{text-align:left;border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);cursor:pointer;border-radius:10px;margin:8px 0;padding:12px;transition:border-color .2s,background .2s;display:block}.search-result:hover,.search-result:focus-visible{border-color:var(--accent);background:var(--bg-elevated)}.search-result-location{color:var(--text-dim);overflow-wrap:anywhere;justify-content:space-between;gap:6px;margin-bottom:8px;font-size:11px;display:flex}.search-result-excerpt{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.8;display:block}.search-result mark{color:var(--accent);background:var(--accent-soft);border-radius:3px;padding:1px 2px}.chapter-move-dialog{border:1px solid var(--border);width:min(440px,100vw - 32px);color:var(--text);background:var(--bg-panel);box-shadow:var(--shadow);border-radius:18px;margin:auto;padding:28px}.chapter-move-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0006}.chapter-move-dialog h2{margin:0 0 8px;font-size:21px}.chapter-move-dialog label{margin:20px 0;display:block}.chapter-move-dialog select{width:100%;margin-top:8px;display:block}.chapter-move-dialog .writing-actions{justify-content:flex-end;margin-top:24px}.writing-desk{height:100%;min-height:0;display:flex;position:relative;overflow:clip}.writing-desk>.editor-wrap{flex:1;min-width:0}.writing-desk .editor-page{box-sizing:border-box;width:100%;max-width:var(--editor-page-width)}.writing-edge{z-index:21;cursor:pointer;background:0 0;border:0;width:14px;padding:0;position:absolute;inset:0 0 0 auto}.writing-edge span{background:var(--accent);opacity:.32;border-radius:8px;width:3px;height:64px;transition:opacity .25s,height .25s,box-shadow .25s;position:absolute;top:43%;right:3px}.writing-edge:hover span,.writing-edge:focus-visible span{opacity:.85;height:80px;box-shadow:0 0 16px var(--accent-soft)}.writing-edge:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:8px}.writing-edge.is-open{pointer-events:none;visibility:hidden}.writing-companion{z-index:20;opacity:0;visibility:hidden;pointer-events:none;width:min(400px,100% - 16px);padding-right:12px;transition:transform .38s cubic-bezier(.22,1,.36,1),opacity .24s,visibility 0s .38s;position:absolute;top:12px;bottom:12px;right:0;transform:translate(102%)}.writing-companion.is-open{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:translate(0)}.writing-sidebar{overscroll-behavior:contain;scrollbar-width:thin;border:1px solid var(--border);background:linear-gradient(150deg, var(--bg-elevated), var(--bg-panel) 65%);border-radius:20px;height:100%;padding:24px;font-size:14px;line-height:1.65;overflow-y:auto;box-shadow:-12px 12px 40px #0002,0 2px 8px #0001}.writing-sidebar-eyebrow{letter-spacing:.2em;color:var(--text-dim);margin-bottom:5px;font-size:10px;display:block}.writing-sidebar{scrollbar-color:var(--border) transparent}.writing-sidebar header strong{letter-spacing:.04em;font-size:21px;font-weight:600;display:block}.writing-sidebar-close{border:1px solid var(--border);width:32px;height:32px;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:50%;place-items:center;transition:background .2s,color .2s;display:grid}.writing-sidebar-close:hover{background:var(--accent-soft);color:var(--accent)}.writing-sidebar header{justify-content:space-between;align-items:start;gap:10px;margin-bottom:20px;display:flex}.writing-sidebar header small,.writing-note-field small{color:var(--text-dim);font-weight:400;display:block}.writing-sidebar nav{background:var(--bg-hover);border-radius:12px;gap:4px;margin-bottom:24px;padding:4px;display:flex}.writing-sidebar nav .btn{white-space:nowrap;background:0 0;border:0;border-radius:9px;flex:1;padding:8px 4px;font-size:13px}.writing-sidebar nav .btn[aria-pressed=true]{background:var(--bg-elevated);box-shadow:0 2px 5px #0001}.writing-sidebar [aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.writing-sidebar input,.writing-sidebar select,.writing-sidebar textarea{box-sizing:border-box;width:100%;margin:8px 0}.writing-sidebar textarea{resize:vertical;background:var(--bg);border-radius:12px;min-height:120px;padding:12px;line-height:1.7;transition:border-color .2s,box-shadow .2s}.writing-sidebar textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.writing-note-field{margin-bottom:24px}.writing-actions{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.writing-editor-actions{z-index:2;background:var(--bg);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:8px 0;display:flex;position:sticky;top:0}.writing-note-status{color:var(--text-dim);overflow-wrap:anywhere;font-size:12px}.writing-card{border-bottom:1px solid var(--border);padding:12px 0}.writing-card summary{cursor:pointer}.writing-card summary small{float:right;color:var(--text-dim)}.writing-card p{white-space:pre-wrap;overflow-wrap:anywhere}@media (prefers-reduced-motion:reduce){.writing-companion,.writing-edge span{transition:none}}.writing-edge-label{display:none}@media (hover:none),(pointer:coarse),(width<=700px){.writing-edge{border:1px solid var(--border);background:var(--bg-elevated);width:44px;height:64px;color:var(--accent);border-right:0;border-radius:12px 0 0 12px;inset:92px 0 auto auto;box-shadow:-3px 2px 12px #0002}.writing-edge span{display:none}.writing-edge-label{writing-mode:vertical-rl;letter-spacing:.15em;margin:auto;font-size:13px;font-weight:500;display:block}.writing-sidebar-close{min-width:44px;min-height:44px}}@media (width<=700px){.workspace{position:relative;overflow:clip}.workspace>.sidebar{z-index:8;width:220px;position:absolute;top:0;bottom:0;left:54px;box-shadow:8px 0 24px #0002}.writing-desk .editor-page{padding:20px 16px 45vh}.writing-companion{width:calc(100% - 8px);padding-right:8px;top:8px;bottom:8px}.writing-sidebar{border-radius:16px;padding:18px}.writing-sidebar header{gap:6px}}:root{--page-gutter:clamp(22px, 4.5vw, 76px)}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.btn{border-radius:3px;justify-content:center;min-height:38px;text-decoration:none}.icon-btn{border-radius:3px;width:34px;height:34px}.btn,.icon-btn,.site-links a,.work-read-link{transition:background .18s,color .18s,border-color .18s}.btn-primary:hover{color:var(--accent-text)}.platform-shell{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.platform-shell>#root{flex:1;height:auto;min-height:0;overflow:hidden}.platform-shell>aside,.platform-shell>.acceptance-panel{flex-shrink:0}.site-navigation{min-height:82px;padding:16px var(--page-gutter);border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0;align-items:center;gap:32px;display:flex}.site-wordmark{color:var(--text);font-family:var(--font-serif);letter-spacing:.14em;white-space:nowrap;align-items:baseline;gap:10px;font-size:30px;font-weight:600;text-decoration:none;display:inline-flex}.site-wordmark span{letter-spacing:.2em;font-size:14px;font-weight:400}.site-links{flex-wrap:wrap;align-items:center;gap:clamp(18px,3vw,44px);margin-left:auto;display:flex}.site-links a{color:var(--text-dim);border-bottom:1px solid #0000;padding:10px 0;font-size:14px;text-decoration:none}.site-links a:hover,.site-links a[aria-current=page]{color:var(--text);border-bottom-color:var(--accent)}.site-account{border-left:1px solid var(--border);align-items:center;gap:16px;padding-left:24px;font-size:14px;display:flex}.site-account span{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.site-account button{color:var(--text-dim);padding:8px 0}.account-message{padding:10px var(--page-gutter);background:var(--accent-soft);flex-shrink:0;margin:0;line-height:1.7}.eyebrow{letter-spacing:.14em;font-size:13px;font-weight:500}.local-login{border:1px dashed var(--border);margin:18px 0;padding:14px;font-size:13px}.local-login p{line-height:1.7}.local-login>div{flex-wrap:wrap;gap:8px;display:flex}.acceptance-panel{border:1px solid var(--border);background:var(--bg-elevated);width:max-content;max-width:calc(100vw - 24px);max-height:50dvh;color:var(--text-dim);box-shadow:none;border-radius:3px;font-size:12px;top:auto;bottom:12px;right:12px}.acceptance-panel[open]{width:min(520px,100vw - 24px);box-shadow:var(--shadow)}.acceptance-panel summary{font-weight:400}.author-dashboard .home-inner{max-width:1440px;padding:52px var(--page-gutter) 80px}.author-dashboard .home-corner{top:22px;right:var(--page-gutter)}.author-dashboard .home-header{justify-content:space-between;align-items:flex-end;gap:24px;margin:0 0 34px;display:flex}.author-dashboard .brand{letter-spacing:.05em;margin:12px 0;font-size:clamp(34px,3.6vw,50px);font-weight:400}.author-dashboard .brand-sub{color:var(--text-dim);margin-top:12px;font-size:15px;line-height:1.8}.collection-count{font-size:40px;font-family:Georgia, var(--font-serif);align-items:baseline;gap:14px;font-weight:400;display:flex}.collection-count small{font-family:var(--font-ui);color:var(--text-dim);font-size:13px}.author-dashboard .home-actions{justify-content:flex-start;gap:10px;margin-bottom:34px}.author-dashboard .home-actions .btn{min-height:42px;padding:10px 16px;font-size:14px}.work-filters{gap:22px;margin-bottom:0;padding-bottom:0}.work-filters button{border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:14px 0}.work-filters button.selected{color:var(--accent);border-bottom-color:var(--accent);background:0 0}.author-dashboard .novel-list{gap:0}.author-dashboard .novel-card{border:0;border-bottom:1px solid var(--border);cursor:default;background:0 0;border-radius:0;gap:26px;padding:28px 0}.author-dashboard .novel-card:hover{background:0 0}.novel-index{min-width:28px;color:var(--text-dim);font-variant-numeric:tabular-nums;align-self:flex-start;padding-top:7px;font-size:13px}.author-dashboard .novel-card-title{text-align:left;overflow-wrap:anywhere;font-size:24px;font-weight:500;line-height:1.5}.author-dashboard .novel-card-title:hover{color:var(--accent);text-underline-offset:6px;text-decoration:underline}.author-dashboard .novel-card-title-row{gap:12px}.author-dashboard .novel-card-meta{margin-top:10px;font-size:13px}.author-dashboard .novel-card-synopsis{max-width:70ch;margin-top:14px;font-size:15px;line-height:1.8}.author-dashboard .novel-card-actions{opacity:1;flex-shrink:0;justify-content:flex-end;gap:8px;max-width:250px}.novel-open{color:var(--accent)}.novel-tags{font-size:12px}.genre-chip,.review-badge{border-radius:2px;padding:3px 7px;font-size:12px}.empty-state{font-size:16px;line-height:1.9}.platform-shell>.reading-page,.platform-shell>.review-page{flex:1;height:auto;min-height:0;margin:0 auto}.reading-page{padding:36px var(--page-gutter) 80px;width:100%}.reading-collection{max-width:1440px}.reading-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.reading-page a{text-underline-offset:5px}.reading-page .btn{text-decoration:none}.reading-page .btn-primary{color:var(--accent-text)}.collection-heading{justify-content:space-between;align-items:flex-end;gap:30px;padding:22px 0 48px;display:flex}.collection-heading h1{font-family:var(--font-serif);letter-spacing:.03em;margin:8px 0 14px;font-size:clamp(32px,3.8vw,54px);font-weight:400;line-height:1.5}.collection-heading p{color:var(--text-dim);margin:0;font-size:16px}.collection-caption{color:var(--text-dim);white-space:nowrap;letter-spacing:.15em;padding-bottom:5px;font-size:13px}.public-works{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px;display:grid}.public-work{border-top:1px solid var(--text);flex-direction:column;min-width:0;padding-top:16px;display:flex}.public-work-number{color:var(--text-dim);justify-content:space-between;margin-bottom:26px;font-size:12px;display:flex}.work-presentation{grid-template-columns:160px minmax(0,1fr);gap:26px;margin-bottom:28px;display:grid}.work-cover{aspect-ratio:3/4;background:var(--bg-panel);align-self:start;width:100%;overflow:hidden}.work-cover .preview-cover{object-fit:cover;width:100%;height:100%;display:block}.work-cover-type{color:#f4f5e9;background:#234b37}.work-cover-type>div{flex-direction:column;height:100%;min-height:210px;padding:18px;display:flex}.work-cover-type span{opacity:.85;font-size:11px;line-height:1.8}.work-cover-type strong{font-family:var(--font-serif);overflow-wrap:anywhere;margin:auto 0;padding:18px 0;font-size:25px;font-weight:400;line-height:1.55}.public-work:nth-child(3n+2) .work-cover-type{background:#4b4d3c}.public-work:nth-child(3n+3) .work-cover-type{background:#3e4851}.work-description{min-width:0}.work-description .eyebrow{margin:0 0 10px;font-size:12px}.work-description h2{font-size:27px;font-family:var(--font-serif);overflow-wrap:anywhere;margin:0 0 12px;font-weight:500;line-height:1.5}.work-description .reader-byline{margin:0 0 16px}.work-description .synopsis-preview{color:var(--text-dim);margin:0 0 14px;font-size:15px;line-height:1.9}.public-work .synopsis-preview{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.work-tagline{color:var(--text-dim);font-size:12px}.reading-page .work-read-link{border-top:1px solid var(--border);justify-content:space-between;margin-top:auto;padding:15px 0;font-size:14px;text-decoration:none;display:flex}.work-read-link:hover{color:var(--text)}.collection-empty{border-top:1px solid var(--border);text-align:center;grid-column:1/-1;padding:70px 24px}.collection-empty h2{font-family:var(--font-serif);margin:16px 0;font-size:30px;font-weight:400}.collection-empty p{color:var(--text-dim);font-size:16px}.collection-empty .btn{margin-top:18px}.reading-detail{max-width:1040px}.reading-detail>.work-presentation{grid-template-columns:190px minmax(0,1fr);gap:42px;margin-top:40px}.contents-heading{border-bottom:1px solid var(--text);justify-content:space-between;align-items:center;margin-top:46px;display:flex}.contents-heading h3{font-family:var(--font-serif);margin:0 0 18px;font-size:24px;font-weight:400}.contents-heading span{color:var(--text-dim);font-size:13px}.chapter-contents{margin:0;padding:0;list-style:none}.chapter-contents li{border-bottom:1px solid var(--border)}.chapter-contents a{align-items:baseline;gap:18px;padding:18px 0;font-size:16px;text-decoration:none;display:flex}.chapter-contents a span:first-child{color:var(--text-dim);font-size:13px}.chapter-contents a span:last-child{margin-left:auto}.reading-detail>h2{font-family:var(--font-serif);margin:22px 0 36px;font-size:32px;font-weight:500;line-height:1.6}.chapter-back{margin:28px 0 18px;font-size:14px;display:inline-block}.reading-detail .reader-body{font-family:var(--font-serif);letter-spacing:.02em;font-size:19px;line-height:2}.reading-detail .reader-body p{margin:1.2em 0}.reading-detail .reader-body img{margin:28px auto;display:block}.activity-bar{gap:10px;width:54px;padding:14px 0}.ab-btn{border-radius:3px;width:36px;height:36px}.sidebar{background:var(--bg-panel)}.tab-bar{background:var(--bg)}.publication-card{box-shadow:none;border-radius:3px}.publication-page{padding:32px}.publication-hero h2{font-weight:500}.dialog,.context-menu{border-radius:4px}@media (width<=1100px){.public-works{gap:26px}.public-work .work-presentation{grid-template-columns:120px minmax(0,1fr);gap:20px}.public-work .work-description h2{font-size:23px}.public-work .work-cover-type strong{font-size:21px}.author-dashboard .novel-card-actions{max-width:180px}}@media (width<=800px){.site-navigation{flex-wrap:wrap;gap:18px;min-height:72px;padding-top:14px;padding-bottom:14px}.site-account{border-left:0;padding-left:0}.site-wordmark{font-size:26px}.public-works{grid-template-columns:1fr}.public-work .work-presentation{grid-template-columns:150px minmax(0,1fr)}.collection-heading{padding-bottom:30px}.collection-caption{display:none}.author-dashboard .novel-card{flex-wrap:wrap;gap:16px}.author-dashboard .novel-card-actions{justify-content:flex-start;width:100%;max-width:none;padding-left:44px}.author-dashboard .home-inner{padding-top:42px}.collection-count{font-size:30px}.work-filters{gap:16px}}@media (width<=480px){.site-navigation{gap:10px}.site-wordmark{gap:5px;font-size:23px}.site-wordmark span{font-size:12px}.site-links{gap:16px}.site-links a{font-size:13px}.collection-count{display:none}.public-work .work-presentation,.reading-detail>.work-presentation{grid-template-columns:100px minmax(0,1fr);gap:18px}.work-cover-type>div{min-height:155px;padding:12px}.work-cover-type strong{font-size:19px}.work-description h2{font-size:24px}.reading-detail>.work-presentation .synopsis-preview{font-size:14px}.chapter-contents a{flex-wrap:wrap;gap:8px}.chapter-contents a span:first-child{width:100%}.collection-heading h1{font-size:30px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.entry-page{--text:#f4f3e8;--text-dim:#c4cfbf;--accent:#e3edb7;--accent-text:#233328;--border:#ddeacf33;--bg-elevated:#24392d;--accent-soft:#dfeeb814;isolation:isolate;min-height:100dvh;color:var(--text);background:#32483a url(/images/lvyin-dawn.webp) 50%/cover no-repeat;flex-direction:column;display:flex;position:relative}.entry-page:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#0d1e167a,#0d1e160a 35%,#0d1e1633 75%,#0d1e16a3);position:absolute;inset:0}.entry-navigation{justify-content:space-between;align-items:center;gap:24px;padding:25px clamp(24px,4.5vw,76px);display:flex}.entry-wordmark{font-family:var(--font-serif);letter-spacing:.16em;color:#fff;text-shadow:0 1px 10px #18372766;align-items:center;gap:20px;font-size:29px;font-weight:500;text-decoration:none;display:inline-flex}.entry-wordmark>span{font-family:var(--font-ui);letter-spacing:.28em;border-left:1px solid #e4ebd770;padding-left:18px;font-size:10px}.entry-explore{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#142c1d38;border:1px solid #e4ebd760;border-radius:30px;align-items:center;gap:26px;padding:11px 19px;font-size:14px;text-decoration:none;display:flex}.entry-explore:hover{background:#142c1d80}.entry-stage{flex:1;place-items:center;width:100%;padding:26px 24px 38px;display:grid}.entry-card{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:linear-gradient(145deg,#293f2ee8,#15291df0);border:1px solid #dcebc947;border-radius:22px;width:min(440px,100%);padding:32px 36px 30px;box-shadow:0 24px 80px #08180f38,inset 0 1px #ffffff12}.auth-heading{text-align:center;margin-bottom:24px}.auth-edition{letter-spacing:.15em;color:#cfddbd;margin-bottom:18px;font-family:Georgia,serif;font-size:10px;display:block}.auth-heading h1{font-family:var(--font-serif);letter-spacing:.04em;margin:0 0 12px;font-size:clamp(25px,2.5vw,31px);font-weight:400;line-height:1.5}.auth-heading p{color:var(--text-dim);margin:0;font-size:13px;line-height:1.8}.auth-methods{border:1px solid var(--border);background:#09190e38;border-radius:9px;grid-template-columns:1fr 1fr;gap:4px;margin:0 0 22px;padding:4px;display:grid}.auth-methods button{color:var(--text-dim);border-radius:6px;padding:9px 8px;font-size:14px;line-height:1.5}.auth-methods button[aria-pressed=true]{color:var(--text);background:#eaf3d41f;box-shadow:0 1px 4px #051e1520}.auth-methods button:disabled,.auth-text-button:disabled{opacity:.5;cursor:default}.auth-form{gap:18px;display:grid}.auth-form label{color:#e7ecdd;gap:9px;font-size:13px;display:grid}.auth-label-row{justify-content:space-between;align-items:baseline;display:flex}.auth-label-row>span{color:var(--text-dim);font-size:11px}.auth-form input{width:100%;min-width:0;min-height:45px;color:var(--text);background:#03140c26;border:1px solid #ddeacf42;border-radius:8px;padding:12px 14px;font-size:16px}.auth-form input::placeholder{color:#b2c1ae;opacity:1;font-size:13px}.auth-form input:focus{background:#03140c40;border-color:#d5e4b2}.auth-form input:autofill{color:#fff;box-shadow:inset 0 0 0 100px #314b39}.auth-form input:-webkit-autofill{-webkit-text-fill-color:#fff;caret-color:#fff;-webkit-box-shadow:inset 0 0 0 100px #314b39}.auth-password-field,.auth-code-field{background:#03140c26;border:1px solid #ddeacf42;border-radius:8px;align-items:center;display:flex}.auth-password-field:focus-within,.auth-code-field:focus-within{border-color:#d5e4b2}.auth-password-field input,.auth-code-field input{background:0 0;border:0;flex:1;width:0}.auth-password-field button,.auth-code-field button{color:#e1edc7;white-space:nowrap;flex-shrink:0;min-height:30px;padding:0 13px;font-size:12px}.auth-code-field button{border-left:1px solid var(--border)}.auth-code-field button:disabled{color:var(--text-dim);opacity:.65;cursor:default}.auth-form .entry-submit{color:#203a29;background:#e0ebbb;border:1px solid #dce7b4;border-radius:8px;justify-content:space-between;min-height:47px;margin-top:4px;padding:12px 16px;font-size:14px;font-weight:600;display:flex;box-shadow:0 3px 18px #081c1320}.auth-form .entry-submit:hover:not(:disabled){filter:none;background:#ecf4ce}.auth-form .entry-submit:disabled{opacity:.78;cursor:not-allowed}.auth-switch{color:var(--text-dim);justify-content:center;gap:8px;margin:20px 0 22px;font-size:13px;display:flex}.auth-text-button{color:#e5eecb;font-size:inherit;text-underline-offset:4px}.auth-text-button:hover{text-decoration:underline}.auth-provider-heading{border-top:1px solid var(--border);color:var(--text-dim);justify-content:space-between;align-items:center;margin-bottom:13px;padding-top:19px;font-size:12px;display:flex}.auth-coming-soon{color:#c4cfb9;font-size:11px}.auth-providers{grid-template-columns:1fr 1fr;gap:12px;display:grid}.auth-providers button{color:#cbd6c3;cursor:not-allowed;background:#e5f2ce0a;border:1px solid #ddeacf40;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:43px;font-size:13px;display:flex}.auth-qq-icon{letter-spacing:-.06em;font-family:Georgia,serif;font-size:16px}.auth-registration-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;padding-bottom:15px;font-size:14px;display:flex}.auth-optional-password{color:var(--text-dim);font-size:12px}.auth-optional-password summary{cursor:pointer;padding:4px 0}.auth-optional-password label{margin-top:10px}.auth-field-hint{color:var(--text-dim);margin:0;font-size:12px;line-height:1.7}.auth-notice,.entry-feedback:not(:empty){color:#f1f2dd;overflow-wrap:anywhere;background:#e2ecba1a;border-radius:6px;margin:0;padding:10px 12px;font-size:13px;line-height:1.7}.entry-feedback:empty{display:none}.entry-footer{color:#e2e9d9;letter-spacing:.08em;justify-content:space-between;gap:20px;padding:0 clamp(24px,4.5vw,76px) 27px;font-size:12px;display:flex}.entry-page .acceptance-panel{color:#d4dfc8;background:#273f30;border-color:#d5e2b844;border-radius:8px;font-size:11px}.entry-page .local-login .btn{color:#f0f3e8;background:#324d3b}.entry-page .local-login{border-color:#d5e2b844}@media (width>=801px) and (height<=780px){.entry-navigation{padding-top:18px;padding-bottom:14px}.entry-stage{padding-top:10px;padding-bottom:22px}.entry-card{padding-top:25px;padding-bottom:24px}.auth-heading{margin-bottom:18px}.auth-edition{margin-bottom:10px}.auth-form{gap:15px}}@media (width<=600px){.entry-page{background-position:42%}.entry-navigation{padding:19px 22px}.entry-wordmark{gap:12px;font-size:25px}.entry-wordmark>span{padding-left:12px;font-size:9px}.entry-explore{gap:14px;padding:9px 12px;font-size:12px}.entry-stage{padding:18px 18px 34px}.entry-card{border-radius:18px;padding:27px 24px}.entry-footer{padding:0 24px 26px;font-size:11px}.entry-footer>span:last-child{display:none}}.reading-page.library-page{width:100%;max-width:1560px;padding:28px var(--page-gutter) 24px;overflow-y:auto}.library-page{--library-line:var(--border);--library-muted:var(--text-dim);--font-editorial:var(--font-serif);color:var(--text)}.library-page button,.library-page input,.library-page select{font:inherit}.library-page button{cursor:pointer}.library-page a{color:inherit;text-decoration:none}.library-page a:hover{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.library-page :is(button,a,input,select):focus-visible{outline:2px solid var(--accent);outline-offset:4px}.library-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}.library-kicker{letter-spacing:.14em;color:var(--library-muted);font-size:11px}.library-heading h1{font-family:var(--font-editorial);letter-spacing:.03em;margin:6px 0 0;font-size:30px;font-weight:500;line-height:1.25}.library-heading h1 span{font-family:var(--font-ui);letter-spacing:.12em;vertical-align:middle;color:var(--library-muted);border-left:1px solid #a7b2a1;margin-left:18px;padding-left:18px;font-size:13px;display:inline-block}.library-search{border-bottom:1px solid #7b8c77;width:min(330px,40%);height:40px;display:flex}.library-search input{width:100%;min-width:0;color:inherit;background:0 0;border:0;border-radius:0;padding:8px 0;font-size:13px}.library-search input::placeholder{color:var(--library-muted)}.library-search button{width:42px;color:inherit;background:0 0;border:0;flex:0 0 42px;place-items:center;display:grid}.library-genres{border-top:1px solid var(--accent);border-bottom:1px solid var(--library-line);flex-wrap:wrap;gap:22px;padding:0 0 0 1px;display:flex}.library-genres button{color:var(--text-dim);white-space:nowrap;background:0 0;border:0;padding:13px 0 12px;font-size:14px;position:relative}.library-genres button[aria-pressed=true]{color:var(--accent);font-weight:600}.library-genres button[aria-pressed=true]:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:-1px;left:0;right:0}.library-genres button:hover{color:var(--accent)}.library-toolbar{justify-content:space-between;align-items:center;gap:12px;padding:12px 0 20px;font-size:12px;display:flex}.library-status{gap:18px;display:flex}.library-status button{color:var(--library-muted);background:0 0;border:0;padding:0}.library-status button[aria-pressed=true]{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.library-sort{color:var(--library-muted);align-items:center;gap:8px;display:flex}.library-sort select{color:var(--accent);background:0 0;border:0;padding:2px;font-size:12px}.library-layout{grid-template-columns:minmax(0,1fr) 258px;align-items:start;gap:32px;display:grid}.library-main{min-width:0}.library-section-heading{border-bottom:1px solid var(--library-line);justify-content:space-between;align-items:baseline;gap:14px;padding-bottom:10px;display:flex}.library-section-heading h2{font-family:var(--font-editorial);overflow-wrap:anywhere;margin:0;font-size:19px;font-weight:600;line-height:1.5}.library-section-heading>span{color:var(--library-muted);flex-shrink:0;font-size:11px}.library-reset{text-underline-offset:3px;background:0 0;border:0;margin-left:12px;padding:0;text-decoration:underline}.library-books{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:26px;margin:0;padding:0;list-style:none;display:grid}.library-books>li{border-bottom:1px solid var(--border);min-width:0}@supports (color:color-mix(in lab, red, red)){.library-books>li{border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.library-books>li{padding:12px 0 10px}.library-book-title{align-items:baseline;gap:9px;display:flex}.library-book-title a{text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-editorial);font-size:17px;font-weight:600;line-height:1.5;overflow:hidden}.library-book-title>span{color:var(--text-dim);flex-shrink:0;font-size:10px}.library-book-title>.library-completed{color:#a0794f}.library-book-meta{color:var(--library-muted);align-items:center;gap:8px;margin:3px 0 0;font-size:11px;line-height:1.6;display:flex}.library-book-meta span:last-child{text-overflow:ellipsis;white-space:nowrap;border-left:1px solid #cbd2c5;padding-left:8px;overflow:hidden}.library-book-synopsis{color:var(--library-muted);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:11px;line-height:1.6;overflow:hidden}.library-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:15px 0 0;display:flex}.library-pagination>span{color:var(--library-muted);font-size:11px}.library-pagination>div{align-items:center;gap:3px;display:flex}.library-pagination button{min-width:28px;height:28px;color:var(--text-dim);background:0 0;border:1px solid #0000;padding:0 5px;font-size:12px}.library-pagination button[aria-current=page]{background:var(--bg-panel);border-color:#889a7e}.library-pagination button:disabled{opacity:.3;cursor:default}.library-page-gap{padding:0 4px;font-size:12px}.library-popular{border-left:1px solid var(--library-line);padding-left:24px}.library-ranking-note{color:var(--library-muted);margin:12px 0 4px;font-size:11px;line-height:1.7}.library-popular ol{margin:0;padding:0;list-style:none}.library-popular li{border-bottom:1px solid var(--border);align-items:baseline;gap:12px;display:flex}@supports (color:color-mix(in lab, red, red)){.library-popular li{border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.library-popular li{padding:13px 0 11px}.library-rank{font-family:var(--font-editorial);color:#9ca694;flex:0 0 19px;font-size:17px;font-style:italic}.library-popular li:nth-child(-n+3) .library-rank{color:var(--accent)}.library-popular li>div{flex:1;min-width:0}.library-popular li a{font-family:var(--font-editorial);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;display:block;overflow:hidden}.library-popular li p{color:var(--library-muted);justify-content:space-between;gap:8px;margin:5px 0 0;font-size:10px;display:flex}.library-popular li p span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.library-popular li p span:last-child{flex-shrink:0}.library-ranking-rule{color:var(--library-muted);margin:16px 0 0;font-size:10px;line-height:1.8}.library-updates{margin-top:30px}.library-table-scroll{overflow-x:auto}.library-updates table{table-layout:fixed;border-collapse:collapse;text-align:left;width:100%;font-size:12px}.library-updates th{color:var(--library-muted);background:var(--bg-panel);padding:10px 10px 9px 0;font-size:11px;font-weight:400}.library-updates th:first-child{width:28%}.library-updates th:nth-child(2){width:34%}.library-updates th:nth-child(3){width:17%}.library-updates th:last-child{width:21%}.library-updates td{border-bottom:1px solid var(--border);padding:11px 12px 11px 0}@supports (color:color-mix(in lab, red, red)){.library-updates td{border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.library-updates td{color:var(--text-dim)}.library-updates td:last-child{font-variant-numeric:tabular-nums;white-space:nowrap;padding-right:0;font-size:11px}.library-updates td>:is(a,span){white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.library-updates .library-update-title{color:var(--text);font-family:var(--font-editorial);font-size:14px}.library-empty{color:var(--text-dim);padding:32px 0}.library-empty p{font-family:var(--font-editorial);margin:0 0 8px;font-size:20px}.library-empty span,.library-small-empty{color:var(--library-muted);font-size:12px}.library-small-empty{padding:16px 0}.library-popular-empty{padding:22px 0}.library-popular-empty>span{color:#929c88;letter-spacing:.15em;font-size:11px}.library-popular-empty p{font-family:var(--font-editorial);margin:10px 0;font-size:19px;line-height:1.7}.library-popular-empty small{color:var(--library-muted);font-size:11px;line-height:1.8}.library-message{padding:40px 0;font-size:14px}.library-message h2{font-family:var(--font-editorial);font-size:23px}.library-message button{color:var(--accent);background:0 0;border:0;border-bottom:1px solid;padding:8px 0}.library-footer{border-top:1px solid var(--library-line);color:var(--library-muted);flex-wrap:wrap;gap:16px;margin-top:38px;padding-top:17px;font-size:11px;display:flex}.library-footer>span:first-child{font-family:var(--font-editorial);color:var(--text-dim)}.library-footer a{margin-left:auto}.library-sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1200px){.library-books{grid-template-columns:repeat(2,minmax(0,1fr))}.library-layout{grid-template-columns:minmax(0,1fr) 230px;gap:24px}.library-popular{padding-left:20px}.library-genres{column-gap:20px}}@media (width<=850px){.library-layout{grid-template-columns:minmax(0,1fr)}.library-popular{border-left:0;margin-top:12px;padding-left:0}.library-popular ol{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;display:grid}.library-genres{gap:0 20px}.library-genres button{padding:10px 0;font-size:13px}.library-ranking-note{margin-bottom:0}}@media (width<=520px){.reading-page.library-page{padding:22px 20px}.library-header{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:18px}.library-heading h1{font-size:27px}.library-search{width:100%}.library-toolbar{gap:8px}.library-status{gap:12px}.library-sort{gap:2px}.library-books{gap:0 18px}.library-book-title a{font-size:16px}.library-book-title>span{display:none}.library-book-meta{gap:5px}.library-book-meta span:last-child{padding-left:5px}.library-updates table{min-width:570px}.library-section-heading h2{font-size:18px}.library-footer>span:nth-child(2){display:none}}.startup-loading,.startup-error{color:var(--text-dim);text-align:center;margin:0;padding:20vh 24px}@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-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
