:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,sans-serif;color:#20392e;background:#f5f7f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;border:0;border-radius:8px;background:#236447;color:#fff;padding:13px 20px;font-weight:600}button:hover{background:#174b34}button:disabled{opacity:.6;cursor:wait}input{display:block;width:100%;border:1px solid #d9e1d9;border-radius:7px;padding:12px;margin-top:9px;background:#fff;color:#20392e;outline:none}input:focus{border-color:#348359;box-shadow:0 0 0 3px #34835915}label{display:block;font-size:14px;font-weight:550;margin:23px 0}h1,h2,h3,p{margin-top:0}h2{font-size:21px}p{line-height:1.8}.brand{font-size:29px;letter-spacing:1px;font-weight:750;display:flex;align-items:center;gap:12px}.brand span{font-size:12px;font-weight:500;letter-spacing:2px}.eyebrow{font-size:11px;letter-spacing:2px;color:#748779;font-weight:600}.muted{color:#7b877f;font-size:14px}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;max-width:1200px;margin:auto;padding:70px;gap:100px}.intro{border-left:3px solid #c2d2ad;padding-left:36px}.intro .brand{margin-bottom:70px}.intro h1{font-size:56px;line-height:1.3;letter-spacing:-2px}.intro>p:not(.eyebrow){color:#748477;font-size:14px}.intro small{display:block;margin-top:70px;color:#8b978c}.login-card{padding:48px;background:#fff;border:1px solid #e5eae0;border-radius:16px;box-shadow:0 15px 60px #20392e06}.login-card button,.create button{width:100%;margin-top:6px}.help{font-size:12px;color:#8b978c;margin-top:18px}.error,.success{font-size:13px;padding:12px 16px;border-radius:7px}.error{background:#fff0ec;color:#9d4539}.success{background:#e7f2e5;color:#286443}.shell{min-height:100vh;display:flex}aside{width:238px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid #e2e8de;padding:35px 24px;display:flex;flex-direction:column}.nav-label{font-size:11px;color:#98a196;margin-top:57px;letter-spacing:2px}.nav-item{padding:13px;font-size:14px;border-radius:8px}.selected{color:#276644;background:#eaf2e6;font-weight:600}.next{margin-top:auto;padding:18px;background:#f7f8f2;border-radius:10px}.next strong{font-size:12px}.next p{font-size:12px;color:#88917f;margin:8px 0 0}.profile{margin-top:25px;display:flex;align-items:center;gap:10px;font-size:12px}.avatar{background:#e7eddc;width:30px;height:30px;border-radius:50%;display:grid;place-items:center}.text{background:none;color:#7b887c;font-size:12px;padding:5px;margin-left:auto}.text:hover{background:#eef2e9}.workspace{margin-left:238px;padding:0 46px 32px;width:calc(100% - 238px)}header{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e1e7db;font-size:12px;color:#85917f}.badge{border:1px solid #dce4d5;border-radius:20px;padding:6px 13px;font-size:11px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin:43px 0 28px}.page-heading h1{font-size:32px;letter-spacing:-1px;margin-bottom:12px}.page-heading p:last-child{margin-bottom:0}.count{font-size:12px;color:#7f8b78}.columns{display:grid;grid-template-columns:minmax(300px,1fr) 310px;gap:24px}.panel{background:#fff;border:1px solid #e1e7db;border-radius:12px;overflow:hidden}.panel-title{padding:23px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eef1e9}.panel-title h2{font-size:16px;margin:0}.panel-title span{font-size:11px;color:#8b9786}.create{padding:25px;height:fit-content}.create h2{font-size:18px}.create .eyebrow{font-size:10px}.create label{font-size:12px}table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}th{font-size:11px;color:#94a08e;font-weight:500;background:#fcfdf9}td,th{padding:19px 23px;border-bottom:1px solid #f0f3eb}.category-icon{display:inline-grid;place-items:center;background:#f1f4e9;color:#7b8f69;border-radius:6px;width:30px;height:30px;margin-right:12px;font-size:12px}.status{font-size:11px;background:#eef5e9;padding:4px 9px;border-radius:20px;color:#63904e}.empty{text-align:center;padding:80px 25px;color:#7b8a70}.empty>span{font-size:38px;color:#a4b48d}.empty h3{font-size:17px;margin:22px 0 8px;color:#53664a}.empty p{font-size:12px}footer{margin-top:28px;color:#98a18f;font-size:11px}.splash{padding:80px;color:#78916f}@media(max-width:1000px){.columns{grid-template-columns:1fr}.login{gap:40px;padding:35px}.intro h1{font-size:42px}.workspace{padding:0 25px 25px}}@media(max-width:650px){.login{display:block;padding:30px 20px}.intro{display:none}.login-card{padding:30px}aside{width:80px;padding:30px 10px}.brand{font-size:22px}.brand span,.nav-label,.next,.profile>span:not(.avatar){display:none}.nav-item{font-size:11px;padding:15px 3px;margin-top:40px}.profile{display:flex;flex-wrap:wrap}.workspace{margin-left:80px;width:calc(100% - 80px);padding:0 15px 25px}.page-heading h1{font-size:25px}.page-heading{margin-top:30px}.count{display:none}td,th{padding:15px 10px}.category-icon{display:none}}.nav-item{background:transparent;text-align:left;font-weight:500;color:#70806e;margin:3px 0}.nav-item:hover{background:#f1f5ed}.nav-item.selected{background:#eaf2e6;color:#276644}.source-form{padding:26px;margin-bottom:24px}.form-row{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}.form-row label{margin:10px 0 20px}.source-preview{padding:25px;margin-top:24px;border:1px solid #dce6d3;border-radius:10px;background:#fafcf7}.source-preview .description{font-size:13px;color:#61705c;white-space:pre-wrap}.warning{font-size:12px;color:#967742;margin:6px 0}.directory-preview{max-height:260px;overflow:auto;font-size:13px;line-height:2}.directory-preview span{color:#8d9a87;font-size:11px}select{font:inherit;padding:12px;width:100%;margin-top:9px;border:1px solid #d9e1d9;border-radius:7px;background:#fff;color:#20392e}.small{font-size:12px;padding:9px 13px;white-space:nowrap}.secondary{background:#edf3e7;color:#426b3a}.secondary:hover{background:#dcebd3}.table-scroll{overflow-x:auto}td small{display:block;color:#8e9c87;font-size:10px;margin:4px 0}td strong{font-size:13px;font-weight:550}.search{max-width:200px;margin:0;padding:8px;font-size:12px}.detail{margin-top:24px}.task-actions{padding:22px;font-size:13px}.task-actions details{margin-top:20px}.chapter-read{padding:35px;max-width:800px;margin:auto}.chapter-read>div{white-space:pre-wrap;line-height:2;font-size:16px;color:#394b33}.list-note{padding:0 23px 10px}summary{cursor:pointer;font-size:13px;color:#627655;margin:15px 0}@media(max-width:750px){.form-row{grid-template-columns:1fr;gap:0}.source-form{padding:18px}.panel-title{gap:10px}.search{max-width:130px}}.editor{margin-top:24px}.editor-body{padding:25px}.metadata{display:grid;grid-template-columns:1fr 200px;gap:30px}.metadata label{margin:16px 0}.cover-box img,.cover-empty{width:180px;height:240px;object-fit:contain;background:#eff2e9;border-radius:8px}.cover-empty{display:grid;place-items:center;font-size:13px;color:#8b9780}.cover-box{padding-top:15px}.cover-box input{font-size:11px;padding:7px}textarea{display:block;width:100%;border:1px solid #d9e1d9;border-radius:8px;padding:12px;margin-top:9px;font:inherit;color:#20392e;resize:vertical;line-height:1.8}textarea:focus{outline:2px solid #d5e5ce}.publication-bar{display:flex;gap:14px;align-items:center;font-size:12px;color:#8a967f;padding-bottom:15px;border-bottom:1px solid #e5eadf}.section-heading{margin:35px 0 18px;font-size:17px}.chapter-workspace{display:grid;grid-template-columns:200px 1fr;gap:25px}.chapter-workspace nav{max-height:620px;overflow:auto;border-right:1px solid #e0e6d9;padding-right:12px}.group-heading{color:#8e9b83;font-size:11px;margin:14px 0 5px}.chapter-link{background:none;color:#5d7452;width:100%;text-align:left;font-size:12px;padding:10px 8px;font-weight:400}.chapter-link:hover,.chapter-link.current{background:#eaf1e4}.manuscript{min-height:420px;font-size:15px;white-space:pre-wrap}.action-row{display:flex;gap:10px;flex-wrap:wrap}.action-row button{font-size:12px}.danger{background:#f8ece6;color:#9f5d47}.danger:hover{background:#f1dbd1}.check-result{padding:20px;margin-top:18px;background:#f7f9f2;border-radius:10px}.check-result h3{font-size:15px}.reading-preview{padding:30px;margin:25px 0;border:1px solid #dbe5d2;border-radius:10px;background:#fbfcf7}.reading-preview article{line-height:2;margin:35px 0}.reading-preview article>div{white-space:pre-wrap}.reading-preview nav{display:flex;gap:10px;flex-wrap:wrap}.reading-preview a{font-size:12px;color:#69845a}.reading-preview .text{float:right}@media(max-width:800px){.metadata,.chapter-workspace{grid-template-columns:1fr}.chapter-workspace nav{max-height:160px;border-right:0;border-bottom:1px solid #e0e6d9}.editor-body{padding:16px}}.source-home-link{display:block;min-width:180px;max-width:280px;overflow-wrap:anywhere;color:#38774e;font-size:12px;line-height:1.7;text-decoration:underline;text-underline-offset:3px}.book-cover{object-fit:contain;background:#edf1e6;border-radius:7px}.list-cover{display:block;width:54px;height:72px}.material-toolbar{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin:20px 0}.material-toolbar>input{max-width:320px;margin:0}.upload-label{font-size:12px;margin:0}.upload-label input{font-size:12px;padding:7px;max-width:260px}.material-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}.material-card{background:#fff;border:1px solid #dfe6d8;border-radius:12px;overflow:hidden}.material-card>.book-cover{display:block;width:100%;height:210px;border-radius:0;background:#f0f3e9}.material-card-body{padding:18px}.material-card h3{font-size:14px;overflow-wrap:anywhere;line-height:1.5}.material-card .help{margin:6px 0}.material-card .action-row{margin-top:15px}.material-deleted{height:110px;display:grid;place-items:center;color:#99a18c;background:#f0f3e9;font-size:13px}.material-picker{padding:24px;margin-top:24px;background:#fafcf6}.material-picker .page-heading{margin:0 0 20px}.material-picker h1{font-size:23px}.delete-confirm{padding:12px;background:#fcf2e9;border-radius:8px;font-size:12px;margin-top:12px}.cover-box>button{display:block;width:100%;margin-top:10px}.publication-published{background:#def3e5;color:#216440}.publication-draft{background:#fff0ce;color:#895f12}.publication-unpublished{background:#eceef2;color:#646c78}.novel-filters{gap:16px;flex-wrap:wrap}.novel-filters select{max-width:150px;margin:0;padding:8px}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:20px;font-size:12px}.publication-time{min-width:190px;font-size:12px}.publication-time input,.publication-time select{padding:8px;font-size:12px}.publication-time .action-row{margin-top:10px}.standalone-workspace{max-width:1440px;padding:30px;margin:auto}.workspace-time{margin:20px 0;padding:16px;background:#f7f9f3;border-radius:8px}.workspace-time h3{font-size:14px}.workspace-link{color:#326948;white-space:nowrap;font-size:12px}.bulk-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0;font-size:12px}.bulk-toolbar input[type=checkbox],.batch-results input[type=checkbox],td input[type=checkbox]{width:16px;height:16px;margin:0}.batch-results{margin-top:20px;max-height:600px;overflow:auto}.batch-results select{min-width:150px;font-size:12px}.batch-results td{padding:12px}.database-cell{max-width:220px;max-height:64px;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.database-json{white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px;overflow:auto;background:#f5f6f8;padding:12px;border-radius:8px;font-size:12px}.task-failed-count{color:#b42318;font-weight:700}.novel-batch-toolbar{padding:16px;background:#f6f8fc;border:1px solid #e1e6ef;border-radius:10px;margin:14px 0}.batch-selection,.batch-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.batch-selection{margin-bottom:12px}.batch-actions .form-row{margin:0;display:contents}.novel-batch-toolbar>p{margin-bottom:0}.batch-review,.batch-import{padding:18px;border:1px solid #d9e2f0;border-radius:10px;margin:14px 0;background:#fbfcff}.batch-review h3{margin-top:0}.batch-result-list{max-height:360px;overflow:auto;margin:12px 0}.batch-result{padding:10px 0;border-bottom:1px solid #e5eaf1}.batch-result p{margin:4px 0}.batch-warning{color:#805515;font-size:13px}.batch-actions [role=status]{flex-basis:100%;margin:8px 0;overflow-wrap:anywhere}.pagination{flex-wrap:wrap}.page-jump,.page-jump label{display:inline-flex;align-items:center;gap:8px;margin:0}.page-jump label{font-size:12px;white-space:nowrap}.page-jump input{width:72px;margin:0;padding:7px 8px;font-size:12px}.page-jump button{white-space:nowrap}
