#app{font-family:Microsoft YaHei,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%}body,html{width:100%}:root{--ground:#3d4a35;--ground-2:#2e3a28;--paper:#e8e4d9;--paper-2:#d9d3c2;--paper-3:#efe9db;--ink:#1f2a1b;--ink-2:#4a4f3a;--ink-3:#6b6a66;--ink-4:#98958d;--hairline:#b4afa1;--hairline-2:rgba(31,42,27,0.1);--moss:#8fa876;--moss-soft:rgba(143,168,118,0.14);--moss-deep:#6b8258;--sage:#5e6347;--sage-soft:rgba(94,99,71,0.12);--danger:#b05050;--warning:#a47148;--success:#5e6347;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:72px;--space-9:120px;--font-ui:"Inter Tight",system-ui,-apple-system,"Segoe UI",sans-serif;--font-serif:"Fraunces",Georgia,"Times New Roman",serif;--ease:cubic-bezier(0.22,1,0.36,1);--el-color-primary:#8fa876;--el-color-primary-light-3:#a6bc92;--el-color-primary-light-5:#b8caa7;--el-color-primary-light-7:#c9d7bb;--el-color-primary-light-9:#e1e9d7;--el-color-primary-dark-2:#6b8258;--el-border-radius-base:0;--el-border-radius-small:0;--el-border-radius-round:0;--el-font-family:var(--font-ui);--el-border-color:var(--hairline);--el-border-color-light:var(--hairline);--el-border-color-lighter:var(--paper-2);--el-text-color-primary:var(--ink);--el-text-color-regular:var(--ink);--el-text-color-secondary:var(--ink-3);--el-text-color-placeholder:var(--ink-4);--el-bg-color:var(--paper);--el-bg-color-page:var(--ground);--el-fill-color:var(--paper-2);--el-fill-color-light:var(--paper-3);--el-fill-color-blank:var(--paper)}body,html{margin:0;padding:0;height:100%;font-family:var(--font-ui);font-size:14px;line-height:1.55;color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}#app,body,html{background:var(--ground)}#app{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.12)}::-webkit-scrollbar-track{background:transparent}.folio{font-family:var(--font-ui);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sage)}.folio .num{color:var(--moss);margin-right:6px;font-weight:500}.chapter-h1{font-family:var(--font-serif);font-size:40px;line-height:1.05;font-weight:500;letter-spacing:-.015em;color:var(--ink);margin:0}.chapter-h1 em{font-style:italic;color:var(--moss);font-weight:400}.chapter-dek{font-family:var(--font-serif);font-style:italic;font-size:15px;color:var(--ink-3);line-height:1.6;margin-top:8px;max-width:520px}.page-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:24px;margin-bottom:48px;padding-bottom:24px;border-bottom:1px solid var(--ink)}.page-head .left .folio{margin-bottom:8px}.stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);margin-bottom:32px}.stat{padding:24px;border-right:1px solid var(--hairline)}.stat:last-child{border-right:0}.stat .label{font-family:var(--font-ui);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}.stat .value{font-family:var(--font-serif);font-size:40px;line-height:.95;font-weight:500;letter-spacing:-.02em;color:var(--ink)}.stat .value em{font-style:italic;font-weight:400;font-size:.5em;color:var(--moss);margin-left:6px;vertical-align:middle}.stat .delta{font-family:var(--font-ui);font-size:11px;letter-spacing:.1em;color:var(--ink-3);margin-top:12px}.stat .delta.up{color:var(--sage)}.stat .delta.down{color:var(--danger)}.surface-card{background:var(--paper);border:1px solid var(--ink);padding:32px 24px}.field{margin-bottom:24px}.field label{display:block;font-family:var(--font-ui);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.field .el-input__wrapper,.field .el-textarea__inner,.field .input{background:transparent!important;box-shadow:none!important;border-radius:0!important;border-bottom:1px solid var(--ink-4);padding:8px 0!important;color:var(--ink)!important;font-family:var(--font-serif)!important;font-size:17px!important}.field .el-input__wrapper.is-focus,.field .input:focus{border-bottom-color:var(--moss);box-shadow:none!important}.field .input::-moz-placeholder{color:var(--ink-4);font-style:italic}.field .input::placeholder{color:var(--ink-4);font-style:italic}.field .el-input__inner{background:transparent!important}.seg-control{display:flex;border:1px solid var(--ink)}.seg-control button{flex:1;background:transparent;border:0;border-right:1px solid var(--ink);color:var(--ink-2);padding:12px;font-family:var(--font-ui);font-size:10px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:all .25s var(--ease)}.seg-control button:last-child{border-right:0}.seg-control button.on{background:var(--ink);color:var(--paper)}.seg-control button:hover:not(.on){color:var(--moss)}.btn-ghost,.btn-ink{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 20px;font-family:var(--font-ui);font-size:11px;letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--ink);cursor:pointer;background:transparent;color:var(--ink);transition:all .25s var(--ease)}.btn-ink{background:var(--ink);color:var(--paper)}.btn-ink:hover{background:var(--moss);border-color:var(--moss)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}.btn-danger{color:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:var(--danger);color:var(--paper)}.el-button{border-radius:0!important;font-family:var(--font-ui);letter-spacing:.16em;text-transform:uppercase;font-size:11px}.el-button--primary{background:var(--ink)!important;border-color:var(--ink)!important;color:var(--paper)!important}.el-button--primary:hover{background:var(--moss)!important;border-color:var(--moss)!important}.el-button--default{background:transparent!important;border-color:var(--ink)!important;color:var(--ink)!important}.el-button--default:hover{background:var(--ink)!important;color:var(--paper)!important}.el-button--danger{background:var(--danger)!important;border-color:var(--danger)!important;color:var(--paper)!important}.el-button--text{background:transparent!important;border:0!important;color:var(--ink-2)!important;text-decoration:underline;text-underline-offset:3px;-webkit-text-decoration-color:var(--hairline);text-decoration-color:var(--hairline)}.el-button--text:hover{color:var(--moss)!important;-webkit-text-decoration-color:var(--moss)!important;text-decoration-color:var(--moss)!important}.el-card{background:var(--paper)!important;border:1px solid var(--ink)!important;border-radius:0!important;box-shadow:none!important}.el-card__header{border-bottom:1px solid var(--hairline)!important;padding:16px 24px!important;font-family:var(--font-serif)!important;font-size:18px!important;font-weight:500}.el-card__body{padding:24px!important}.el-table,table.t{background:var(--paper)!important;border:1px solid var(--ink)!important;--el-table-border-color:var(--hairline);--el-table-border:1px solid var(--hairline);--el-table-header-bg-color:var(--paper-2);--el-table-row-hover-bg-color:var(--paper-3);--el-table-header-text-color:var(--ink-3);--el-table-text-color:var(--ink);font-family:var(--font-ui);font-size:13px;border-radius:0!important}.el-table th.el-table__cell,.el-table tr td{background:transparent!important;border-bottom:1px solid var(--hairline)!important;border-color:var(--hairline)!important}.el-table thead th{font-family:var(--font-ui);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);font-weight:500;background:var(--paper-2)!important;border-bottom:1px solid var(--ink)!important}.el-table__row{transition:background .2s var(--ease)}.el-tag{border-radius:0!important;border:1px solid var(--ink)!important;background:var(--paper-3)!important;color:var(--ink)!important;font-family:var(--font-ui);font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:0 8px;height:20px;line-height:18px}.el-tag.el-tag--success,.tag.moss{color:var(--moss)!important;border-color:var(--moss)!important;background:var(--moss-soft)!important}.el-tag.el-tag--info,.tag.sage{color:var(--sage)!important;border-color:var(--sage)!important;background:var(--sage-soft)!important}.el-tag.el-tag--danger,.tag.danger{color:var(--danger)!important;border-color:var(--danger)!important;background:transparent!important}.el-switch{--el-switch-off-color:var(--paper-2);--el-switch-on-color:var(--moss);--el-switch-border-color:var(--ink)}.el-switch__core{border:1px solid var(--ink)!important;border-radius:0!important}.el-input__wrapper,.el-select__wrapper,.el-textarea__inner{background:var(--paper)!important;box-shadow:0 0 0 1px var(--hairline) inset!important;border-radius:0!important}.el-input__wrapper:hover,.el-select__wrapper:hover,.el-textarea__inner:hover{box-shadow:0 0 0 1px var(--ink) inset!important}.el-input__wrapper.is-focus,.el-select__wrapper.is-focused,.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--moss) inset!important;outline:none}.el-textarea__inner{color:var(--ink);font-family:var(--font-serif)}.el-input__inner{color:var(--ink)}.el-dialog{background:var(--paper)!important;border:1px solid var(--ink)!important;border-radius:0!important;box-shadow:0 24px 48px rgba(0,0,0,.18)!important}.el-dialog__header{border-bottom:1px solid var(--hairline)!important;padding:20px 24px!important}.el-dialog__title{font-family:var(--font-serif)!important;font-size:22px!important;font-weight:500}.el-dialog__body{padding:24px!important}.el-dialog__footer{border-top:1px solid var(--hairline)!important;padding:16px 24px!important}.el-pagination{--el-pagination-bg-color:transparent;--el-pagination-button-bg-color:var(--paper);--el-pagination-button-color:var(--ink-2);--el-pagination-button-border-color:var(--hairline);--el-pagination-button-hover-bg-color:var(--ink);--el-pagination-button-hover-color:var(--paper);--el-pagination-hover-color:var(--moss);font-family:var(--font-ui);font-size:11px;letter-spacing:.08em}.el-pagination .btn-next,.el-pagination .btn-prev,.el-pagination .el-pager li{background:transparent!important;border:1px solid var(--hairline)!important;border-radius:0!important;color:var(--ink-2)!important;font-family:var(--font-serif);font-style:italic}.el-pagination .btn-next.is-active,.el-pagination .btn-prev.is-active,.el-pagination .el-pager li.is-active{background:var(--ink)!important;color:var(--paper)!important;border-color:var(--ink)!important}.el-form-item__label{font-family:var(--font-ui);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3)!important;line-height:1.4;padding-bottom:6px}.dropzone{border:1px dashed var(--ink-4);background:var(--paper-3);padding:56px 24px;text-align:center;color:var(--ink-3);cursor:pointer;transition:background .25s var(--ease),border-color .25s var(--ease)}.dropzone:hover{background:var(--paper-2);border-color:var(--moss)}.dropzone .ico{width:32px;height:32px;margin:0 auto 12px;border:1px solid var(--ink-4);display:grid;place-items:center;color:var(--ink-2);font-size:14px}.dropzone .divider{font-family:var(--font-serif);font-style:italic;font-size:15px;color:var(--ink-2);margin-bottom:4px}.dropzone .hint{font-family:var(--font-ui);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin-top:12px}.el-upload-dragger{background:var(--paper-3)!important;border:1px dashed var(--ink-4)!important;border-radius:0!important}.el-upload-dragger:hover{border-color:var(--moss)!important}.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;background:var(--paper);max-width:100vw;overflow-x:hidden}.app-shell .app-sidebar{background:var(--ground-2);color:var(--paper-3);padding:32px 16px 24px;display:flex;flex-direction:column;gap:8px;min-width:0;overflow-x:hidden}.app-shell .app-sidebar .brand{display:flex;align-items:baseline;gap:8px;margin-bottom:24px;padding:0 12px}.app-shell .app-sidebar .brand .vol{font-family:var(--font-ui);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--moss)}.app-shell .app-sidebar .brand h1{font-family:var(--font-serif);font-size:24px;font-weight:500;margin:0;color:var(--paper-3);letter-spacing:-.01em}.app-shell .app-sidebar .brand h1 em{font-style:italic;color:var(--moss);font-weight:400}.app-shell .app-sidebar .sub{font-family:var(--font-serif);font-style:italic;font-size:12px;color:rgba(232,228,217,.6);line-height:1.55;padding:0 12px;margin-bottom:24px}.app-shell .app-sidebar .search{display:flex;align-items:baseline;border-bottom:1px solid rgba(232,228,217,.25);padding:0 12px 4px;margin-bottom:20px;color:rgba(232,228,217,.5);font-size:12px}.app-shell .app-sidebar .search input{flex:1;background:transparent;border:0;outline:none;color:var(--paper-3);font-family:var(--font-serif);font-size:14px;font-style:italic;padding:0}.app-shell .app-sidebar .search input::-moz-placeholder{color:rgba(232,228,217,.35)}.app-shell .app-sidebar .search input::placeholder{color:rgba(232,228,217,.35)}.app-shell .app-sidebar .search .kbd{font-family:var(--font-ui);font-size:9px;letter-spacing:.18em;color:var(--moss);border:1px solid var(--moss);padding:1px 4px}.app-shell .app-sidebar .nav-section{margin-top:8px}.app-shell .app-sidebar .nav-section h6{margin:0 0 12px;font-family:var(--font-ui);font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:rgba(232,228,217,.45);border-bottom:1px solid rgba(232,228,217,.12);padding:0 12px 6px}.app-shell .app-sidebar .nav-item{display:grid;grid-template-columns:24px 1fr;align-items:baseline;gap:12px;padding:8px 12px;color:rgba(232,228,217,.7);font-family:var(--font-serif);font-size:14px;cursor:pointer;border-left:2px solid transparent;transition:color .2s var(--ease),background .2s var(--ease),border-color .2s var(--ease);text-decoration:none}.app-shell .app-sidebar .nav-item:hover{color:var(--paper-3);background:rgba(232,228,217,.04)}.app-shell .app-sidebar .nav-item.active{color:var(--paper-3);background:rgba(143,168,118,.1);border-left-color:var(--moss)}.app-shell .app-sidebar .nav-item .num{font-family:var(--font-ui);font-size:9px;letter-spacing:.18em;color:rgba(232,228,217,.4)}.app-shell .app-sidebar .nav-item.active .num{color:var(--moss)}.app-shell .app-sidebar .nav-item em{font-style:italic}.app-shell .app-main{display:flex;flex-direction:column}.app-shell .app-topbar{height:64px;border-bottom:1px solid var(--ink);display:flex;align-items:center;padding:0 32px;gap:20px;background:var(--paper)}.app-shell .app-topbar .crumbs{display:flex;align-items:baseline;gap:8px;color:var(--ink-3);font-family:var(--font-ui);font-size:11px;letter-spacing:.18em;text-transform:uppercase}.app-shell .app-topbar .crumbs .current{color:var(--ink);font-family:var(--font-serif);font-size:18px;font-weight:500;font-style:italic;text-transform:none;letter-spacing:0}.app-shell .app-topbar .crumbs .sep{color:var(--ink-4)}.app-shell .app-topbar .spacer{flex:1}.app-shell .app-topbar .user-chip{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-2);border:1px solid var(--ink);padding:6px 12px;background:var(--paper-3);cursor:pointer}.app-shell .app-topbar .user-chip .avatar{width:24px;height:24px;background:var(--ground-2);color:var(--moss);display:grid;place-items:center;font-family:var(--font-serif);font-style:italic;font-size:13px}.app-shell .app-content{padding:48px 32px 96px;flex:1;min-width:0;max-width:100%;overflow-x:hidden}.table-scroll{width:100%;overflow-x:auto;background:var(--paper);border:1px solid var(--ink)}.table-scroll .el-table{width:100%}.list-toolbar{display:flex;align-items:center;gap:24px;padding:16px 0;margin-bottom:20px;border-bottom:1px solid var(--hairline)}.list-toolbar .search-input{width:280px}.list-toolbar .seg{display:flex;gap:16px}.list-toolbar .seg .lab{font-family:var(--font-ui);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin-right:8px}.list-toolbar .seg button{background:transparent;border:0;font-family:var(--font-serif);font-size:14px;color:var(--ink-3);cursor:pointer;padding:4px 0;border-bottom:1px solid transparent}.list-toolbar .seg button.on{color:var(--ink);border-bottom-color:var(--moss)}.list-toolbar .spacer{flex:1}.cell-id{font-family:var(--font-ui);color:var(--ink-3);font-size:11px;letter-spacing:.08em}.thumb{width:64px;height:48px;background:var(--paper-2);border:1px solid var(--ink);display:block;-o-object-fit:cover;object-fit:cover}.title-cell{font-family:var(--font-serif);font-size:15px;font-weight:500;color:var(--ink)}.title-cell em{font-style:italic;color:var(--moss)}.row-actions{display:flex;gap:4px;justify-content:flex-end}.icon-btn{width:28px;height:28px;background:transparent;border:1px solid var(--hairline);color:var(--ink-3);display:grid;place-items:center;cursor:pointer;transition:color .2s var(--ease),border-color .2s var(--ease)}.icon-btn:hover{color:var(--moss);border-color:var(--moss)}.container{padding:24px}.empty{text-align:center;padding:80px 24px;color:var(--ink-3);font-family:var(--font-serif);font-size:16px}.empty,.empty em{font-style:italic}.empty em{color:var(--moss)}