*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f5f4f1;--surface:#ffffff;--surface-2:#f0efe9;--border:#e2e1db;--border-2:#cccbbe;--text-primary:#1a1917;--text-secondary:#6b6a64;--text-muted:#9b9a94;--accent:#3d5a80;--accent-hover:#2c4466;--accent-light:#e8eef6;--green:#2d7a4f;--green-light:#e6f4ed;--yellow:#92700a;--yellow-light:#fef8e6;--red:#8b2635;--red-light:#fbeaed;--orange:#8b4a0c;--orange-light:#fef2e6;--nav-width:220px;--header-h:56px;--radius-sm:4px;--radius:8px;--shadow-sm:0 1px 3px rgba(0,0,0,.06);--font:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB",sans-serif}html{font-size:14px;scroll-behavior:smooth}body{background:var(--bg);color:var(--text-primary);font-family:var(--font);line-height:1.6}a{color:inherit;text-decoration:none}.app-layout,.sidebar{display:flex;min-height:100vh}.sidebar{width:var(--nav-width);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh}.sidebar-logo{padding:20px 20px 16px;border-bottom:1px solid var(--border);display:block}.sidebar-logo:hover .logo-name{color:var(--accent)}.logo-main{display:flex;align-items:center;gap:8px}.logo-mark{width:22px;height:22px;border:1px solid var(--accent-light);border-radius:7px;background:linear-gradient(180deg,#fff 0,var(--accent-light) 100%);position:relative;flex:0 0 auto;box-shadow:0 3px 10px rgba(45,91,142,.12)}.logo-mark-page{position:absolute;left:6px;top:5px;width:9px;height:12px;border:1.5px solid var(--accent);border-radius:2px;background:var(--surface)}.logo-mark-page:after{content:"";position:absolute;left:2px;top:3px;width:5px;height:1.5px;border-radius:2px;background:var(--accent-light);box-shadow:0 4px 0 var(--accent-light)}.logo-mark-spark{position:absolute;right:4px;top:4px;width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:-2px 9px 0 -1px var(--green)}.logo-name{font-size:13px;font-weight:700;color:var(--accent);display:block}.logo-sub{font-size:11px;color:var(--text-muted);margin-top:2px;display:block}.sidebar-nav{padding:12px 10px;flex:1 1}.nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13.5px;transition:background .15s,color .15s;margin-bottom:1px}.nav-item:hover{background:var(--surface-2);color:var(--text-primary)}.nav-item.active{background:var(--accent-light);color:var(--accent);font-weight:600}.nav-icon{width:16px;height:16px;opacity:.8}.nav-badge{margin-left:auto;background:var(--accent);color:white;font-size:10px;font-weight:600;padding:1px 6px;border-radius:20px;min-width:18px;text-align:center}.sidebar-bottom{padding:12px 10px;border-top:1px solid var(--border)}.nav-button{width:100%;background:transparent;border:0;font:inherit;cursor:pointer}.account-mini{padding:10px 12px;margin-bottom:8px;border:1px solid var(--border);background:var(--surface-2);border-radius:var(--radius-sm)}.account-mini span{display:block;color:var(--text-muted);font-size:11px;margin-bottom:4px}.account-mini b{display:block;font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-content{flex:1 1;min-width:0;display:flex;flex-direction:column}.page-header{background:var(--surface);border-bottom:1px solid var(--border);padding:0 28px;height:var(--header-h);justify-content:space-between;position:-webkit-sticky;position:sticky;top:0;z-index:10;gap:16px}.page-header,.page-heading{display:flex;align-items:center}.page-heading{gap:10px;min-width:0}.page-back-btn{height:30px;padding:0 9px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;font-size:12px;white-space:nowrap}.page-back-btn:hover{background:var(--surface-2);color:var(--accent);border-color:var(--border-2)}.page-title{font-size:15px;font-weight:600}.page-subtitle,.text-muted{color:var(--text-muted)}.page-body{padding:24px 28px;flex:1 1;max-width:1400px;width:100%}.page-narrow{max-width:980px}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all .15s;white-space:nowrap;line-height:1.4;background:transparent}.btn-primary{background:var(--accent);color:white;border-color:var(--accent)}.btn-primary:hover{background:var(--accent-hover)}.btn-default{background:var(--surface);color:var(--text-primary);border-color:var(--border)}.btn-default:hover{background:var(--surface-2);border-color:var(--border-2)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover{background:var(--surface-2);color:var(--text-primary)}.btn-danger{background:var(--red-light);color:var(--red);border-color:#e8b4bb}.btn-sm{padding:4px 10px;font-size:12px}.btn-xs{padding:2px 8px;font-size:11px;border-radius:3px}.w-full{width:100%}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm)}.card-sm{padding:14px 16px}.table-card{padding:0;overflow:hidden}.card-title{font-size:13px;font-weight:600;margin-bottom:12px}.section{margin-bottom:20px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.section-title{font-size:13px;font-weight:600}.section-sub{color:var(--text-muted);font-size:12px;font-weight:400}.stats-grid{display:grid;grid-gap:14px;gap:14px;margin-bottom:16px}.stats-grid-7{grid-template-columns:repeat(7,1fr)}.stats-grid-4{grid-template-columns:repeat(4,1fr)}.stats-grid-3{grid-template-columns:repeat(3,1fr)}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.stat-label{font-size:11px;color:var(--text-muted);font-weight:500}.stat-value{font-size:24px;font-weight:700;margin:4px 0 2px;line-height:1}.stat-sub{font-size:11px;color:var(--text-muted)}.stat-icon{width:30px;height:30px;margin-bottom:10px;border-radius:var(--radius-sm);background:var(--accent-light);color:var(--accent);display:inline-flex;align-items:center;justify-content:center}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}thead th{text-align:left;padding:8px 14px;font-size:11.5px;font-weight:600;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;background:var(--surface-2)}tbody tr,thead th{border-bottom:1px solid var(--border)}tbody tr{transition:background .1s}tbody tr:hover{background:var(--surface-2)}tbody td{padding:11px 14px;font-size:13px;vertical-align:middle}.td-muted{color:var(--text-muted);font-size:12px}.td-actions{gap:4px;opacity:.9}.nowrap{white-space:nowrap}.metric-value{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:28px;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-primary);font-weight:700}.author-table-card{overflow-x:auto}.author-table-card table{min-width:1080px;table-layout:fixed}.author-table-card th:first-child{width:42px}.author-table-card th:nth-child(2){width:170px}.author-table-card th:nth-child(3),.author-table-card th:nth-child(4),.author-table-card th:nth-child(5){width:90px}.author-table-card th:nth-child(6){width:150px}.author-table-card th:nth-child(7){width:120px}.author-table-card th:nth-child(8){width:190px}.author-table-card th:nth-child(9){width:120px}.author-table-card .td-actions{flex-wrap:nowrap}.author-name-cell{min-width:0}.author-name-cell .link-button{max-width:130px;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:11.5px;font-weight:500;line-height:1.4}.badge-blue{background:var(--accent-light);color:var(--accent)}.badge-green{background:var(--green-light);color:var(--green)}.badge-yellow{background:var(--yellow-light);color:var(--yellow)}.badge-red{background:var(--red-light);color:var(--red)}.badge-orange{background:var(--orange-light);color:var(--orange)}.badge-gray{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border)}.status-dot{display:inline-flex;align-items:center;gap:6px;font-size:12px}.status-dot:before{content:"";width:7px;height:7px;border-radius:50%;flex-shrink:0}.status-dot.running:before{background:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.status-dot.done:before{background:var(--green)}.status-dot.failed:before{background:var(--red)}.status-dot.pending:before{background:var(--text-muted)}.status-dot.warning:before{background:var(--yellow)}.progress-bar{height:4px;background:var(--surface-2);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--accent);border-radius:4px;transition:width .3s}.progress-label{display:flex;justify-content:space-between;font-size:11px;color:var(--text-muted);margin-bottom:4px}.filter-bar{gap:8px}.filter-bar,.filter-panel{display:flex;align-items:center;margin-bottom:16px;flex-wrap:wrap}.filter-panel{gap:12px;padding:14px}.search-input-wrap{position:relative;min-width:220px}.filter-select,.form-input,.form-select,.form-textarea,.search-input-wrap input{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);font:inherit;padding:8px 10px}.search-input-wrap input{padding-left:30px}.search-icon{top:8px;font-size:12px}.search-icon,.search-icon-svg{position:absolute;left:10px;color:var(--text-muted)}.search-icon-svg{top:50%;transform:translateY(-50%);pointer-events:none}.technique-search{width:min(520px,100%);flex:1 1 360px}.technique-search input{height:40px;padding-left:36px;font-size:13px;text-overflow:ellipsis}.technique-dim-select{height:40px;min-width:160px;font-size:13px}.filter-select{width:auto;min-width:120px;padding:6px 10px;font-size:12px}.app-select{position:relative;width:100%}.app-select-trigger{width:100%;height:40px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);font:inherit;padding:0 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;box-shadow:0 1px 0 rgba(0,0,0,.02)}.app-select-trigger.open,.app-select-trigger:hover{border-color:var(--accent-light);background:#fbfbfa}.app-select-trigger:disabled{opacity:.55;cursor:not-allowed}.app-select-trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-select-trigger .placeholder{color:var(--text-muted)}.app-select-menu{position:absolute;z-index:80;top:calc(100% + 6px);left:0;width:100%;max-height:280px;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:0 16px 42px rgba(0,0,0,.16);padding:6px}.app-select-option{width:100%;min-height:34px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font:inherit;display:flex;align-items:center;justify-content:flex-start;padding:7px 9px;cursor:pointer;text-align:left}.app-select-option:hover{background:var(--surface-2);color:var(--text-primary)}.app-select-option.selected{background:var(--accent-light);color:var(--accent);font-weight:700}.app-select-option:disabled{opacity:.45;cursor:not-allowed}.app-select-empty{padding:10px 9px;color:var(--text-muted);font-size:13px}.filter-panel .app-select{width:auto;min-width:160px}.form-group{margin-bottom:14px}.form-label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:5px;font-weight:500}.form-label-req:after{content:" *";color:var(--red)}.form-help{color:var(--text-muted);font-size:12px;margin-top:5px}.form-row{display:grid;grid-gap:12px;gap:12px}.form-row-2{grid-template-columns:1fr 1fr}.form-row-3{display:grid;grid-template-columns:minmax(0,1.5fr) 110px 130px;grid-gap:12px;gap:12px}.form-textarea{min-height:90px;resize:vertical}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.25);display:flex;align-items:center;justify-content:center;z-index:50}.modal{background:var(--surface);border-radius:var(--radius);width:min(620px,calc(100vw - 32px));padding:22px;border:1px solid var(--border);box-shadow:0 12px 36px rgba(0,0,0,.16)}.modal-wide{width:min(980px,calc(100vw - 32px));max-height:calc(100vh - 56px);overflow:auto}.modal-header{margin-bottom:16px}.modal-title{font-size:16px;font-weight:700}.modal-subtitle{color:var(--text-muted);font-size:12px;margin-top:2px}.modal-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:18px}.tab-item{padding:10px 14px;color:var(--text-secondary);font-size:13px;cursor:pointer;border-bottom:2px solid transparent}.tab-item.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}.grid-main-side{display:grid;grid-template-columns:1fr 340px;grid-gap:20px;gap:20px;align-items:start}.quick-actions{display:flex;gap:10px;flex-wrap:wrap}.quick-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);padding:12px 14px;font-size:13px;color:var(--text-secondary)}.quick-btn:hover{color:var(--accent);border-color:var(--accent-light);background:var(--accent-light)}.dim-tag{display:inline-flex;border-radius:20px;padding:2px 8px;font-size:11px;font-weight:600;background:var(--surface-2);color:var(--text-secondary)}.dim-人物{background:#e8eef6;color:#3d5a80}.dim-结构{background:#e6f4ed;color:#2d7a4f}.dim-节奏{background:#fef8e6;color:#92700a}.dim-冲突{background:#fbeaed;color:#8b2635}.dim-悬念{background:#fef2e6;color:#8b4a0c}.dim-情感{background:#eee9f7;color:#5a3d80}.report-section{border-left:3px solid var(--accent);padding:10px 14px;background:var(--surface-2);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin-bottom:10px}.empty{border:1px dashed var(--border-2);background:var(--surface);border-radius:var(--radius);padding:36px;text-align:center;color:var(--text-muted)}.alert{border-radius:var(--radius-sm);padding:10px 12px;margin-bottom:14px;font-size:13px}.alert-error{background:var(--red-light);color:var(--red);border:1px solid #e8b4bb}.alert-success{background:var(--green-light);color:var(--green);border:1px solid #b7dfc7}.check-row{display:inline-flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:13px;margin:-4px 0 16px;cursor:pointer}.check-row input{width:14px;height:14px}.settings-form{max-width:860px}.settings-form+.settings-form{margin-top:16px}.settings-summary{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px;border-top:1px solid var(--border);margin-top:8px;padding-top:16px}.settings-summary div{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px}.settings-summary span{display:block;color:var(--text-muted);font-size:11px;margin-bottom:3px}.settings-summary b{font-size:13px;font-weight:600}.auth-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,rgba(67,99,145,.12),transparent 28%),var(--bg);padding:32px}.auth-panel{width:min(440px,100%)}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:16px;color:var(--accent)}.auth-brand b{display:block;font-size:18px;letter-spacing:.2px;color:var(--accent)}.auth-brand span{display:block;color:var(--text-muted);font-size:12px;margin-top:2px}.auth-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:var(--radius);padding:28px;display:grid;grid-gap:16px;gap:16px}.auth-card h1{margin:0 0 6px;font-size:24px}.auth-card p{margin:0;color:var(--text-muted);line-height:1.7}.auth-submit{width:100%;justify-content:center;margin-top:2px}.auth-switch{text-align:center;font-size:13px}.auth-switch a{margin-left:6px;color:var(--accent);font-weight:700}.chapter-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.chapter-check-all{margin:0}.chapter-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.chapter-table-card{overflow-x:auto}.chapter-table-card table{min-width:980px}.chapter-title-cell{min-width:280px}.chapter-title-link{color:var(--accent);font-weight:600;overflow-wrap:anywhere}.chapter-title-edit{display:flex;align-items:center;gap:6px;max-width:520px}.chapter-title-edit .form-input{height:30px;padding:4px 8px}.td-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.job-error{max-width:460px;white-space:normal;word-break:break-word}.task-table-card{overflow-x:auto}.task-table-card table{min-width:1120px}.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:10px 12px;color:var(--text-muted);font-size:13px}.pagination-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.pagination-controls .app-select{width:96px}.pagination-input{width:74px;height:34px;padding:5px 8px}.guide-doc-shell{display:grid;grid-template-columns:220px minmax(0,1fr);grid-gap:22px;gap:22px;align-items:start}.guide-toc{position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + 18px);border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow-sm)}.guide-toc-title{font-size:12px;color:var(--text-muted);font-weight:700;margin:4px 8px 8px}.guide-toc a{display:block;padding:8px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px}.guide-toc a:hover{color:var(--accent);background:var(--accent-light)}.guide-doc{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.guide-doc-hero{padding:30px 34px;background:linear-gradient(180deg,#fbfbfa,#f4f4f0);border-bottom:1px solid var(--border)}.guide-doc-kicker{color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.guide-doc-hero h1{margin:8px 0 10px;font-size:28px;line-height:1.25;color:var(--text-primary)}.guide-doc-hero p{max-width:820px;color:var(--text-secondary);line-height:1.8}.guide-doc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.guide-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:22px}.guide-flow-item{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);padding:12px;display:grid;grid-gap:5px;gap:5px}.guide-flow-item span{color:var(--accent);font-size:11px;font-weight:800}.guide-flow-item b{color:var(--text-primary);font-size:13px}.guide-flow-item em{color:var(--text-muted);font-size:12px;font-style:normal;line-height:1.6}.guide-section{display:grid;grid-template-columns:64px minmax(0,1fr);grid-gap:14px;gap:14px;padding:28px 34px;border-bottom:1px solid var(--border);scroll-margin-top:calc(var(--header-h) + 16px)}.guide-section:last-child{border-bottom:0}.guide-section-index{width:42px;height:30px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}.guide-section h2{margin:0 0 10px;font-size:20px;color:var(--text-primary)}.guide-section p{color:var(--text-secondary);line-height:1.85;max-width:920px}.guide-callout{margin-top:14px;border-left:3px solid var(--accent);background:var(--accent-light);padding:12px 14px;border-radius:var(--radius-sm);display:grid;grid-gap:4px;gap:4px}.guide-callout b{color:var(--accent);font-size:13px}.guide-callout span{color:var(--text-secondary);line-height:1.7}.guide-callout-warning{border-left-color:var(--red);background:var(--red-light)}.guide-callout-warning b{color:var(--red)}.guide-feature-grid,.guide-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:16px}.guide-feature,.guide-mini-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fbfbfa;padding:14px;display:grid;grid-gap:6px;gap:6px}.guide-feature b,.guide-mini-card b{color:var(--text-primary);font-size:13px}.guide-feature span,.guide-mini-card span{color:var(--text-secondary);font-size:13px;line-height:1.7}.guide-steps{counter-reset:step;list-style:none;padding:0;margin:16px 0 0;display:grid;grid-gap:10px;gap:10px}.guide-steps li{position:relative;padding:12px 14px 12px 42px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fbfbfa;color:var(--text-secondary);line-height:1.7}.guide-steps li:before{counter-increment:step;content:counter(step);position:absolute;left:12px;top:13px;width:20px;height:20px;border-radius:50%;background:var(--accent);color:white;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800}.guide-faq-list{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.guide-faq{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fbfbfa;padding:0}.guide-faq summary{cursor:pointer;padding:13px 14px;font-weight:700;color:var(--text-primary)}.guide-faq p{padding:0 14px 14px;margin:0}.list-loading{color:var(--text-muted);text-align:center;padding:34px}.technique-filter-panel{align-items:stretch}.technique-layout{display:grid;grid-template-columns:260px minmax(0,1fr);grid-gap:18px;gap:18px;align-items:start}.technique-groups{display:grid;grid-gap:14px;gap:14px;position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + 18px)}.technique-group-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow-sm)}.technique-group-title{gap:7px;font-size:12px;font-weight:700;margin-bottom:8px}.technique-group-item,.technique-group-title{display:flex;align-items:center;color:var(--text-secondary)}.technique-group-item{width:100%;justify-content:space-between;gap:10px;border:0;background:transparent;border-radius:var(--radius-sm);padding:7px 8px;text-align:left;cursor:pointer;font:inherit;font-size:12px}.technique-group-item.active,.technique-group-item:hover{background:var(--accent-light);color:var(--accent)}.technique-group-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.technique-group-item b{font-size:11px;font-weight:700;color:inherit}.technique-group-empty{color:var(--text-muted);font-size:12px;padding:8px}.technique-list-head{display:flex;align-items:center;justify-content:space-between;color:var(--text-muted);font-size:12px;margin-bottom:10px}.technique-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:12px;gap:12px}.technique-library-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow-sm);min-width:0}.technique-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.technique-confidence{color:var(--text-muted);font-size:11px;white-space:nowrap}.technique-library-card h2{font-size:14px;line-height:1.35;margin-bottom:6px;overflow-wrap:anywhere}.technique-meta{display:flex;align-items:center;gap:5px;color:var(--text-muted);font-size:12px;margin-bottom:10px;min-width:0}.technique-library-card p{color:var(--text-secondary);font-size:12.5px;margin:7px 0;overflow-wrap:anywhere}.technique-library-card p b{display:inline-block;color:var(--text-muted);font-size:11px;margin-right:8px}.technique-card-actions{display:flex;justify-content:flex-end;margin-top:12px}.source-selected{min-height:38px;display:flex;align-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-secondary);padding:8px 10px;font-size:12px}.source-picker{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:8px;margin:0 0 16px;max-height:300px;overflow:auto}.source-option{display:grid;grid-template-columns:18px minmax(0,1fr);grid-gap:8px;gap:8px;align-items:start;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 10px;margin-bottom:8px;cursor:pointer}.source-option:last-child{margin-bottom:0}.source-option:hover{border-color:var(--border-2);background:#fbfbfa}.source-option input{margin-top:3px}.source-option b{font-size:13px;line-height:1.35}.source-option b,.source-option em{display:block;overflow-wrap:anywhere}.source-option em{font-style:normal;color:var(--text-muted);font-size:12px;margin-top:2px}.recent-plans{margin-top:14px}.recent-plan-item{width:100%;display:flex;justify-content:space-between;gap:10px;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);padding:9px 10px;margin-top:8px;color:var(--text-secondary);text-align:left;cursor:pointer;font:inherit;font-size:12px}.recent-plan-item:hover{background:var(--surface-2);color:var(--text-primary)}.recent-plan-item span{color:var(--text-muted)}.creative-model-list{display:grid;grid-gap:8px;gap:8px}.creative-model-item{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:8px}.creative-model-item.active{border-color:var(--accent);background:var(--accent-light)}.creative-model-item>button{border:0;background:transparent;color:var(--text-secondary);text-align:left;cursor:pointer;font:inherit;min-width:0}.creative-model-item b{display:block;color:var(--text-primary);overflow-wrap:anywhere}.creative-model-item span{display:block;color:var(--text-muted);font-size:11px;margin-top:3px}.creative-table-card{overflow-x:auto}.creative-table-card table{min-width:980px}.link-button{border:0;background:transparent;padding:0;color:var(--accent);cursor:pointer;font:inherit;font-weight:600;text-align:left}.link-button:hover{color:var(--accent-hover);text-decoration:underline}.creative-form-card{max-width:1040px;display:grid;grid-gap:2px;gap:2px}.creative-form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border);padding-bottom:12px;margin-bottom:2px}.creative-source-row{grid-template-columns:minmax(240px,1.25fr) minmax(180px,.8fr) minmax(160px,.7fr)}.creative-source-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin:4px 0 12px}.source-summary-item{border:1px solid var(--border);background:var(--surface-2);border-radius:var(--radius-sm);padding:12px;min-width:0}.source-summary-item span{display:block;color:var(--text-muted);font-size:11px;margin-bottom:4px}.source-summary-item b{display:block;font-size:18px;line-height:1.2;margin-bottom:4px}.source-summary-item em{display:block;color:var(--text-secondary);font-size:12px;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-card-strip{display:flex;flex-wrap:wrap;gap:8px;border:1px solid var(--border);background:#fbfbfa;border-radius:var(--radius-sm);padding:10px;margin:-2px 0 14px}.creative-detail-layout{display:grid;grid-gap:16px;gap:16px}.creative-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px}.creative-detail-hero .card-title{margin-bottom:4px;font-size:16px}.model-detail-workspace{display:grid;grid-template-columns:260px minmax(0,1fr);grid-gap:18px;gap:18px;align-items:start}.model-detail-outline{position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + 18px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow-sm)}.outline-title{font-size:13px;font-weight:700;margin-bottom:10px;color:var(--text-primary)}.outline-meta{display:grid;grid-gap:7px;gap:7px;border-bottom:1px solid var(--border);padding-bottom:12px;margin-bottom:10px}.outline-meta div{display:grid;grid-template-columns:70px minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center;font-size:12px}.outline-meta span{color:var(--text-muted)}.outline-meta b{color:var(--text-secondary);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-detail-outline nav{display:grid;grid-gap:2px;gap:2px;max-height:calc(100vh - 310px);overflow:auto}.model-detail-outline a{color:var(--text-secondary);font-size:12.5px;padding:7px 8px;border-radius:var(--radius-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-detail-outline a:hover{color:var(--accent);background:var(--accent-light)}.model-document{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.model-doc-section{display:grid;grid-template-columns:56px minmax(0,1fr);grid-gap:8px;gap:8px;padding:20px 22px 22px;border-bottom:1px solid var(--border);scroll-margin-top:calc(var(--header-h) + 16px)}.model-doc-section:last-child{border-bottom:0}.model-section-index{color:var(--border-2);font-size:20px;font-weight:800;line-height:1.1}.model-section-content{min-width:0}.model-section-content h2{font-size:16px;line-height:1.35;margin-bottom:12px;color:var(--text-primary)}.compact-list{display:grid;grid-gap:7px;gap:7px;padding-left:18px;color:var(--text-secondary);font-size:13px}.compact-list li{padding-left:2px}.kv-list{display:grid;grid-gap:0;gap:0;border-top:1px solid var(--border)}.kv-row{display:grid;grid-template-columns:minmax(120px,.28fr) minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start;border-bottom:1px solid var(--border);padding:10px 0}.kv-row:last-child{border-bottom:0}.kv-row b{color:var(--text-muted);font-size:12px;font-weight:600}.kv-row b,.kv-value{overflow-wrap:anywhere}.kv-value{min-width:0;color:var(--text-secondary);font-size:13px}.model-array-list{display:grid;grid-gap:10px;gap:10px}.model-array-item{display:grid;grid-template-columns:28px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;background:#fbfbfa;border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px}.model-array-item>span{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--accent-light);color:var(--accent);font-size:11px;font-weight:700}.model-array-item .kv-list{border-top:0}.model-array-item .kv-row:first-child{padding-top:0}.author-overview-card{display:grid;grid-gap:16px;gap:16px}.overview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.overview-head p{margin:8px 0 0;max-width:980px;line-height:1.7}.overview-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.overview-metrics div{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);padding:10px 12px}.overview-metrics span{display:block;color:var(--text-muted);font-size:12px;margin-bottom:4px}.overview-metrics b{font-size:18px}.overview-metric-button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);padding:10px 12px;text-align:left;cursor:pointer;font:inherit}.overview-metric-button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-light)}.overview-metric-button:disabled{cursor:default}.overview-metric-button span{display:block;color:var(--text-muted);font-size:12px;margin-bottom:4px}.overview-metric-button b{display:block;font-size:18px;line-height:1.2}.overview-metric-button em{display:block;color:var(--text-muted);font-size:11px;font-style:normal;margin-top:3px}.overview-info-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px 20px;gap:16px 20px}.tag-row{display:flex;flex-wrap:wrap;gap:8px}.fingerprint-inline{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);padding:10px 12px}.fingerprint-inline,.overview-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.overview-row{border-bottom:1px solid var(--border);padding:9px 0}.overview-row:last-child{border-bottom:0}.writing-layout{display:grid;grid-template-columns:320px minmax(0,1fr);grid-gap:18px;gap:18px;align-items:start}.writing-table-card{overflow-x:auto}.writing-table-card table{min-width:1040px}.writing-create-card{max-width:980px;display:grid;grid-gap:2px;gap:2px}.writing-detail-layout{display:grid;grid-gap:16px;gap:16px}.writing-project-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px}.writing-project-hero .card-title{margin-bottom:4px;font-size:16px}.writing-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.writing-foundation-card,.writing-stat-card{min-width:0;padding:16px;text-align:left}.writing-foundation-card span,.writing-stat-card span{display:block;color:var(--text-muted);font-size:12px;margin-bottom:6px}.writing-foundation-card b,.writing-stat-card b{display:block;color:var(--text-primary);font-size:20px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.writing-foundation-card em,.writing-stat-card em{display:block;color:var(--text-muted);font-size:11px;font-style:normal;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.writing-foundation-card{cursor:pointer;font:inherit}.writing-foundation-card:hover{border-color:var(--accent);background:var(--accent-light)}.writing-workbench{display:grid;grid-template-columns:300px minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.writing-chapter-panel{position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + 18px);padding:14px}.writing-chapter-list{display:grid;grid-gap:8px;gap:8px;max-height:calc(100vh - 330px);overflow:auto;padding-right:2px}.writing-chapter-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:10px;cursor:pointer;text-align:left;font:inherit;color:var(--text-secondary)}.writing-chapter-row.active,.writing-chapter-row:hover{border-color:var(--accent-light);background:var(--accent-light);color:var(--accent)}.writing-chapter-row span{color:var(--text-muted);font-size:11px;font-weight:700}.writing-chapter-row b{color:inherit;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.writing-chapter-row em{color:var(--text-muted);font-size:11px;font-style:normal;white-space:nowrap}.writing-chapter-actions{grid-column:2/-1;display:flex;gap:6px;justify-content:flex-end}.writing-compose-stack{display:grid;grid-gap:16px;gap:16px;min-width:0}.writing-compose-card{padding:16px;order:3}.writing-current-card{padding:16px;order:1}.writing-editor-grid{order:2}.writing-chapter-preview{min-height:220px;max-height:420px;overflow:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fbfbfa;padding:16px;color:var(--text-primary);white-space:pre-wrap;line-height:1.9}.writing-editor-card{padding:16px}.writing-sidebar{display:grid;grid-gap:14px;gap:14px;position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + 18px)}.writing-project-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow-sm)}.writing-project-item{width:100%;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);padding:10px;margin-top:8px;text-align:left;color:var(--text-secondary);cursor:pointer;font:inherit}.writing-project-item.active,.writing-project-item:hover{border-color:var(--accent-light);background:var(--accent-light);color:var(--accent)}.writing-project-item b{display:block;font-size:13px;overflow-wrap:anywhere}.writing-project-item span{display:block;color:var(--text-muted);font-size:11px;margin-top:3px}.writing-main{display:grid;grid-gap:16px;gap:16px;min-width:0}.writing-ai-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);padding:12px;margin:12px 0 0;display:grid;grid-gap:10px;gap:10px}.writing-batch-panel{background:linear-gradient(180deg,#fbfbfa 0,var(--surface-2) 100%)}.writing-batch-primary{display:grid;grid-template-columns:minmax(120px,.55fr) minmax(140px,.7fr) minmax(220px,1fr);grid-gap:12px;gap:12px;align-items:end}.writing-batch-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:10px 12px;color:var(--text-muted);font-size:12px}.writing-batch-summary b{color:var(--text-primary);font-size:12px}.writing-batch-summary span{border:1px solid var(--border);border-radius:999px;padding:4px 8px;background:var(--surface-2)}.writing-advanced-toggle{justify-self:start}.writing-advanced-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:12px;gap:12px;border:1px dashed var(--border);border-radius:var(--radius-sm);padding:12px;background:var(--surface)}.writing-precision-panel{margin-top:12px;background:var(--surface)}.writing-ai-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.writing-recommendation{border:1px solid var(--accent-light);background:var(--surface);border-radius:var(--radius-sm);padding:12px;display:grid;grid-gap:9px;gap:9px}.recommendation-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.recommendation-head b{display:block;color:var(--text-primary);font-size:13px}.recommendation-head span{display:block;color:var(--text-muted);font-size:12px;margin-top:3px}.recommendation-title-list{display:flex;gap:8px;flex-wrap:wrap}.writing-recommendation p{margin:0;color:var(--text-secondary);line-height:1.7}.writing-recommendation em{color:var(--text-muted);font-size:12px;font-style:normal;line-height:1.6}.writing-job{display:grid;grid-template-columns:auto minmax(120px,1fr) auto;grid-gap:10px;gap:10px;align-items:center;color:var(--text-muted);font-size:12px}.writing-editor,.writing-notes{width:100%;min-height:420px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;font:inherit;color:var(--text-primary);background:var(--surface);resize:vertical;line-height:1.8}.writing-notes{min-height:420px;background:var(--surface-2)}@media (max-width:980px){.sidebar{display:none}.page-body{padding:18px}.creative-source-summary,.form-row-2,.form-row-3,.grid-2,.grid-main-side,.guide-doc-shell,.guide-feature-grid,.guide-flow,.guide-section,.guide-two-col,.model-detail-workspace,.model-doc-section,.settings-summary,.stats-grid-3,.stats-grid-4,.stats-grid-7,.technique-layout,.writing-advanced-grid,.writing-batch-primary,.writing-layout,.writing-overview-grid,.writing-workbench{grid-template-columns:1fr}.page-header{padding:0 18px}.filter-panel{align-items:stretch}.technique-dim-select{width:100%}.guide-toc,.model-detail-outline,.technique-groups,.writing-chapter-panel,.writing-sidebar{position:static}.technique-card-grid{grid-template-columns:1fr}.chapter-toolbar{align-items:flex-start}.chapter-toolbar,.creative-detail-hero,.fingerprint-inline,.overview-head,.writing-project-hero{flex-direction:column}.overview-info-grid,.overview-metrics{grid-template-columns:1fr}.creative-detail-hero,.writing-project-hero{align-items:flex-start}.model-detail-outline nav,.writing-chapter-list{max-height:none}.model-section-index{font-size:14px}.guide-doc-hero,.guide-section{padding:22px}.kv-row{grid-template-columns:1fr;gap:4px}}