#loginLayer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:linear-gradient(135deg,#1b5548,#246b59 45%,#4fa286);display:flex;align-items:center;justify-content:center}#loginLayer.hidden{display:none}#loginLayer .login-box{background:#fff;border-radius:16px;padding:40px 36px;width:100%;max-width:380px;box-shadow:0 20px 60px #0000004d}#loginLayer .login-box .login-brand{display:flex;justify-content:center;margin-bottom:10px}#loginLayer .login-box .login-brand img{width:240px;max-width:100%;height:auto;display:block}#loginLayer .login-box h2{margin:0 0 8px;font-size:22px;color:#183c33;text-align:center}#loginLayer .login-box .sub{text-align:center;color:#526c62;font-size:13px;margin-bottom:24px}#loginLayer .login-box .form-row{margin-bottom:14px}#loginLayer .login-box label{display:block;font-size:13px;color:#526c62;margin-bottom:4px;font-weight:600}#loginLayer .login-box input{width:100%;padding:10px 12px;border:1px solid #D9E5DF;border-radius:8px;font-size:14px;outline:none;transition:border-color .15s}#loginLayer .login-box input:focus{border-color:#1b5548}#loginLayer .login-box .btn-login{width:100%;padding:12px;margin-top:8px;font-size:15px;border-radius:8px;background:#1b5548;color:#fff;border:none;cursor:pointer;font-weight:600}#loginLayer .login-box .btn-login:hover{background:#246b59}#loginLayer .login-box .btn-login:disabled{opacity:.6;cursor:not-allowed}#loginLayer .login-box .error{color:#dc2626;font-size:13px;margin-top:10px;text-align:center}:root{--bg: #F3F7F5;--sidebar-bg: #1B5548;--sidebar-fg: rgba(255, 255, 255, .85);--sidebar-active: #246B59;--card: #ffffff;--border: #D9E5DF;--text: #183C33;--muted: #526C62;--primary: #1B5548;--primary-dark: #246B59;--good: #246B59;--warn: #B0781B;--bad: #C0392B;--neutral: #526C62;--radius: 12px;--shadow: 0 2px 10px rgba(24, 60, 51, .08);--leap-primary: #1B5548;--leap-primary-hover: #246B59;--leap-brand-green: #4FA286;--leap-gold: #D9A048;--leap-selected: #EAF3ED;--leap-warning-text: #8A5A12;--leap-warning-bg: #FFF3DB;--leap-danger-text: #A43434;--leap-danger-bg: #FCEEEE;--leap-info-text: #335B7A;--leap-info-bg: #EEF4F8;--leap-control-height: 44px;--leap-radius-control: 8px;--leap-radius-panel: 12px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Arial,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans CJK SC,sans-serif;font-size:14px;line-height:1.5}.app{display:flex;min-height:100vh}.sidebar{width:240px;flex:0 0 240px;background:var(--sidebar-bg);color:var(--sidebar-fg);display:flex;flex-direction:column;padding:17px 12px;overflow-y:auto;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:6px 8px 15px}.brand-plate{flex:1 1 auto;min-width:0;background:#fff;border-radius:10px;padding:10px 8px 8px}.brand-plate .brand-mark{display:block;width:100%;max-width:196px;height:auto}.brand-title{font-size:16px;font-weight:700;color:#fff}.brand-sub{font-size:11px;color:#526c62;margin-top:4px}.nav{display:flex;flex-direction:column;gap:2px;margin-top:5px}.nav-item{display:flex;align-items:center;gap:10px;padding:7px 12px;border-radius:10px;color:var(--sidebar-fg);text-decoration:none;font-size:14px;transition:background .15s,color .15s}.nav-item:hover{background:#ffffff0f;color:#fff}.nav-item.active{background:var(--sidebar-active);color:#fff;font-weight:600}.nav-ico{font-size:16px}.sidebar-foot{margin-top:auto;font-size:11px;color:#fff9;padding:8px}.sidebar-foot .foot-meta{margin-top:12px}.sidebar-foot .footer-powered{margin-bottom:4px;color:#fff9}.sidebar-foot .footer-powered a{color:#ffffffd1;text-decoration:none}.sidebar-foot .footer-powered a:hover{text-decoration:underline}.sidebar-foot .footer-icp a{color:#fff9;text-decoration:none;font-size:11px}.sidebar-foot .footer-icp a:hover{text-decoration:underline}.content{flex:1;min-width:0;padding:24px 32px 48px}.content-head{margin-bottom:18px}.content-head h1{margin:0;font-size:22px}.view-desc{color:var(--muted);margin-top:4px;font-size:13px}.view-root{min-height:400px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px;margin-bottom:22px;box-shadow:0 1px 3px #183c330a;position:relative}.card+.card,.card+.mode-cards{margin-top:4px}.card h2{margin:0 0 14px;font-size:16px}.card h3{margin:0 0 8px;font-size:14px;color:var(--muted)}.hint{color:var(--muted);font-size:12px;margin:0 0 12px}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.spacer{flex:1}.btn{display:inline-flex;align-items:center;gap:6px;background:var(--primary);color:#fff;border:none;padding:9px 16px;border-radius:8px;font-size:13px;cursor:pointer;transition:background .15s;text-decoration:none}.btn:hover{background:var(--primary-dark)}.btn:disabled{background:#a9c4b8;cursor:not-allowed}.btn-secondary{background:#fff;color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:#f3f7f5}.btn-primary{background:#246b59}.btn-primary:hover{background:#128a3e}.btn-danger{background:var(--bad)}.btn-danger:hover{background:#b91c1c}.btn-sm{padding:5px 10px;font-size:12px;border-radius:7px}.btn-ghost{background:transparent;color:var(--primary);border:1px solid transparent}.btn-ghost:hover{background:#eaf3ed}label{font-size:13px;color:var(--text)}input[type=text],input[type=number],input[type=password],select,textarea{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px;font-family:inherit;background:#fff}textarea{resize:vertical;min-height:58px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1b554824}.field{margin-bottom:12px}.field>label{display:block;margin-bottom:5px;font-weight:600}.field-inline{display:flex;gap:10px;align-items:center}.field-inline label{margin-bottom:0}table.list{width:100%;border-collapse:collapse}table.list th,table.list td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);font-size:13px;vertical-align:top}table.list th{color:var(--muted);font-weight:600;background:#f3f7f5}table.list tr:hover td{background:#f3f7f5}.badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600}.badge-builtin{background:#eaf3ed;color:#1b5548}.badge-active{background:#e7f7ee;color:var(--good)}.badge-muted{background:#f3f7f5;color:var(--neutral)}.badge-key{background:#e7f7ee;color:var(--good)}.badge-key-missing{background:#fdecec;color:#b42318}.muted{color:var(--muted);font-size:13px;margin:0 0 12px}.checkbox{display:inline-flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}.checkbox input{width:auto}.model-row{display:flex;align-items:center;gap:14px;border:1px solid var(--border);border-radius:11px;padding:14px 16px;margin-bottom:12px;background:#fff;box-shadow:0 1px 2px #183c3308;transition:box-shadow .15s,border-color .15s}.model-row:hover{box-shadow:0 2px 8px #183c3312;border-color:#d9e5df}.model-row .model-main{flex:1;min-width:0}.model-row .model-name{font-weight:700;font-size:15px;margin-bottom:4px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.model-row .model-meta{color:var(--muted);font-size:12px;margin-bottom:2px}.model-row .model-actions{display:flex;gap:8px;flex:0 0 auto}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.tpl-card{border:1px solid var(--border);border-radius:11px;padding:16px;background:#fff;box-shadow:0 1px 3px #183c330a;transition:box-shadow .15s,border-color .15s}.tpl-card:hover{box-shadow:0 3px 10px #183c3314;border-color:#d9e5df}.tpl-card .tpl-name{font-weight:700;font-size:15px;margin-bottom:4px}.tpl-card .tpl-meta{color:var(--muted);font-size:12px;margin-bottom:10px}.tpl-card .tpl-actions{display:flex;gap:8px}.overall{display:flex;align-items:baseline;gap:10px;margin-bottom:18px}.score-num{font-size:38px;font-weight:800;color:var(--primary)}.score-label{color:var(--muted);font-size:13px}.group-title{margin:20px 0 10px;font-weight:700;font-size:14px;border-left:3px solid var(--primary);padding-left:10px}.metric-card{border:1px solid var(--border);border-radius:11px;padding:14px 16px;margin-bottom:16px;background:#fff;box-shadow:0 1px 3px #183c330a;position:relative;transition:box-shadow .15s,border-color .15s}.metric-card:hover{box-shadow:0 2px 8px #183c3314;border-color:#d9e5df}.mc-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.mc-name{font-weight:600}.mc-score{font-weight:700;white-space:nowrap}.mc-comment{margin-top:6px;font-size:13px;color:#334}.mc-evidence{margin-top:4px;font-size:12px;color:var(--muted)}.bar{height:6px;background:#f3f7f5;border-radius:4px;margin-top:8px;overflow:hidden}.bar>span{display:block;height:100%}.mock-badge{background:#fff7e6;color:#b9770d;padding:6px 10px;border-radius:8px;font-size:12px;margin-bottom:12px}.summary{margin-top:16px;padding:14px 16px;background:#f3f7f5;border:1px solid #dce6f9;border-radius:11px;font-size:14px;box-shadow:0 1px 2px #183c3308}.metric-row{display:grid;grid-template-columns:90px 1fr 120px 1fr 70px 60px 34px;gap:8px;align-items:start;margin-bottom:8px}.metric-row input,.metric-row textarea{font-size:12px}.metric-row .del-row{background:#fff;border:1px solid var(--border);border-radius:7px;cursor:pointer;color:var(--bad)}.metric-row .el-desc{grid-column:1 / -1}.dropzone{border:2px dashed var(--border);border-radius:12px;padding:26px;text-align:center;color:var(--muted);cursor:pointer;background:#f3f7f5;transition:border-color .15s,background .15s}.dropzone:hover{border-color:var(--primary);background:#f3f7f5}.file-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.file-chip{background:#eaf3ed;color:#1b5548;padding:5px 10px;border-radius:18px;font-size:12px;display:flex;align-items:center;gap:6px}.file-chip button{border:none;background:transparent;color:#1b5548;cursor:pointer;font-size:14px;line-height:1}.hidden{display:none!important}.empty{color:var(--muted);text-align:center;padding:30px 0}.error-box{background:#fdecec;color:#b42318;border:1px solid #f5c2c2;border-radius:9px;padding:11px 14px;margin-bottom:14px;font-size:13px}.error-boundary{max-width:520px;margin:80px auto;padding:28px 30px;background:#fff;border:1px solid #f0d3d3;border-radius:14px;box-shadow:0 6px 24px #0000000f;text-align:center}.error-boundary h2{margin:0 0 10px;color:#b42318;font-size:18px}.error-boundary p{color:#555;font-size:14px;margin:0 0 14px}.error-boundary .error-detail{text-align:left;background:#f7f7f9;border-radius:8px;padding:8px 10px;font-size:12px;color:#888;max-height:160px;overflow:auto;margin:0 0 16px;white-space:pre-wrap}.error-boundary .btn{background:#2563eb;color:#fff;border:none;border-radius:8px;padding:8px 18px;cursor:pointer;font-size:14px}.loading{color:var(--muted);padding:12px 0}.toast{position:fixed;top:20px;left:50%;transform:translate(-50%);background:#183c33;color:#fff;padding:10px 18px;border-radius:10px;font-size:13px;z-index:999;box-shadow:0 6px 20px #0003}.toast.ok{background:#246b59}.toast.err{background:#dc2626}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:500}.modal{background:#fff;border-radius:14px;width:min(960px,94vw);max-height:90vh;overflow:auto;padding:22px 24px}.modal h2{margin-top:0}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.task-editor{display:flex;flex-wrap:wrap;align-items:flex-start;gap:0}.task-editor-head{width:100%;margin-bottom:14px}.task-editor-head .btn-ghost{font-size:13px;padding:6px 12px}.task-subnav{width:180px;flex:0 0 180px;border-right:1px solid var(--border);padding-right:12px}.subnav-item{display:block;padding:11px 14px;border-radius:9px;cursor:pointer;color:var(--text);text-decoration:none;font-size:14px;margin-bottom:4px}.subnav-item:hover{background:#f3f7f5}.subnav-item.active{background:var(--primary);color:#fff;font-weight:600}.task-subcontent{flex:1;min-width:0;padding-left:22px}.checkbox.blk{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:13px;padding:7px 10px;border:1px solid var(--border);border-radius:8px}.dup-warn{color:#b42318;background:#fdecec;border:1px solid #f5c2c2;border-radius:8px;padding:8px 12px;font-size:13px;margin-bottom:12px}.mat-row{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border:1px solid var(--border);border-radius:8px;margin-bottom:6px;font-size:13px}.mat-num{color:var(--primary);font-weight:700;margin-right:2px}.mat-link{color:var(--text);text-decoration:none}.mat-link:hover{color:var(--primary);text-decoration:underline}.mat-manage-row{border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin-bottom:12px;background:#fff;box-shadow:0 1px 2px #183c3308;transition:box-shadow .15s}.mat-manage-row:hover{box-shadow:0 2px 6px #183c3312}.mat-manage-head{display:flex;align-items:center;gap:10px}.mat-name{font-weight:600;font-size:13px}.search-box{display:flex;align-items:center;gap:8px}.search-box input{width:220px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px}.label-chip{display:inline-flex;align-items:center;gap:6px;background:#eaf3ed;color:#1b5548;padding:5px 10px;border-radius:18px;font-size:12px;margin:0 6px 6px 0}.label-key{font-weight:700;color:var(--primary)}.split-pane{display:flex;gap:16px;align-items:flex-start}.catalog-panel{width:220px;flex:0 0 220px;max-height:640px;overflow:auto;border:1px solid var(--border);border-radius:10px;padding:12px;background:#f3f7f5}.catalog-panel.collapsed{display:none}.catalog-title{font-weight:700;font-size:13px;margin-bottom:10px;color:var(--text)}.catalog-item{padding:7px 9px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--text);margin-bottom:3px}.catalog-item:hover{background:#eaf3ed}.catalog-item.active{background:var(--primary);color:#fff}.catalog-h2{padding-left:9px;font-weight:600}.catalog-h3{padding-left:22px;font-size:12px;color:var(--muted)}.content-panel{flex:1;min-width:0;border:1px solid var(--border);border-radius:10px;padding:16px;background:#fff;max-height:640px;overflow:auto}.content-text{line-height:1.8;font-size:14px;white-space:pre-wrap}.content-text p{margin:0 0 12px}.source-marker{color:#fff;background:#ff6b6b;padding:1px 5px;border-radius:4px;font-size:11px;font-weight:600;cursor:pointer;display:inline-block;margin:0 1px}.source-marker:hover{background:#ee5253}.source-tooltip{position:fixed;background:#f5f7fa;color:#2d3340;border:1px solid #e3e8ef;padding:6px 9px;border-radius:8px;font-size:11px;max-width:320px;z-index:9999;box-shadow:0 4px 14px #0000001f;line-height:1.5;pointer-events:none;white-space:pre-wrap;word-break:break-word}.editor-frame{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);background:#f3f7f5}.editor-toolbar-left{display:flex;align-items:center;gap:12px}.editor-title{font-weight:700;font-size:15px}.editor-hint{color:var(--muted);font-size:12px}.editor-toolbar-right{display:flex;align-items:center;gap:10px}.editor-toolbar-right .save-hint{margin:0}.editor-pane{padding:14px;gap:14px;align-items:stretch}.editor-pane .catalog-panel{max-height:640px}.editor-pane .content-panel{max-height:640px;padding:0;background:#fff}.editor-content{height:100%;overflow:auto;padding:16px}.editor-content .content-text{min-height:100%;outline:none}.editor-block{margin-bottom:22px}.editor-block:last-child{margin-bottom:0}.editor-heading{margin:0 0 10px;font-size:17px;line-height:1.4;color:var(--text);border-bottom:1px solid var(--border);padding-bottom:8px}h3.editor-heading{font-size:15px}.editor-content p{margin:0 0 10px;line-height:1.8}body.editor-expanded .sidebar,body.editor-expanded .content-head{display:none}body.editor-expanded .content,body.editor-expanded .view-root{padding:0}body.editor-expanded .editor-frame{border:none;border-radius:0;height:100vh;display:flex;flex-direction:column}body.editor-expanded .editor-toolbar{flex:0 0 auto}body.editor-expanded .editor-pane{flex:1;max-height:none;padding:0;gap:0}body.editor-expanded .editor-pane .catalog-panel{max-height:none;border-radius:0;border-width:0 1px 0 0}body.editor-expanded .editor-pane .content-panel{max-height:none;border-radius:0;border:none}body.editor-expanded .editor-content{max-height:none}@media (max-width: 860px){.editor-pane{flex-direction:column}.editor-pane .catalog-panel{width:100%;max-height:200px}}.material-text{margin:10px 0 0;background:#f3f7f5;border:1px solid var(--border);border-radius:8px;padding:12px;white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.6;max-height:380px;overflow:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.progress{display:flex;align-items:center;gap:10px;margin:14px 0}.progress-bar{flex:1;height:10px;background:#f3f7f5;border-radius:6px;overflow:hidden}.progress-fill{height:100%;width:0%;background:linear-gradient(90deg,#1b5548,#5b8cff);transition:width .3s}.progress-pct{font-size:12px;color:var(--muted);min-width:36px;text-align:right}.progress.done{opacity:0;transition:opacity .5s}.result-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:14px}.result-info{font-size:13px;color:var(--muted);line-height:1.7}.result-info b{color:var(--text)}.result-actions{display:flex;gap:8px;flex-wrap:wrap}.result-summary{background:#f3f7f5;border:1px solid var(--border);border-radius:11px;padding:14px 16px;font-size:14px;line-height:1.7;box-shadow:0 1px 2px #183c3308}.copy-btn{border:1px solid var(--border);background:#fff;border-radius:7px;padding:4px 10px;font-size:12px;cursor:pointer;color:var(--primary)}.copy-btn:hover{background:#eaf3ed}.sub-block{border-top:1px solid var(--border);padding-top:16px;margin-top:16px}.sub-block h3{margin:0 0 10px;font-size:15px;color:var(--text)}.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.form-row>label{font-size:13px;color:var(--muted);font-weight:600}.form-row .input{width:100%}.task-link{color:var(--primary);cursor:pointer;text-decoration:none}.task-link:hover{text-decoration:underline}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;line-height:1.6}.badge-on{background:#e6f7ec;color:#1f9d57}.badge-off{background:#fdecec;color:#c0392b}.site-footer{display:none;text-align:center;padding:20px 16px;font-size:13px;color:#526c62;background:#f3f7f5;border-top:1px solid #D9E5DF}.site-footer a{color:#3b6cff;text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-powered{margin-bottom:6px}.footer-icp{font-size:12px;color:#a0a8b5}@media (max-width: 760px){.app{flex-direction:column}.sidebar{width:100%;flex:none;height:auto;flex-direction:row;align-items:center;padding:10px}.sidebar .nav{flex-direction:row;margin:0 0 0 10px}.sidebar .brand-sub,.sidebar-foot{display:none}.site-footer{display:block}.content{padding:16px}.metric-row{grid-template-columns:1fr 1fr}}.tpl-std-block{border:1px solid var(--border);border-radius:13px;padding:16px 18px;margin-bottom:18px;background:#fff;box-shadow:0 1px 3px #183c330a;transition:box-shadow .15s}.tpl-std-block:hover{box-shadow:0 2px 8px #183c3314}.tpl-std-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.tpl-std-name{font-size:16px;font-weight:700;color:var(--text)}.tpl-std-acts{display:flex;gap:8px}.tpl-std-body{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:16px}.tpl-sub{border-left:3px solid #e6ecfb;padding-left:14px;min-width:0}.tpl-sub-label{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:.5px;margin-bottom:8px}.tpl-sub-card{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f3f7f5;border:1px solid var(--border);border-radius:8px;padding:8px 10px;margin-bottom:8px}.tpl-sub-card .tpl-sub-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tpl-sub-name{font-size:13px;color:var(--text)}.tpl-sub-acts{display:flex;gap:6px;flex-shrink:0}.tpl-orphan-title{font-size:13px;font-weight:700;color:var(--muted);margin:18px 0 10px}.tpl-orphan{background:#fff7f2;border-color:#f3d9c6}@media (max-width: 1280px){.tpl-std-body{grid-template-columns:1fr 1fr}}@media (max-width: 760px){.tpl-std-body{grid-template-columns:1fr}}.mode-cards{display:flex;gap:0;margin-bottom:18px;flex-wrap:wrap;border-bottom:1px solid var(--border, #D9E5DF)}.mode-card{cursor:pointer;border:none;border-bottom:2px solid transparent;border-radius:0;padding:10px 18px;background:transparent;transition:all .15s;font-size:14px;color:var(--muted, #526C62);white-space:nowrap;position:relative;display:inline-flex;align-items:center;gap:6px}.mode-card:hover{color:var(--primary, #1B5548);background:#2f6bff0a}.mode-card.active{color:var(--primary, #1B5548);font-weight:600;border-bottom-color:var(--primary, #1B5548);background:#2f6bff0f}.mode-card-title{font-size:14px;font-weight:inherit}.mode-card-sub{display:none}.mode-card-disabled{cursor:not-allowed;color:#aab3c0;background:#eceff4;border-radius:8px;margin:0 4px 7px 0}.mode-card-disabled:hover{color:#aab3c0;background:#eceff4}.task-editor.stacked{display:block}.task-editor.stacked .task-subcontent{padding-left:0}.cmp-matrix{table-layout:fixed;width:100%;border-collapse:collapse}.cmp-matrix th:first-child,.cmp-matrix td:first-child{text-align:left;width:260px}.cmp-matrix td,.cmp-matrix th{text-align:left;vertical-align:top;padding:12px 14px;word-break:break-word}.cmp-cell{display:flex;flex-direction:column;gap:8px;min-width:0}.cmp-cell-head{display:flex;align-items:center;gap:10px}.cmp-cell-bar{flex:1;height:6px;background:#eef2f7;border-radius:3px;overflow:hidden;min-width:0}.cmp-cell-bar>span{display:block;height:100%;border-radius:3px;transition:width .25s ease}.cmp-cell-score{font-size:12px;font-weight:700;min-width:44px;text-align:right;flex-shrink:0;font-variant-numeric:tabular-nums}.cmp-cell-score.muted{color:#526c62;font-weight:600;font-style:italic}.cmp-cell-text{font-size:12.5px;color:#334;line-height:1.65;white-space:pre-wrap;word-break:break-word;max-height:280px;overflow-y:auto;padding:2px 0}.cmp-cell-empty{color:#526c62;font-style:italic;font-size:12.5px}.cmp-overall td{background:#f3f7f5;border-top:2px solid #d6e1f5}.cmp-overall td:first-child{font-weight:700;color:#1b5548}.dept-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-top:6px}.dept-chip{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid var(--border, #D9E5DF);border-radius:8px;background:#fff;font-size:13px;cursor:pointer}.dept-chip input{margin:0}.dept-chip.checked{border-color:#1b5548;background:#f3f7f5}.outline-preview{white-space:pre-wrap;line-height:1.7;font-size:14px;border:1px solid var(--border, #D9E5DF);border-radius:10px;padding:16px;background:#f3f7f5;max-height:520px;overflow:auto}.ivw-card{border:1px solid var(--border, #D9E5DF);border-radius:12px;padding:16px 18px;margin-bottom:18px;background:#fff;box-shadow:0 1px 3px #183c330a;transition:box-shadow .15s}.ivw-card:hover{box-shadow:0 2px 8px #183c3314}.ivw-card h4{margin:0 0 4px;font-size:15px;color:#1b5548}.ivw-focus{font-size:12.5px;color:#526c62;margin-bottom:8px}.ivw-q{padding:6px 0;border-top:1px dashed #F3F7F5;font-size:13.5px}.ivw-q:first-of-type{border-top:none}.ivw-q .q-purp{color:#526c62;font-size:12px;margin-left:6px}.card-block.info-card{border:1px solid var(--border, #D9E5DF);border-radius:12px;padding:16px 18px;margin-bottom:18px;background:#fff;box-shadow:0 1px 3px #183c330a;transition:box-shadow .15s,border-color .15s}.card-block.info-card:hover{box-shadow:0 2px 8px #183c3314;border-color:#d9e5df}.ic-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.ic-no{font-weight:700;color:#1b5548;font-size:14px}.ic-meta{font-size:12px;color:var(--muted, #526C62)}.ic-audit-label,.ic-sel-label{font-size:12px;color:var(--muted, #526C62);margin-left:6px}.ic-del{margin-left:auto;background:transparent;border:1px solid #f0c2c2;color:#c0392b;border-radius:7px;padding:4px 10px;font-size:12px;cursor:pointer}.ic-del:hover{background:#fff1f1}.ic-desc{width:100%;min-height:96px;line-height:1.6;font-size:13.5px;padding:10px 12px;border:1px solid var(--border, #D9E5DF);border-radius:8px;background:#f3f7f5;resize:vertical}.ic-desc:focus{outline:none;border-color:var(--primary, #1B5548)}.seg-group{display:inline-flex;border:1px solid var(--border, #D9E5DF);border-radius:8px;overflow:hidden}.seg{border:none;background:#fff;color:#526c62;padding:5px 12px;font-size:12.5px;cursor:pointer;border-left:1px solid var(--border, #D9E5DF)}.seg:first-child{border-left:none}.seg.active{background:var(--primary, #1B5548);color:#fff}.attrs-box{margin-top:12px;display:flex;flex-direction:column;gap:10px}.attr-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border:1px dashed #e0e6f0;border-radius:8px;background:#f3f7f5}.attr-cat{width:130px;font-weight:600}.attr-vals{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.attr-val{display:inline-flex;align-items:center;gap:4px;background:#eaf3ed;color:#1b5548;border:1px solid #d7e2ff;border-radius:999px;padding:3px 10px;font-size:12.5px}.attr-val button{border:none;background:transparent;color:#1b5548;cursor:pointer;font-size:13px;line-height:1;padding:0;font-weight:700}.attr-add{width:130px}.attr-del,.attr-addcat{background:#fff;border:1px solid var(--border, #D9E5DF);color:#526c62;border-radius:7px;padding:5px 10px;font-size:12px;cursor:pointer}.attr-del:hover,.attr-addcat:hover{background:#f3f6fb}.view-toggle{display:inline-flex;border:1px solid var(--border, #D9E5DF);border-radius:8px;overflow:hidden;background:#fff}.view-toggle-btn{border:none;background:transparent;color:var(--muted, #526C62);padding:6px 14px;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .15s;border-left:1px solid var(--border, #D9E5DF)}.view-toggle-btn:first-child{border-left:none}.view-toggle-btn:hover{background:#f3f7f5;color:var(--text)}.view-toggle-btn.active{background:var(--primary, #1B5548);color:#fff}.view-toggle-btn .vt-icon{font-size:15px;line-height:1}.cards-grid-view{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:12px}.cg-card{background:#fff;border:1px solid var(--border, #D9E5DF);border-radius:11px;padding:16px;cursor:pointer;transition:all .18s;display:flex;flex-direction:column;gap:10px;position:relative;box-shadow:0 1px 2px #183c3308}.cg-card:hover{box-shadow:0 4px 14px #183c331a;border-color:var(--primary, #1B5548);transform:translateY(-2px)}.cg-card.selected-card{border-color:var(--primary, #1B5548);box-shadow:0 0 0 2px #2f6bff26,0 4px 14px #183c3314}.cg-card.drop-hover{border-color:var(--primary, #1B5548);background:#eaf3ed;box-shadow:inset 0 0 0 1px var(--primary, #1B5548);transform:none}.cg-head{display:flex;align-items:center;gap:8px}.cg-card-check{display:inline-flex;align-items:center;flex-shrink:0;cursor:pointer;margin:0}.cg-card-checkbox{width:16px;height:16px;cursor:pointer;accent-color:var(--primary, #1B5548)}.cg-no{font-weight:700;font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.cg-badges{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.cg-badge{font-size:11px;padding:2px 8px;border-radius:999px;font-weight:600}.cg-badge-audit-unset{background:#f3f7f5;color:var(--neutral)}.cg-badge-audit-first{background:#fff7e6;color:#b9770d}.cg-badge-audit-final{background:#e6f7ec;color:#1f9d57}.cg-badge-sel-on{background:#eaf3ed;color:#1b5548}.cg-badge-sel-off{background:#f3f7f5;color:#999}.cg-desc-preview{font-size:13px;color:var(--text, #183C33);line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;min-height:78px}.cg-desc-preview.empty-hint{color:var(--muted);font-style:italic}.cg-foot{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);border-top:1px solid #F3F7F5;padding-top:8px;margin-top:auto}.cg-foot-left,.cg-foot-right{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cg-attr-tags{display:flex;gap:4px;flex-wrap:wrap;max-width:70%}.cg-attr-tag{font-size:11px;background:#f3f7f5;color:#526c62;padding:1px 7px;border-radius:999px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90px}.cards-split-view{display:flex;gap:0;margin-top:12px;border:1px solid var(--border, #D9E5DF);border-radius:12px;overflow:hidden;background:#fff;min-height:500px;position:sticky;top:20px;height:calc(100vh - 60px)}.csv-list-panel{width:340px;flex:0 0 340px;border-right:1px solid var(--border, #D9E5DF);display:flex;flex-direction:column;background:#f3f7f5}.csv-list-header{padding:12px 14px;border-bottom:1px solid var(--border, #D9E5DF);font-weight:700;font-size:13px;color:var(--text);display:flex;align-items:center;justify-content:space-between}.csv-list-count{font-weight:400;color:var(--muted);font-size:12px}.csv-list-body{flex:1;overflow-y:auto;max-height:calc(100vh - 120px)}.csv-row{display:flex;align-items:center;gap:8px;padding:10px 14px;cursor:pointer;border-bottom:1px solid #F3F7F5;transition:background .12s;font-size:13px}.csv-row:last-child{border-bottom:none}.csv-row:hover{background:#eaf3ed}.csv-row.active{background:#eaf3ed;border-left:3px solid var(--primary, #1B5548);padding-left:11px}.csv-row-check{display:inline-flex;align-items:center;flex-shrink:0;cursor:pointer;margin:0}.csv-row-checkbox{width:15px;height:15px;cursor:pointer;accent-color:var(--primary, #1B5548)}.csv-row-no{display:none}.csv-row-desc{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.csv-row-desc.empty-text{color:var(--muted);font-style:italic}.csv-row-meta{display:flex;gap:4px;flex-shrink:0}.csv-row-badge{font-size:10px;padding:1px 6px;border-radius:999px;font-weight:600;white-space:nowrap}.csv-empty{padding:30px 14px;text-align:center;color:var(--muted);font-size:13px}.csv-detail-panel{flex:1;min-width:0;overflow-y:auto;padding:18px 20px;background:#fff;max-height:calc(100vh - 80px)}.csv-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid #F3F7F5}.csv-detail-title{font-size:16px;font-weight:700;color:var(--text)}.csv-detail-actions{display:flex;gap:8px}.cards-split-view.has-inline .csv-list-panel{width:268px;flex:0 0 268px}.cards-split-view.has-inline .csv-detail-panel{min-width:320px}.csv-inline-col{flex:0 0 380px;width:380px;min-width:0;border-left:1px solid var(--border, #D9E5DF);background:#f3f7f5;overflow-y:auto;padding:12px;max-height:calc(100vh - 80px)}.csv-inline-col .csv-inline-panels{margin-top:0}@media (max-width: 900px){.cards-grid-view{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.cards-split-view{flex-direction:column;position:relative;top:auto;height:auto}.csv-list-panel{width:100%;flex:none;height:280px;border-right:none;border-bottom:1px solid var(--border, #D9E5DF)}.csv-list-body{max-height:220px}.csv-detail-panel{max-height:none}.cards-split-view.has-inline .csv-list-panel{width:100%;flex:none}.csv-inline-col{width:100%;flex:none;max-height:none;border-left:none;border-top:1px solid var(--border, #D9E5DF)}}.dept-grid{display:flex;flex-direction:column;gap:14px}.dept-group{border:1px solid var(--border, #D9E5DF);border-radius:10px;padding:10px 12px;background:#f3f7f5}.dept-layer{font-size:12px;font-weight:700;color:var(--muted, #526C62);letter-spacing:.5px;margin-bottom:8px}.dept-chips{display:flex;flex-wrap:wrap;gap:8px}.dept-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid var(--border, #D9E5DF);border-radius:999px;font-size:13px;cursor:pointer;background:#fff;-webkit-user-select:none;user-select:none;transition:all .12s}.dept-chip:hover{border-color:#4fa286}.dept-chip.checked{background:#eaf3ed;border-color:#4fa286;color:#246b59;font-weight:600}.dept-chip input{accent-color:#1B5548}.ivw-card{border:1px solid var(--border, #D9E5DF);border-radius:11px;padding:14px 16px;margin-bottom:14px;background:#fff;box-shadow:0 1px 3px #183c330a}.ivw-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.ivw-card-head h4{margin:0;font-size:15px}.ivw-objective{font-size:13px;color:#334;line-height:1.65;margin-bottom:6px}.ivw-focus{font-size:13px;color:#334;line-height:1.65;margin-bottom:8px}.ivw-q{font-size:13px;color:#1b5548;line-height:1.7;margin:4px 0}.q-purp{color:#526c62;font-size:12px}.ex-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.ex-card{display:flex;flex-direction:column;min-height:120px;border:1px solid var(--border, #D9E5DF);border-radius:13px;padding:16px 18px;background:#fff;cursor:pointer;transition:box-shadow .15s,border-color .15s,transform .1s;box-shadow:0 1px 3px #183c330a}.ex-card:hover{box-shadow:0 3px 10px #183c331a;transform:translateY(-1px)}.ex-card.active{border-color:#1b5548;box-shadow:0 0 0 2px #1b554826}.ex-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.ex-card-title{font-size:16px;font-weight:700;color:var(--text, #1B5548)}.ex-badge{font-size:12px;font-weight:700;color:#1b5548;background:#eaf3ed;border-radius:999px;padding:2px 10px}.ex-badge.dev{color:#b07d1a;background:#fff4e0}.ex-card-desc{font-size:13px;color:var(--muted, #526C62);line-height:1.6}.ex-panel{margin-top:4px}.ex-toolbar{justify-content:space-between;align-items:center;margin-bottom:12px}.ex-acts{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ex-table th,.ex-table td{text-align:left;vertical-align:middle}.ex-table .ex-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.ex-table .ex-ind{white-space:nowrap}.ex-table .ex-name{max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-table .ex-ops{width:78px;text-align:right}.ex-pager{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px}.ex-page-info{font-size:13px;color:var(--muted, #526C62)}@media (max-width: 1080px){.ex-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 860px){.ex-cards{grid-template-columns:1fr}}.tag-toolbar{justify-content:space-between;align-items:flex-start;margin-bottom:10px;gap:12px;flex-wrap:wrap}.tag-search{width:220px}.tag-sel{width:130px}.tag-sub{font-size:12.5px;color:var(--muted, #526C62);background:#f3f7f5;border:1px dashed #dbe3f5;border-radius:8px;padding:8px 12px;margin-bottom:12px;line-height:1.6}.tag-scroll{overflow:auto;max-height:560px;border:1px solid var(--border, #D9E5DF);border-radius:10px}.tag-table{font-size:13px}.tag-table th{position:sticky;top:0;background:#f3f7f5;z-index:2;white-space:nowrap;padding:10px 12px}.tag-table td{padding:9px 12px;vertical-align:top;max-width:180px}.tag-code{font-weight:700;color:#1b5548;white-space:nowrap}.tag-name{font-weight:600;white-space:nowrap}.tag-scope,.tag-angle{white-space:nowrap}.tag-ellip{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-points{max-width:240px;white-space:normal;line-height:1.55}.tag-ops{white-space:nowrap}.tag-ellip:hover,.tag-name:hover{cursor:text}.tag-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center}.tag-modal[hidden]{display:none}.tag-modal-mask{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a73}.tag-modal-box{position:relative;background:#fff;border-radius:14px;width:640px;max-width:calc(100vw - 40px);max-height:calc(100vh - 60px);display:flex;flex-direction:column;box-shadow:0 20px 50px #0f172a40}.tag-modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border, #D9E5DF)}.tag-modal-head h3{margin:0;font-size:16px;color:var(--text, #1B5548)}.tag-modal-close{border:none;background:transparent;font-size:16px;color:var(--muted, #526C62);cursor:pointer;padding:4px;border-radius:6px}.tag-modal-close:hover{background:#f1f3f8;color:#1b5548}.tag-modal-body{padding:18px 20px;overflow-y:auto}.tag-modal-body .form-grid4{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.tag-detail{display:flex;flex-direction:column;gap:0}.tag-det-row{display:flex;gap:14px;padding:9px 0;border-bottom:1px solid #f0f2f7}.tag-det-row:last-child{border-bottom:none}.tag-det-label{width:120px;flex-shrink:0;color:var(--muted, #526C62);font-size:13px}.tag-det-value{flex:1;color:var(--text, #1B5548);font-size:13px;white-space:pre-wrap;word-break:break-word;line-height:1.6}.cd-table td{padding:9px 12px;vertical-align:top}.cd-name{font-weight:600;max-width:180px;white-space:normal}.cd-content{max-width:340px;white-space:normal;line-height:1.6;color:var(--muted, #4b5563);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cd-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.cd-source{max-width:200px;white-space:normal;font-size:12.5px;color:var(--muted, #526C62)}.cd-tag-sel{width:220px}.cd-tag-name{font-size:13px;color:#1b5548;font-weight:600;margin-top:4px;min-height:18px}.cd-detail-content{white-space:pre-wrap;line-height:1.75}.tag-linked{text-align:center;white-space:nowrap}.tag-linked-link{font-weight:600}.tag-linked-zero{color:#9aa3b2}.tag-rating-num{text-align:center;max-width:108px;font-variant-numeric:tabular-nums}.tag-rating-num .tag-linked-link{font-size:13.5px}.tag-ind-list{display:flex;flex-wrap:wrap;gap:6px;max-height:380px;overflow-y:auto}.tag-ind-chip{display:inline-flex;align-items:center;padding:4px 10px;background:#f3f7f5;border:1px solid #dbe7ff;border-radius:999px;font-size:12.5px;color:#1f3a8a;line-height:1.5}.refp{position:relative;max-width:560px}.refp-selected:not([hidden]){display:flex;align-items:center;gap:6px;margin-bottom:6px}.refp-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;background:#eaf3ed;border:1px solid #4FA286;border-radius:999px;font-size:13px;color:#246b59;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.refp-clear{border:none;background:#dbe3f5;color:#526c62;border-radius:50%;width:20px;height:20px;font-size:11px;line-height:1;cursor:pointer;flex-shrink:0}.refp-clear:hover{background:#fca5a5;color:#fff}.refp-input{width:100%;box-sizing:border-box;padding:8px 12px;border:1px solid var(--border, #D9E5DF);border-radius:8px;font-size:13px}.refp-input:focus{outline:none;border-color:#1b5548;box-shadow:0 0 0 2px #1b554826}.refp-drop{position:absolute;left:0;right:0;top:100%;margin-top:4px;background:#fff;border:1px solid var(--border, #D9E5DF);border-radius:10px;box-shadow:0 6px 20px #183c331f;max-height:320px;overflow-y:auto;z-index:60}.refp-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;cursor:pointer;border-bottom:1px solid #F3F7F5}.refp-item:last-child{border-bottom:none}.refp-item:hover{background:#f3f7f5}.refp-item-name{font-size:13px;color:var(--text, #1B5548);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.refp-item-ind{font-size:11px;color:#1b5548;background:#eaf3ed;border-radius:999px;padding:1px 8px;flex-shrink:0}.refp-empty{padding:12px;font-size:12.5px;color:var(--muted, #526C62);text-align:center}.ex-search-input{width:240px;padding:6px 10px;border:1px solid var(--border, #D9E5DF);border-radius:8px;font-size:13px;background:#fff}.ex-search-input:focus{outline:none;border-color:#1b5548;box-shadow:0 0 0 2px #1b554826}.ex-table .lk{color:#1b5548;text-decoration:none}.ex-table .lk:hover{text-decoration:underline}.ex-table .ex-ops{white-space:nowrap}.ex-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center}.ex-modal[hidden]{display:none}.ex-modal-mask{position:absolute;top:0;right:0;bottom:0;left:0;background:#141e3273}.ex-modal-box{position:relative;width:min(960px,92vw);max-height:86vh;background:#fff;border-radius:14px;box-shadow:0 20px 60px #183c3340;display:flex;flex-direction:column;overflow:hidden}.ex-modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eef0f5}.ex-modal-head h3{margin:0;font-size:16px;color:#1b5548;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:760px}.ex-modal-close{border:none;background:transparent;font-size:16px;color:#526c62;width:28px;height:28px;border-radius:6px;cursor:pointer}.ex-modal-close:hover{background:#f3f7f5;color:#1b5548}.ex-modal-meta{padding:10px 20px;font-size:12.5px;color:#526c62;background:#f8fafc;border-bottom:1px solid #eef0f5;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ex-meta-tag{font-size:11px;color:#1b5548;background:#eaf3ed;border-radius:999px;padding:2px 8px}.ex-meta-warn{color:#b07d1a;background:#fff4e0;padding:2px 8px;border-radius:6px}.ex-modal-body{margin:0;padding:16px 20px;flex:1 1 auto;overflow:auto;font-family:ui-monospace,SF Mono,Menlo,Consolas,PingFang SC,Microsoft YaHei,monospace;font-size:13px;line-height:1.7;white-space:pre-wrap;word-break:break-word;color:#1b5548;background:#fff}@media (max-width: 720px){.ex-search-input{width:140px}}.outline-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 14px}.outline-card{border:2px solid var(--border, #D9E5DF);border-radius:12px;padding:16px 18px;cursor:pointer;background:#f3f7f5;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.outline-card:hover{border-color:#b8c5dd;background:#f3f6fc}.outline-card.active{border-color:var(--primary, #1B5548);background:#eaf3ed;box-shadow:0 0 0 3px #2f6bff1f}.outline-card-title{font-size:16px;font-weight:700;color:#183c33;margin-bottom:6px}.outline-card-desc{font-size:13px;color:#526c62;line-height:1.55}@media (max-width: 720px){.outline-cards{grid-template-columns:1fr}}.ivw-card-actions{display:inline-flex;gap:6px;align-items:center}.ivw-edit-modal{max-width:720px;width:calc(100vw - 60px);max-height:calc(100vh - 60px);display:flex;flex-direction:column}.ivw-edit-modal .field{margin-bottom:12px}.ivw-edit-modal textarea{width:100%;font-family:inherit;font-size:14px;padding:8px;border:1px solid var(--border, #D9E5DF);border-radius:6px;resize:vertical}.ivw-edit-modal input[type=text]{width:100%;padding:8px;border:1px solid var(--border, #D9E5DF);border-radius:6px;font-size:13px}.ivw-edit-q{border:1px solid var(--border, #D9E5DF);border-radius:8px;padding:8px;margin-bottom:8px;background:#f3f7f5}.ivw-edit-q .row{margin-bottom:6px}.ivw-edit-q textarea{flex:1;min-width:0}.ivw-edit-modal #ivwEdQs{max-height:340px;overflow-y:auto;padding-right:4px}.exm-modal{max-width:820px;width:calc(100vw - 60px);max-height:calc(100vh - 60px);display:flex;flex-direction:column}.modal-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border, #D9E5DF);padding-bottom:10px;margin-bottom:10px}.modal-head h2{margin:0;font-size:16px}.modal-close{background:transparent;border:0;font-size:18px;cursor:pointer;color:#526c62;padding:4px 10px}.modal-close:hover{color:#183c33}.exm-meta{font-size:12.5px;color:#526c62;margin-bottom:8px}.exm-body{flex:1;min-height:360px;max-height:calc(100vh - 220px);overflow:auto;white-space:pre-wrap;line-height:1.6;font-size:13px;background:#f3f7f5;border:1px solid var(--border, #D9E5DF);border-radius:8px;padding:12px;margin:0}.outline-textarea{width:100%;min-height:460px;box-sizing:border-box;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Courier New,monospace;font-size:14px;line-height:1.75;color:#183c33;padding:14px 16px;border:1px solid #e0e6ef;border-radius:8px;background:#fbfcff;white-space:pre;overflow:auto;resize:vertical;-moz-tab-size:4;tab-size:4}.outline-textarea.editing{border-color:#1b5548;background:#fff;box-shadow:0 0 0 3px #2f6bff14}.outline-textarea[readonly]{cursor:default}.outline-actions[data-mode=edit]{background:#fff7d6;padding:4px 10px;border-radius:6px;border:1px solid #f1d97a}.outline-edit-hint{font-size:12.5px;color:#526c62;background:#fff7d6;border-left:3px solid #f1d97a;padding:6px 12px;margin:10px 0 0;border-radius:0 4px 4px 0}.ol-edit-modal{max-width:920px;width:calc(100vw - 60px);max-height:calc(100vh - 60px);display:flex;flex-direction:column}.ol-edit-modal p.hint code{background:#eef2f7;padding:1px 6px;border-radius:3px;font-size:12px}.ol-edit-modal textarea{flex:1;min-height:360px;max-height:calc(100vh - 240px)}.refp-chip-clickable{cursor:pointer}.refp-chip-clickable:hover{background:#dde6ff}.refp-view{border:none;background:transparent;color:var(--primary, #1B5548);cursor:pointer;font-size:12.5px;padding:0 4px}.refp-view:hover{text-decoration:underline}.seg-ctrl{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:#fff}.seg-ctrl .seg-btn{border:none;background:transparent;color:var(--muted);padding:5px 14px;font-size:12px;cursor:pointer;line-height:1.6}.seg-ctrl .seg-btn+.seg-btn{border-left:1px solid var(--border)}.seg-ctrl .seg-btn:hover{background:#f3f7f5}.seg-ctrl .seg-btn.on{background:var(--primary);color:#fff}.tr-res-head,.pf-res-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tr-body{max-height:560px;overflow:auto;padding-right:4px}.tr-seg{padding:10px 0;border-bottom:1px dashed var(--border)}.tr-seg:last-child{border-bottom:none}.tr-seg-head{font-weight:700;color:var(--primary);font-size:13px;margin-bottom:6px}.tr-row{display:flex;gap:16px;align-items:flex-start}.tr-src,.tr-tgt{flex:1;min-width:0;white-space:pre-wrap;line-height:1.7}.tr-src{color:var(--muted)}.tr-tgt{color:var(--text)}.tr-body:has(.tr-src) .tr-tgt{border-left:1px solid var(--border);padding-left:16px}.pf-body{max-height:560px;overflow:auto;padding-right:4px}.pf-group{margin:14px 0 8px;padding:6px 10px;background:#eaf3ed;color:var(--primary);font-weight:700;font-size:13px;border-radius:6px}.pf-sub{margin:10px 0 6px;font-weight:600;font-size:13px;color:var(--text)}.pf-item{border:1px solid var(--border);border-radius:8px;padding:10px 12px;margin-bottom:8px;background:#fff}.pf-item-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.pf-no{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:4px;background:#f3f7f5;color:var(--muted);font-size:12px}.pf-loc{font-size:12px;color:var(--muted)}.pf-src{background:#f7f9fc;border-left:3px solid var(--border);padding:6px 10px;margin:4px 0 8px;font-size:13px;color:var(--text);white-space:pre-wrap;border-radius:0 4px 4px 0}.pf-row{display:flex;gap:10px;margin-bottom:3px;font-size:13px}.pf-k{flex:0 0 60px;color:var(--muted)}.pf-v{flex:1;min-width:0;white-space:pre-wrap}@media (max-width: 900px){.tr-row{flex-direction:column;gap:8px}.tr-body:has(.tr-src) .tr-tgt{border-left:none;padding-left:0;border-top:1px solid var(--border);padding-top:8px}}.tr-tgt textarea.tr-editarea{width:100%;min-height:64px;resize:vertical;font:inherit;line-height:1.7;padding:6px 8px;border:1px solid var(--border);border-radius:6px;background:#fff;box-sizing:border-box;display:block}.tr-tgt textarea.tr-editarea:focus{outline:none;border-color:var(--primary)}.tr-edit{color:#d5301d}.ref-collapse-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;padding:8px 0;border-bottom:1px solid #F3F7F5;margin-bottom:6px}.ref-collapse-header:hover{background:#fafbfc;border-radius:6px}.ref-collapse-header label{cursor:pointer;font-weight:600;font-size:13.5px;color:var(--text, #1B5548)}.ref-collapse-icon{font-size:11px;color:var(--muted, #526C62);transition:transform .2s;padding:4px 8px}.ref-collapse-body.collapsed{display:none}.ref-collapse-body{transition:all .25s ease}.ref-collapse-header.is-open .ref-collapse-icon{transform:rotate(180deg)}.ref-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px;align-items:start}.ref-list-grid .checkbox.blk{margin-bottom:0;min-width:0}.ref-list-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ref-collapse-body .mat-ref-tree{max-height:280px;overflow:auto}.ic-head-v2{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:10px;padding-bottom:9px;border-bottom:1px dashed #F3F7F5}.ic-action-btn{border:1px solid var(--border, #D9E5DF);border-radius:7px;padding:4px 13px;font-size:12.5px;cursor:pointer;background:#fff;color:#526c62;transition:all .15s}.ic-action-btn:hover{background:#f3f7f5;border-color:#c5ced8}.ic-save-btn{background:#eaf5ff;color:#1565c0;border-color:#a8c8e8;font-weight:600}.ic-save-btn:hover{background:#dceefb}.ic-delete-btn{color:#c0392b;border-color:#f5c2c2}.ic-delete-btn:hover{background:#fef0f0}.ic-cancel-btn:hover{background:#f3f7f5}.ic-head-sep{width:1px;height:18px;background:#d9e5df;margin:0 4px}.ic-word-count{margin-left:auto;font-size:12px;color:var(--muted, #526C62);padding:3px 10px;background:#f3f7f5;border-radius:999px}.ic-modal-close-x{position:absolute;top:12px;right:14px;width:28px;height:28px;line-height:1;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #f5c2c2;border-radius:7px;color:#dc2626;font-size:15px;font-weight:700;cursor:pointer;transition:all .15s;z-index:10}.ic-modal-close-x:hover{background:#fef0f0;border-color:#ef9a9a;color:#b91c1c}.ic-footer-v2{margin-top:14px;padding-top:12px;border-top:1px solid #F3F7F5;display:flex;flex-direction:column;gap:9px}.ic-foot-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ic-foot-label{flex:0 0 auto;font-size:12.5px;font-weight:600;color:#555f73;min-width:64px;text-align:left}.ic-foot-val{flex:1;font-size:12.5px;color:var(--text, #1B5548);line-height:1.6;word-break:break-word}.ic-tag-input{flex:1;max-width:220px;padding:5px 9px;font-size:12.5px;border:1px solid var(--border, #D9E5DF);border-radius:7px;background:#fff;outline:none}.ic-tag-input:focus{border-color:var(--primary, #1B5548);box-shadow:0 0 0 2px #1b554826}.ic-tag-name{font-size:12px;color:var(--primary, #1B5548);font-weight:600;padding:4px 8px;background:#eaf3ed;border-radius:5px}.ic-quant-select{padding:4px 9px;font-size:12.5px;border:1px solid var(--border, #D9E5DF);border-radius:7px;background:#fff;outline:none;min-width:80px}.ic-quant-select:focus{border-color:var(--primary, #1B5548)}.ic-source-text{max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ic-foot-btn{border:1px solid #d7e2ff;background:#eaf3ed;color:#1b5548;border-radius:7px;padding:3px 11px;font-size:12px;cursor:pointer;white-space:nowrap}.src-text-box{height:10.2em;overflow-y:auto;padding:12px;background:#f3f7f5;border-radius:8px;font-size:13px;line-height:1.7}.src-para{margin:0 0 10px;color:var(--text)}.src-para:last-child{margin-bottom:0}.src-match-mark{background:#fde68a;padding:1px 2px;border-radius:3px;color:var(--text)}#selAllLbl{align-items:center;gap:4px;cursor:pointer}#selAllLbl input{width:14px;height:14px;cursor:pointer;accent-color:var(--primary, #1B5548)}.ic-foot-btn:hover{background:#dbe5ff}.ic-example-link{color:#1b5548;text-decoration:none;font-size:12.5px;border-bottom:1px dotted #4FA286;cursor:pointer}.ic-example-link:hover{color:#1558d0;border-bottom-style:solid;background:#f0f5ff}.ic-example-sep{margin:0 4px;color:#ccc}.cg-foot-tag{font-size:11px;padding:1px 7px;background:#eaf3ed;color:#1b5548;border-radius:999px;font-weight:500}.cg-foot-quant{font-size:11px;padding:1px 7px;background:#f0f5eb;color:#3d7a1e;border-radius:999px;font-weight:500}.ic-tag-chain{display:block;width:100%;margin-top:4px;padding-top:4px;border-top:1px dashed var(--border, #e5e7eb);font-size:12px;color:var(--muted, #526C62);line-height:1.5}.cards-local-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:600;display:flex;align-items:flex-start;justify-content:center;padding-top:14px;background:#0f172a2e}.cards-local-dialog{position:relative;left:50%;transform:translate(-50%);width:min(420px,92%);margin:0 12px;background:#fff;border-radius:12px;box-shadow:0 10px 32px #0f172a38;padding:18px 20px 16px;font-size:14px;color:#1f2937}.cards-local-dialog .cld-msg{line-height:1.6;margin-bottom:16px}.cards-local-dialog .cld-actions{display:flex;justify-content:flex-end;gap:10px}.cards-local-dialog .cld-ok,.cards-local-dialog .cld-cancel{border:none;border-radius:8px;padding:8px 20px;font-size:13.5px;cursor:pointer}.cards-local-dialog .cld-cancel{background:#eef1f5;color:#374151}.cards-local-dialog .cld-cancel:hover{background:#e2e6ec}.cards-local-dialog .cld-ok{background:var(--primary, #1B5548);color:#fff}.cards-local-dialog .cld-ok:hover{background:#1f55d6}.cards-local-toast{position:fixed;left:50%;z-index:601;background:#1f2937;color:#fff;padding:9px 18px;border-radius:22px;font-size:13px;white-space:nowrap;opacity:0;transform:translate(-50%) translateY(-4px);transition:opacity .25s ease,transform .25s ease;pointer-events:none;box-shadow:0 6px 18px #0f172a38}.cards-local-toast.show{opacity:1;transform:translate(-50%) translateY(0)}.cards-local-toast.ok{background:#1f9d55}.cards-local-toast.err{background:#e53935}.csv-inline-panels{margin-top:14px;display:flex;flex-direction:column;gap:12px}.csv-inline-panel{border:1px solid var(--border, #D9E5DF);border-radius:10px;background:#fff;overflow:hidden;box-shadow:0 1px 3px #0f172a0d}.csv-inline-head{display:flex;align-items:center;gap:8px;padding:9px 14px;background:#f7f9fd;border-bottom:1px solid var(--border, #D9E5DF)}.csv-inline-tag{flex-shrink:0;font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;white-space:nowrap}.csv-inline-tag-src{background:#e8f0fe;color:#1b5548}.csv-inline-tag-ex{background:#e7f8f0;color:#12855f}.csv-inline-title{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csv-inline-close{flex-shrink:0;border:none;background:transparent;cursor:pointer;font-size:18px;line-height:1;color:var(--muted);padding:0 4px}.csv-inline-close:hover{color:var(--text)}.csv-inline-body{padding:14px 16px}.csv-inline-body .src-text-box{height:auto;max-height:42vh}.csv-inline-body pre{max-height:42vh}.csv-inline-body h3{font-size:14px}.csv-inline-loading{color:var(--muted);font-size:13px;padding:6px 0}.subcontent-wrap{position:relative}.expand-view-btn{position:absolute;top:6px;left:6px;z-index:30;width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #d7dde8;color:#526c62;cursor:pointer;box-shadow:0 1px 4px #0f235014;padding:0;transition:background .15s,border-color .15s,color .15s}.expand-view-btn:hover{background:#eaf3ed;border-color:#a9c4b8;color:#2b5bd7}.subcontent-wrap .card>h2:first-child{padding-left:38px}.subcontent-wrap.expanded .card{max-width:none}body.editor-expanded .subcontent-wrap{padding:10px 14px 0}body.editor-expanded .view-root{min-height:100vh}body.editor-expanded .subcontent-wrap .card{margin-bottom:0;min-height:calc(100vh - 86px)}body.editor-expanded .view-root .task-editor{display:flex;flex-direction:column;align-items:stretch;height:100vh;width:100%;box-sizing:border-box}body.editor-expanded .task-editor>.mode-cards{flex:0 0 auto;width:100%}body.editor-expanded .subcontent-wrap{flex:1;min-height:0;height:auto;display:flex;flex-direction:column}body.editor-expanded .subcontent-wrap .task-subcontent{flex:1;min-height:0;display:flex;flex-direction:column}body.editor-expanded .mw-root,body.editor-expanded .mww-root{flex:1;height:auto;min-height:0}body.editor-expanded .mat-view-wrap{padding:10px 14px}body.editor-expanded .mat-view-wrap .card{max-width:none;margin-bottom:0;height:calc(100vh - 20px);min-height:0;display:flex;flex-direction:column;overflow:hidden}body.editor-expanded .mat-view-wrap .mat-split{flex:1;min-height:0;margin-top:12px;align-items:stretch;overflow:hidden}body.editor-expanded .mat-view-wrap .mat-tree{max-height:none}body.editor-expanded .mat-view-wrap .mat-main{display:flex;flex-direction:column;min-height:0;overflow:hidden}body.editor-expanded .mat-view-wrap .mat-filelist,body.editor-expanded .mat-view-wrap .mat-overview{flex:1;min-height:0;overflow:auto}body.editor-expanded .mat-view-wrap .mat-text-editor{flex:1;min-height:0;display:flex;flex-direction:column}body.editor-expanded .mat-view-wrap .mat-text-area{flex:1;min-height:200px;resize:none}.mat-split{display:flex;gap:16px;align-items:flex-start;margin-top:12px}.mat-tree{flex:0 0 340px;width:340px;max-height:64vh;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:#f3f7f5;padding:10px 10px 12px}.mat-tree-title{font-size:13px;font-weight:600}.mat-tree-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.mat-tree-actions{display:flex;gap:6px}.mat-tree-tip{font-size:12px;color:var(--muted);margin:8px 0 0;line-height:1.6}.mat-tree-body{display:flex;flex-direction:column}.mat-tree-divider{height:1px;background:var(--border);margin:6px 2px}.mat-tree-newrow{display:flex;gap:6px;margin:6px 0}.mat-tree-newrow input{flex:1;min-width:0;padding:6px 9px;border:1px solid var(--border);border-radius:8px;font-size:13px}.mat-tree-foot{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border)}.btn-block{width:100%}.btn.is-on{background:var(--primary);color:#fff;border-color:var(--primary)}.btn.is-on:hover{background:var(--primary)}.tree-row{display:flex;align-items:center;gap:4px;padding:2px 4px;border-radius:6px;cursor:pointer;-webkit-user-select:none;user-select:none;font-family:inherit;font-size:13px;line-height:1.9;white-space:nowrap}.tree-row:hover{background:#eaf3ed}.tree-row.active{background:#dfeaff}.tree-row.drop-hover{background:#d6e6ff;box-shadow:inset 0 0 0 1px var(--primary)}.tree-prefix{color:#c6cfe0;white-space:pre;flex:none;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.tree-caret{color:#98a4bb;font-size:10px;width:12px;text-align:center;flex:none}.tree-caret:hover{color:var(--primary)}.tree-label{overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;color:#4a5670}.tree-label.folder{font-weight:600;color:#16463a}.tree-row.active .tree-label{color:var(--primary)}.tree-no{font-size:11px;color:#b3bccd;flex:none}.tree-count{font-size:11px;color:var(--muted);background:#f3f7f5;border-radius:9px;padding:0 6px;flex:none}.tree-ops{display:none;gap:4px;align-items:center;flex:none}.tree-row:hover .tree-ops{display:inline-flex}.tree-row:hover .tree-no{display:none}.tree-ops button{border:1px solid var(--border);background:#fff;border-radius:5px;cursor:pointer;font-size:11px;padding:0 5px;line-height:17px;color:var(--muted);font-family:inherit}.tree-ops button:hover{color:var(--primary);border-color:#a9c4b8}.tree-ops button.danger:hover{color:#b42318;border-color:#f5c2c2;background:#fdecec}.tree-move{font-size:11px;padding:0 2px;max-width:74px;height:19px;border:1px solid var(--border);border-radius:5px;background:#fff;color:var(--muted);cursor:pointer;font-family:inherit}.tree-move:hover{color:var(--primary);border-color:#a9c4b8}.tree-rename{flex:1;min-width:0;padding:1px 5px;border:1px solid var(--primary);border-radius:5px;font-size:13px;font-family:inherit}.mat-file-row{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;background:#fff;font-size:13px}.mat-file-row:hover{border-color:#eaf3ed;background:#f8fbff}.mat-file-row.drop-hover{border-color:var(--primary);background:#eaf3ed}.mat-file-row .mat-num{flex:0 0 36px;width:36px;text-align:right;display:inline-flex;align-items:center;line-height:22px}.mat-file-row .mat-name{flex:0 0 320px;width:320px;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:22px}.mf-size{flex:0 0 92px;width:92px;white-space:nowrap;line-height:22px;color:var(--muted);font-size:12px;display:inline-flex;align-items:center}.mf-ops{display:inline-flex;gap:6px;margin-left:auto;align-items:center}.mf-ops button{display:inline-flex;align-items:center;justify-content:center;height:24px;border:1px solid var(--border);background:#fff;border-radius:6px;cursor:pointer;font-size:12px;padding:0 8px;color:var(--muted);line-height:1}.mf-ops button:hover{color:var(--primary);border-color:#a9c4b8}.mf-drag{cursor:grab;color:#c2cad9}.mat-main{flex:1;min-width:0}.mat-main-head{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.mat-main-head .mat-path,.mat-main-head .mat-count{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;margin:0;padding:0;height:24px;line-height:1;font-size:13px}.mat-path{color:var(--muted)}.mat-main-head .mat-count{min-width:54px;color:var(--muted)}.mat-filelist{display:flex;flex-direction:column;gap:8px}.mat-num{color:var(--muted);font-size:12px}.mat-link{color:var(--primary);cursor:pointer;text-decoration:none}.mat-link:hover{text-decoration:underline}.mat-text-editor{margin-top:0;padding-top:0}.mat-text-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.mat-text-name{font-weight:600;font-size:14px}.mat-text-area{width:100%;min-height:260px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;font-size:13px;line-height:1.6;resize:vertical;font-family:inherit}.mat-dirty{color:var(--warn);font-size:12px}.mat-overview{overflow:auto}.mat-overview-table{width:100%;min-width:1020px;border-collapse:collapse;font-size:13px;background:#fff}.mat-overview-table th,.mat-overview-table td{border:1px solid var(--border);padding:8px 10px;text-align:left;vertical-align:top}.mat-overview-table thead th{background:#eaf3ed;color:#16463a;font-weight:600;position:sticky;top:0;white-space:nowrap}.mat-overview-table .ov-no{width:56px;text-align:center;color:var(--muted);white-space:nowrap}.mat-overview-table .ov-name{width:230px;min-width:230px;font-weight:600;color:#16463a;word-break:break-all}.mat-overview-table .ov-type{width:110px;white-space:nowrap;color:var(--muted)}.mat-overview-table .ov-params{width:300px;color:#44506a;line-height:1.7}.mat-overview-table .ov-summary{min-width:360px;line-height:1.7;color:#16463a}.mat-overview-table .ov-summary-h{min-width:360px}.mat-overview-table tbody tr:hover{background:#f3f7f5}.mat-overview-tip{margin-top:8px}.mat-ref-tree{display:flex;flex-direction:column;gap:6px}.mat-tree-folder{border-left:2px solid #dde5f2;margin:4px 0 4px 4px;padding-left:8px}.mat-tree-folder-name{font-size:13px;font-weight:600;color:#16463a;margin-bottom:4px}.mat-tree-row--child{margin-left:0}.reorg-split{display:flex;gap:16px;align-items:flex-start;margin-top:12px}.reorg-outline-pane{flex:0 0 320px;width:320px;max-height:66vh;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:#f3f7f5;padding:12px}.reorg-outline-editor{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.roe-head{display:flex;align-items:center;justify-content:space-between}.roe-head h3{margin:0;font-size:14px}.roe-textarea{width:100%;min-height:150px;padding:9px 11px;border:1px solid var(--border);border-radius:10px;font-size:13px;line-height:1.6;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.roe-actions{display:flex;gap:8px;flex-wrap:wrap}.roe-warn{color:var(--warn);font-size:12px}.reorg-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}.reorg-main{flex:1;min-width:0}.reorg-node{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:8px;border:1px solid transparent;-webkit-user-select:none;user-select:none}.reorg-node:hover{background:#eaf3ed}.reorg-node.is-leaf{cursor:pointer}.reorg-node.is-leaf.drop-hover{border-color:var(--primary);background:#eaf3ed;box-shadow:inset 0 0 0 1px var(--primary)}.reorg-node.active{background:#eaf3ed;border-color:#eaf3ed}.reorg-node.lv2{font-size:13.5px}.reorg-node.lv3{font-size:13px;color:#16463a}.rn-code{font-size:12px;color:var(--muted);font-family:ui-monospace,Menlo,Consolas,monospace;min-width:34px}.rn-title{flex:1;font-size:14px;font-weight:600}.rn-sub{font-size:12px;color:var(--muted)}.rn-count{font-size:12px;color:var(--muted);background:#f3f7f5;border-radius:10px;padding:0 8px;min-width:20px;text-align:center}.rn-count.has{color:#fff;background:var(--primary)}.mat-tree-tip{font-size:12px;color:var(--muted);margin:8px 0 0}.reorg-pool{border:1px solid var(--border);border-radius:var(--radius);background:#fff;padding:12px}.rp-head{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 2px 10px}.rp-caret{color:var(--muted);font-size:12px}.rp-hint{font-size:12px;color:var(--muted);margin-left:auto}.reorg-cardpool{border-top:1px dashed var(--border);padding-top:10px}.reorg-node-cards{border:1px solid var(--border);border-radius:var(--radius);background:#fff;padding:12px;margin-top:14px}.rnc-head{display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:14px;margin-bottom:8px}.rnc-body{display:flex;flex-direction:column;gap:8px}.reorg-card{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:9px;background:#f3f7f5}.reorg-card.active,.reorg-card.drag-over{border-color:var(--primary);background:#eaf3ed}.rc-drag{cursor:grab;color:var(--muted);font-size:13px}.rc-no{font-size:12px;color:var(--muted);min-width:22px}.rc-name{flex:1;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:80px}.rc-desc{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.rc-badge{font-size:11px;padding:1px 7px;border-radius:8px;border:1px solid var(--border);color:var(--muted)}.rc-badge.on{color:#fff;background:var(--good);border-color:var(--good)}.rc-badge.on-sel{color:#fff;background:var(--primary);border-color:var(--primary)}.rc-place{font-size:12px;padding:1px 8px;border-radius:8px;color:var(--muted);border:1px dashed var(--border)}.rc-place.set{color:var(--primary);border-color:var(--primary);border-style:solid}.rc-ops{display:flex;gap:6px}.rc-ops button{border:1px solid var(--border);background:#fff;border-radius:6px;cursor:pointer;font-size:12px;padding:2px 7px;color:var(--muted)}.rc-ops button:hover{color:var(--primary);border-color:#a9c4b8}.rc-ops button:disabled{opacity:.4;cursor:not-allowed}.rc-place-btn{font-size:12px;padding:3px 9px;border:1px solid var(--primary);color:var(--primary);background:#fff;border-radius:7px;cursor:pointer}.rc-place-btn:hover{background:#eaf3ed}.rop-head{font-size:13px;font-weight:600;margin-bottom:6px}.rop-body{font-size:13px;color:var(--text)}.rnc-head-right{display:inline-flex;align-items:center;gap:10px;font-weight:400}.reorg-panel-hint{font-size:12px;color:var(--muted);margin:0 0 8px;line-height:1.6}.reorg-grid .cards-grid-view{margin-top:10px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.reorg-grid .cg-desc-preview{max-height:60px}.rg-place-row{display:flex;align-items:center;gap:8px}.rg-place-row .rc-place{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reorg-list-split{display:flex;gap:0;margin-top:10px;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff;min-height:420px}.reorg-list-col{width:380px;flex:0 0 380px;border-right:1px solid var(--border);background:#f3f7f5;display:flex;flex-direction:column;max-height:calc(100vh - 210px)}.reorg-list-body{overflow-y:auto}.reorg-detail-col{flex:1;min-width:320px;overflow-y:auto;padding:16px 18px;max-height:calc(100vh - 210px)}.reorg-detail-col .csv-inline-panels{margin-top:10px}.reorg-list-split .csv-row{gap:6px}.reorg-list-split .csv-row-desc{min-width:60px}.rg-seq{font-size:11px;color:var(--muted);min-width:16px;text-align:right;flex:none}.reorg-list-split .rc-ops button.rc-place-btn{font-size:11px;padding:2px 7px}@media (max-width: 1200px){.reorg-list-col{width:300px;flex:0 0 300px}}@media (max-width: 900px){.reorg-list-split{flex-direction:column}.reorg-list-col{width:100%;flex:none;max-height:300px;border-right:none;border-bottom:1px solid var(--border)}.reorg-detail-col{max-height:none}}.dropzone.drag{border-color:var(--primary);background:#eaf3ed}.draft-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}.draft-fmt-group{display:inline-flex;gap:4px;align-items:center}.draft-fmt{width:30px;height:28px;border:1px solid var(--border);background:#fff;border-radius:7px;cursor:pointer;font-size:13px;color:var(--text)}.draft-fmt:hover{border-color:#a9c4b8;color:var(--primary)}.draft-split{display:flex;gap:0;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff;min-height:460px}.draft-outline{width:268px;flex:0 0 268px;border-right:1px solid var(--border);background:#f3f7f5;display:flex;flex-direction:column;max-height:calc(100vh - 220px)}.do-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border);font-size:13px;font-weight:600}.do-body{flex:1;overflow-y:auto;padding:8px 6px}.do-item{display:flex;align-items:flex-start;padding:6px 8px;border-radius:7px;cursor:pointer;font-size:13px;line-height:1.5;color:#16463a}.do-item:hover{background:#eaf3ed}.do-item.active{background:#eaf3ed;color:var(--primary);font-weight:600}.do-item.lv1{font-weight:600;color:var(--text)}.do-item.lv2{font-size:12.5px}.do-item.lv3{font-size:12px;color:var(--muted)}.do-text{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}.draft-main{flex:1;min-width:0;display:flex}.draft-body{position:relative;flex:1;overflow-y:auto;padding:34px 60px 90px;max-height:calc(100vh - 220px)}.draft-split.no-outline .draft-body{padding-left:40px}.draft-doc-title{font-size:24px;font-weight:700;line-height:1.5;margin:0 0 30px;padding-bottom:16px;border-bottom:1px solid var(--border);word-break:break-word;outline:none;border-radius:6px;cursor:text;white-space:pre-wrap}.draft-doc-title:focus{box-shadow:inset 0 0 0 1px #a9c4b8}.draft-doc-title[data-ph]:empty:before{content:attr(data-ph);color:#d9e5df}.draft-row{position:relative}.draft-caret{position:absolute;left:-22px;top:4px;width:20px;height:22px;line-height:1;border:none;background:transparent;cursor:pointer;font-size:12px;color:#9aa6b8;border-radius:6px;padding:0}.draft-caret:hover{color:var(--primary);background:#eaf3ed}.draft-row .draft-ops{position:absolute;right:2px;top:2px;display:none;gap:2px;align-items:center;padding:2px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);z-index:2}.draft-row:hover .draft-ops{display:inline-flex}.draft-ops button{width:24px;height:22px;line-height:1;border:1px solid transparent;background:transparent;border-radius:6px;cursor:pointer;font-size:12px;color:var(--muted)}.draft-ops button:hover{background:#eaf3ed;color:var(--primary);border-color:#eaf3ed}.draft-ops button.danger:hover{background:#fdecec;color:var(--bad);border-color:#f5c2c2}.draft-ops button:disabled{opacity:.35;cursor:not-allowed}.draft-p,.draft-h1,.draft-h2,.draft-h3{outline:none;white-space:pre-wrap;word-break:break-word;border-radius:6px;padding:4px 6px}.draft-p{font-size:15px;line-height:1.95;color:var(--text);margin:16px 0}.draft-h1{font-size:20px;font-weight:700;line-height:1.6;margin:36px 0 16px}.draft-h2{font-size:17px;font-weight:700;line-height:1.6;margin:30px 0 14px}.draft-h3{font-size:15.5px;font-weight:600;line-height:1.6;margin:24px 0 12px;color:#33405a}.collapsed-head{color:#526c62!important}.draft-p:hover,.draft-h1:hover,.draft-h2:hover,.draft-h3:hover{background:#f3f7f5}.draft-p:focus,.draft-h1:focus,.draft-h2:focus,.draft-h3:focus{background:#fff;box-shadow:inset 0 0 0 1px #a9c4b8}.draft-p[data-ph]:empty:before,.draft-h1[data-ph]:empty:before,.draft-h2[data-ph]:empty:before,.draft-h3[data-ph]:empty:before{content:attr(data-ph);color:#d9e5df;pointer-events:none}.draft-note{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin:-10px 0 16px;padding:2px 6px 2px 8px;border-left:2px solid #D9E5DF}.draft-note-txt{color:var(--muted)}.draft-note-link{border:none;background:none;padding:0;margin:0;cursor:pointer;font-size:12px;font-family:inherit;color:var(--primary);text-decoration:underline;text-underline-offset:2px;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-note-link:hover{color:#246b59}.draft-note-link.weak{color:#d9e5df;text-decoration:none}.draft-note-ex{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.draft-tail{margin-top:30px}.draft-tail-add{border:1px dashed var(--border);background:#f3f7f5;color:var(--muted);border-radius:8px;padding:8px 14px;cursor:pointer;font-size:13px}.draft-tail-add:hover{border-color:var(--primary);color:var(--primary);background:#f3f7f5}.draft-empty-actions{display:flex;gap:10px;justify-content:center;margin:16px 0 4px}.draft-inline-col{flex:0 0 380px;width:380px;min-width:0;border-left:1px solid var(--border);background:#f3f7f5;overflow-y:auto;padding:12px;max-height:calc(100vh - 220px)}.draft-inline-col .csv-inline-panels{margin-top:0}.draft-split.has-inline .draft-body{padding-left:40px;padding-right:34px}@media (max-width: 1100px){.draft-outline{width:214px;flex:0 0 214px}.draft-body{padding:26px 30px 80px}.draft-inline-col{flex:0 0 320px;width:320px}}@media (max-width: 900px){.draft-split{flex-direction:column}.draft-outline{width:100%;flex:none;max-height:240px;border-right:none;border-bottom:1px solid var(--border)}.draft-body{padding:20px 16px 60px;max-height:none}.draft-row .draft-ops{position:static;display:inline-flex;margin-bottom:2px;box-shadow:none;border-color:transparent}.draft-inline-col{width:100%;flex:none;max-height:none;border-left:none;border-top:1px solid var(--border)}}.mw-root,.mww-root{display:flex;flex-direction:column;height:calc(100vh - 210px);min-height:460px}.mw-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;margin-bottom:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface, #fff)}.mw-bar-hint{font-size:12px;color:var(--muted)}.mww-title{font-size:14px;font-weight:600;color:#16463a}.mw-outline-edit{flex:1;display:flex;flex-direction:column;gap:8px;min-height:0}.mw-oe-tip{font-size:12px;line-height:1.7;color:#4a5568;background:#f5f8ff;border:1px solid #dbe4f5;border-radius:8px;padding:8px 10px}.mw-oe-input{flex:1;min-height:240px;width:100%;resize:none;padding:12px 14px;border:1px solid var(--border);border-radius:10px;font-size:13px;line-height:1.9;font-family:inherit;background:#fff}.mw-oe-input:focus{outline:none;border-color:var(--primary)}.mw-oe-foot{display:flex;align-items:center;gap:8px}.mw-oe-hint{font-size:12px;color:var(--muted)}.mw-body{flex:1;display:flex;gap:10px;min-height:0}.mw-tree{width:236px;flex:0 0 236px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;background:#fff;overflow:hidden}.mw-tree-head{padding:8px 10px;font-size:12px;font-weight:600;color:#16463a;background:#f3f7f5;border-bottom:1px solid var(--border)}.mw-tree-list{flex:1;overflow:auto;padding:6px}.mw-node{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:7px;font-size:13px;color:#3d4a63;cursor:default;border:1px solid transparent}.mw-node.lv1{font-weight:600;color:#16463a;cursor:pointer}.mw-node.lv2{padding-left:18px;cursor:pointer}.mw-node.lv3{padding-left:32px}.mw-node.is-leaf{cursor:pointer}.mw-node.is-leaf:hover{background:#f4f7ff}.mw-node.active{background:#e8f0ff;border-color:#b9cdf3}.mw-node.drop-hover{background:#e6f7ee;border-color:#79c39b}.mw-node-code{color:var(--muted);font-size:12px;min-width:30px}.mw-node-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mw-node-n{font-size:11px;color:#526c62;background:#eef2fa;border-radius:9px;padding:1px 7px;min-width:20px;text-align:center}.mw-node-left{margin-top:8px;border-top:1px dashed var(--border);padding-top:8px;color:#8a6d3b;cursor:pointer}.mw-node-left:hover{background:#fdf6e6}.mw-node-left.drop-hover{background:#fdeccd;border-color:#d9a83f}.mw-segs.drop-zone{background:#fffdf5;box-shadow:inset 0 0 0 2px #e8cf9a}.mw-tip{font-size:12px;color:var(--muted);background:#f3f7f5;border:1px dashed var(--border);border-radius:7px;padding:6px 9px;margin-bottom:8px}.mw-stat-flag{display:inline-block;margin-left:8px;font-size:12px;padding:1px 7px;border-radius:9px}.mw-stat-flag.is-low{color:#8a6d3b;background:#fdf6e6}.mw-stat-flag.is-high{color:#7a4a86;background:#f7eefb}.mw-main{flex:1;min-width:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;background:#fff;overflow:hidden}.mw-main-left{flex:0 0 340px}.mw-stat{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 12px;font-size:13px;color:#16463a;background:#f3f7f5;border-bottom:1px solid var(--border)}.mw-stat-main b{color:var(--primary);font-size:15px}.mw-stat-sub{font-size:12px;color:var(--muted);font-weight:400}.mw-link{background:none;border:none;padding:0;cursor:pointer;color:var(--primary);font-size:12px;text-decoration:underline}.mw-segs{flex:1;overflow:auto;padding:10px 12px 24px}.mw-group{margin-bottom:14px}.mw-group-head{font-size:13px;font-weight:600;color:#16463a;padding:6px 0 8px;border-bottom:1px solid #F3F7F5;margin-bottom:8px;position:sticky;top:0;background:#fff;z-index:1}.mw-seg{border-bottom:1px solid #f0f2f6;padding:6px 0}.mw-seg.drop-hover{background:#f3fbf7;box-shadow:inset 3px 0 #79c39b}.mw-seg-head{display:flex;align-items:baseline;gap:8px;cursor:pointer;padding:4px 2px}.mw-seg-head:hover .mw-seg-title{color:var(--primary)}.mw-seg-caret{color:var(--muted);font-size:11px;width:12px}.mw-seg-title{font-size:13.5px;font-weight:600;color:#16463a;flex:1 1 auto;min-width:96px}.mw-seg-meta{font-size:11.5px;color:var(--muted);white-space:nowrap;flex:0 1 auto;min-width:0;max-width:50%;overflow:hidden;text-overflow:ellipsis}.mw-seg-body{padding:2px 2px 8px 20px}.mw-seg-p{margin:0 0 8px;font-size:13.5px;line-height:1.95;color:#16463a;text-align:justify}.mw-seg-foot{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin-top:4px}.mw-seg-grip{color:#c2cad8;font-size:12px;line-height:1;cursor:grab;-webkit-user-select:none;user-select:none}.mw-seg-grip:active{cursor:grabbing}.mw-seg-left{border-bottom-color:#f6ecd6}.mw-seg-left .mw-seg-title{color:#7a6234;font-weight:500}.mw-seg-left .mw-seg-head:hover .mw-seg-title{color:#b07d1a}.mw-seg-left .mw-seg-grip{color:#dcc9a2}.mw-src{width:400px;flex:0 1 400px;min-width:280px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;background:#fff;overflow:hidden}.mw-src-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:#f3f7f5;border-bottom:1px solid var(--border)}.mw-src-title{font-size:12.5px;font-weight:600;color:#16463a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;min-width:0}.mw-src-body{flex:1;overflow:auto;padding:10px 12px}.mw-src-p{margin:0 0 7px;font-size:12.5px;line-height:1.85;color:#7a869a}.mw-src-p.hit{color:#16202e;background:#fff6d8;box-shadow:-4px 0 #f0c040;border-radius:3px;padding-left:6px}.mw-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#141c2d52;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px}.mw-modal{width:560px;max-width:100%;max-height:78vh;display:flex;flex-direction:column;background:#fff;border-radius:12px;box-shadow:0 12px 40px #1018282e;overflow:hidden}.mw-modal-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-size:14px;font-weight:600;color:#16463a;border-bottom:1px solid var(--border)}.mw-modal-tip{padding:10px 16px;font-size:12px;line-height:1.7;color:#56617a;background:#f3f7f5}.mw-modal-list{flex:1;overflow:auto;padding:8px 16px}.mw-pick{display:flex;align-items:center;gap:8px;padding:7px 4px;font-size:13px;cursor:pointer}.mw-pick:hover{background:#f3f7f5}.mw-pick-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#16463a}.mw-pick-meta{font-size:12px;color:var(--muted)}.mw-modal-foot{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 16px;border-top:1px solid var(--border);background:#f3f7f5}.mw-modal-hint{margin-right:auto;font-size:12px;color:var(--muted)}.mw-progress{margin-right:auto;font-size:12px;color:var(--primary)}.mw-rate{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:10px 16px;border-top:1px dashed var(--border);background:#f3f7f5;font-size:12.5px;color:#16463a}.mw-rate .mw-rate-input{flex:0 0 58px;width:58px;padding:3px 6px;text-align:center;font-size:13px;font-weight:600;color:var(--primary);border:1px solid var(--border);border-radius:6px;background:#fff}.mw-rate .mw-rate-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #2f6bff24}.mw-rate .mw-rate-input:disabled{background:#f3f7f5;color:var(--muted)}.mw-rate-hint{flex-basis:100%;font-size:11.5px;color:var(--muted)}.mww-cols{flex:1;display:flex;gap:10px;min-height:0}.mww-tree{flex:1 1 0;min-width:180px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;background:#fff;overflow:hidden}.mww-body{flex:2 1 0;min-width:0;display:flex;flex-direction:column;gap:10px;overflow:auto;padding:10px 12px 24px;border:1px solid var(--border);border-radius:10px;background:#fff}.mww-seg{border:1px solid #F3F7F5;border-radius:10px;padding:10px 12px;background:#fff;cursor:pointer;transition:border-color .12s,background .12s}.mww-seg.active{border-color:#b9cdf3;background:#fafcff}.mww-seg.editing{border-color:var(--primary);background:#f6faff;box-shadow:0 0 0 2px #2563eb1a}.mww-seg-head{display:flex;align-items:baseline;gap:8px;margin-bottom:6px}.mww-seg-path{font-size:11.5px;color:#8a97ad}.mww-seg-title{font-size:13.5px;font-weight:600;color:#16463a;flex:1}.mww-seg-meta{font-size:11.5px;color:var(--muted);white-space:nowrap}.mww-seg-text p{margin:0 0 8px;font-size:13.5px;line-height:1.95;color:#16463a;text-align:justify}.mww-seg-input{width:100%;min-height:180px;resize:vertical;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:13.5px;line-height:1.95;font-family:inherit;color:#16202e;background:#fff}.mww-seg-input:focus{outline:none;border-color:var(--primary)}.mww-seg-foot{font-size:11.5px;color:var(--muted);margin-top:6px}.mww-chat{flex:1 1 0;min-width:240px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;background:#fff;overflow:hidden}.mww-chat-head{padding:8px 10px;background:#f3f7f5;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:2px}.mww-chat-head>span:first-child{font-size:12.5px;font-weight:600;color:#16463a}.mww-chat-seg{font-size:11.5px;color:#526c62;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mww-ref{border-bottom:1px solid var(--border);padding:8px 10px;background:#f3f7f5;display:flex;flex-direction:column;gap:6px}.mww-ref-head{display:flex;align-items:center;gap:6px;width:100%;padding:0;border:0;background:transparent;cursor:pointer;text-align:left;font:inherit}.mww-ref-title{font-size:12.5px;font-weight:600;color:#16463a;flex:0 0 auto}.mww-ref-hint{font-size:11.5px;color:#8496b5;flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mww-ref-arrow{flex:0 0 auto;margin-left:auto;font-size:9px;line-height:1;color:#8496b5;transition:transform .16s ease}.mww-ref-head.is-open .mww-ref-arrow{transform:rotate(180deg)}.mww-ref-head:hover .mww-ref-title,.mww-ref-head:hover .mww-ref-hint,.mww-ref-head:hover .mww-ref-arrow{color:var(--primary)}.mww-ref-tip{font-size:11.5px;line-height:1.7;color:#6b7791}.mww-ref-list{max-height:128px;overflow:auto;display:flex;flex-direction:column;gap:2px}.mww-ref-item{display:flex;align-items:center;gap:6px;padding:3px 4px;border-radius:6px;font-size:12px;cursor:pointer}.mww-ref-item:hover{background:#f3f7f5}.mww-ref-item.is-on{background:#eef7f2}.mww-ref-name{flex:1 1 auto;min-width:0;color:#16463a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mww-ref-meta{flex:0 0 auto;font-size:11px;color:var(--muted)}.mww-ref-foot{font-size:11px;line-height:1.65;color:#7a8699}.mww-chat-list{flex:1;overflow:auto;padding:10px;display:flex;flex-direction:column;gap:8px}.mww-chat-tip{font-size:12px;line-height:1.8;color:#6b7791;background:#f3f7f5;border-radius:8px;padding:8px 10px}.mww-msg{border-radius:8px;padding:8px 10px;font-size:12.5px;line-height:1.8}.mww-msg.user{background:#eaf3ed;color:#16463a}.mww-msg.assistant{background:#f3f7f5;color:#16463a}.mww-msg-body{white-space:pre-wrap;word-break:break-word}.mww-msg-actions{margin-top:6px;display:flex;gap:6px}.mww-chat-input{border-top:1px solid var(--border);padding:8px;display:flex;flex-direction:column;gap:6px}.mww-chat-input textarea{width:100%;resize:vertical;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:12.5px;font-family:inherit;line-height:1.7}.mww-chat-input textarea:focus{outline:none;border-color:var(--primary)}.mww-chat-input button{align-self:flex-end}@media (max-width: 1200px){.mw-src{width:320px;flex:0 1 320px;min-width:240px}.mw-main-left{flex:0 0 280px}}@media (max-width: 980px){.mw-body,.mww-cols{flex-direction:column}.mw-tree,.mww-tree,.mw-src,.mww-chat,.mw-main-left{width:100%;flex:none;max-height:300px}.mww-body{max-height:none}}.radio-line{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text, #1B5548);cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1.6}.radio-line input{accent-color:#1B5548;margin:0}.cl-warn{font-size:12.5px;line-height:1.7;color:#8a5a12;background:#fff7e6;border:1px solid #ffe0a3;border-radius:8px;padding:8px 12px;margin:8px 0}.cl-ok{font-size:12.5px;line-height:1.7;color:#0f6e56;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;padding:8px 12px;margin:8px 0}.cl-ok a{color:#0f6e56;text-decoration:underline}.cl-split{display:flex;gap:14px;align-items:flex-start;margin-top:10px}.cl-side{flex:0 0 200px;width:200px;background:transparent;border:none;max-height:calc(100vh - 210px);overflow:auto;padding:2px 0}.cl-side-item{display:flex;align-items:center;justify-content:space-between;gap:8px;position:relative;padding:7px 8px 7px 14px;border-radius:6px;cursor:pointer;font-size:13px;color:#4a5876;border:none;background:transparent;width:100%;text-align:left}.cl-side-item:hover{background:#f2f5fb}.cl-side-item.on{background:transparent;color:var(--primary, #1B5548);font-weight:600}.cl-side-item.on:before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:3px;border-radius:2px;background:var(--primary, #1B5548)}.cl-side-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cl-side-n{flex:0 0 auto;font-size:11.5px;color:var(--muted, #526C62);font-weight:400}.cl-side-item.on .cl-side-n{color:var(--primary, #1B5548)}.cl-retry{margin:0 4px;padding:2px 10px;border-radius:999px;font-size:12.5px;cursor:pointer;background:#fff7ed;border:1px solid #f0c491;color:#b45309}.cl-retry:hover:not(:disabled){background:#ffedd5}.cl-retry:disabled{opacity:.6;cursor:default}.cl-main{flex:1 1 auto;min-width:0}.cl-notes{border:1px solid var(--border, #D9E5DF);border-radius:10px;background:#f3f7f5;padding:10px 14px;margin-bottom:12px;font-size:13px;line-height:1.85;color:#33405a}.cl-notes summary{cursor:pointer;font-weight:600;font-size:13px}.cl-notes ol{margin:8px 0 0;padding-left:20px}.cl-notes li{margin-bottom:3px}.cl-topic{margin-bottom:16px}.cl-topic-head{font-size:13.5px;font-weight:700;color:#16463a;margin-bottom:6px;padding-left:8px;border-left:3px solid var(--primary, #1B5548)}.cl-table{font-size:12.5px}.cl-table th,.cl-table td{padding:7px 9px;vertical-align:top;line-height:1.7}.cl-table th{background:#f3f7f5;white-space:nowrap}.cl-req{white-space:normal;min-width:0}.cl-dim{color:var(--muted, #526C62)}.cl-topic-edit{border:1px dashed #d9e0ee;border-radius:9px;padding:8px 10px;margin-bottom:10px;background:#f3f7f5}.cl-topic-no,.cl-item-no{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#eaf3ed;color:#1b5548;font-size:11.5px;font-weight:700}.cl-item-edit{border-top:1px dashed #e6ebf5;padding:7px 0 3px}@media (max-width: 980px){.cl-split{flex-direction:column}.cl-side{width:100%;flex:none;max-height:240px}}.leap-rank{max-height:340px;overflow:auto;border:1px solid var(--border, #D9E5DF);border-radius:10px}.leap-rank table.list{font-size:12.5px}.leap-rank table.list th{position:sticky;top:0;background:#f3f7f5;z-index:2}.leap-row-on{background:#eaf3ed}.leap-yes{color:#0f6e56;font-size:12px}.leap-no{color:#98a2b3;font-size:12px}.leap-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;background:#eaf3ed;border:1px solid #4FA286;color:#246b59;font-size:12.5px}.leap-chip-x{border:0;background:transparent;cursor:pointer;color:#526c62;font-size:11px;padding:0 1px;line-height:1}.leap-chip-x:hover{color:#b42318}.leap-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}.leap-chip-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;border:1px solid var(--border, #D9E5DF);background:#fff;font-size:12.5px;cursor:pointer;-webkit-user-select:none;user-select:none}.leap-chip-btn:hover{border-color:#4fa286}.leap-chip-btn.on{background:#eaf3ed;border-color:#4fa286;color:#246b59;font-weight:600}.leap-chip-btn input{accent-color:#1B5548;margin:0}.leap-details{margin-top:6px;border:1px solid var(--border, #D9E5DF);border-radius:10px;padding:8px 12px;background:#f3f7f5}.leap-details summary{cursor:pointer;font-size:13px;font-weight:600}.leap-ind-list{max-height:260px;overflow:auto;display:flex;flex-direction:column;gap:5px;padding:2px}.leap-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:12px;margin:12px 0}.leap-card{border:1px solid var(--border, #D9E5DF);border-radius:12px;padding:12px 14px;background:#fff;box-shadow:0 1px 3px #183c330a}.leap-card-name{font-size:13.5px;font-weight:700;color:#16463a;margin-bottom:2px}.leap-card-score{font-size:28px;font-weight:800;line-height:1.15;font-variant-numeric:tabular-nums}.leap-card-sub{font-size:11.5px;color:var(--muted, #526C62);margin-bottom:8px}.leap-card-bars{display:flex;flex-direction:column;gap:4px}.leap-mini{display:flex;align-items:center;gap:6px}.leap-mini-k{flex:0 0 14px;font-size:11px;font-weight:700;color:var(--muted, #526C62)}.leap-mini-track{flex:1 1 auto;height:6px;background:#f3f7f5;border-radius:999px;overflow:hidden}.leap-mini-fill{display:block;height:100%;border-radius:999px}.leap-table-wrap{overflow:auto;max-height:560px;border:1px solid var(--border, #D9E5DF);border-radius:10px}.leap-table-wrap table.list{font-size:12.5px}.leap-table-wrap table.list th{position:sticky;top:0;background:#f3f7f5;z-index:2}.leap-p{margin-left:4px;font-size:11px;color:var(--muted, #526C62)}.leap-detail{display:flex;flex-direction:column;gap:16px;margin-top:10px}.leap-detail-block{border:1px solid var(--border, #D9E5DF);border-radius:10px;padding:10px 12px}.leap-detail-head{font-size:14px;font-weight:700;margin-bottom:6px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.leap-watch-meta{font-size:11.5px;color:#526c62;font-variant-numeric:tabular-nums}.leap-search{position:relative}.leap-search .input{width:100%}.leap-suggest{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:30;background:#fff;border:1px solid var(--border, #D9E5DF);border-radius:10px;box-shadow:0 8px 24px #0f23501f;overflow:hidden;max-height:264px;overflow-y:auto}.leap-suggest-item{display:flex;align-items:baseline;gap:4px;padding:8px 12px;font-size:13px;cursor:pointer;border-bottom:1px solid #F3F7F5}.leap-suggest-item:last-child{border-bottom:none}.leap-suggest-item:hover{background:#f3f7f5}.leap-suggest-item b{white-space:nowrap}.leap-suggest-item .hint{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.leap-suggest-item .leap-suggest-code{margin-left:auto;padding-left:10px;color:var(--muted, #526C62);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.leap-suggest-item .leap-suggest-ind{font-size:11.5px;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leap-suggest-none{padding:10px 12px;font-size:13px;color:var(--muted, #526C62)}.leap-mini-k{flex:0 0 24px}.leap-mini-track{position:relative}.leap-avg-line{position:absolute;top:-2px;bottom:-2px;width:2px;margin-left:-1px;background:#b26a00;border-radius:2px;opacity:.85}.leap-mini-v{flex:0 0 34px;text-align:right;font-size:11px;font-variant-numeric:tabular-nums;color:#33415a}.leap-mini-avg{flex:0 0 52px;text-align:right;font-size:10.5px;color:#b26a00;font-variant-numeric:tabular-nums}.leap-rank-badge{margin-left:auto;font-size:11px;color:#246b59;background:#eaf3ed;border:1px solid #4FA286;border-radius:999px;padding:1px 8px;white-space:nowrap}.leap-ref{display:block;font-size:10.5px;color:#98a2b3;margin-top:1px}.leap-avg-row td{background:#f3f7f5;color:#526c62;font-size:12px}.mat-picker{border:1px solid var(--border, #D9E5DF);border-radius:10px;padding:12px;background:#fff}.mat-picker-hint{font-size:12.5px;color:var(--muted, #526C62);margin-bottom:8px}.mat-picker-list{display:flex;flex-direction:column;gap:6px;max-height:260px;overflow:auto}.mat-pick-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#fff;border:1px solid var(--border, #D9E5DF);border-radius:8px;cursor:pointer;font-size:13px}.mat-pick-item:hover{border-color:var(--primary, #1B5548)}.mat-pick-item.on{background:#eaf3ed;border-color:var(--primary, #1B5548);box-shadow:inset 0 0 0 1px var(--primary, #1B5548);color:#1b3fa0;font-weight:600}.mat-pick-item input{width:auto;flex:0 0 auto;margin:0;accent-color:var(--primary, #1B5548)}.mat-pick-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabs{display:inline-flex;gap:4px;background:#f3f7f5;padding:4px;border-radius:10px}.tab{border:none;background:transparent;padding:7px 16px;border-radius:7px;cursor:pointer;font-size:13.5px;color:var(--muted, #526C62)}.tab.on{background:#fff;color:var(--primary, #1B5548);box-shadow:0 1px 2px #00000014;font-weight:600}.field-row{display:flex;gap:12px;flex-wrap:wrap}.field-row .field{flex:1;min-width:140px}.perm-editor{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.perm-cat{border:1px solid var(--border, #D9E5DF);border-radius:10px;padding:10px 12px;background:#f3f7f5}.perm-cat-title{font-weight:600;margin-bottom:8px;color:var(--text, #183C33)}.perm-items{display:flex;flex-direction:column;gap:6px}.perm-item{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}.perm-item.on{color:var(--primary, #1B5548)}.log-list{margin:0;padding-left:18px;max-height:320px;overflow:auto}.log-list li{padding:3px 0;font-size:13px}.loginlog-wrap{border:1px solid var(--border, #e5e9f0);border-radius:8px;overflow:hidden}.loginlog-head,.loginlog-list li{display:grid;grid-template-columns:190px 150px 1fr;gap:12px;align-items:center;padding:8px 12px;font-size:13px}.loginlog-head{background:var(--bg-soft, #F3F7F5);font-weight:600;color:var(--text-sub, #5a6478);border-bottom:1px solid var(--border, #e5e9f0)}.loginlog-list{margin:0;padding:0;list-style:none;max-height:380px;overflow:auto}.loginlog-list li{border-bottom:1px solid var(--border-soft, #f0f2f6)}.loginlog-list li:last-child{border-bottom:none}.loginlog-time{color:var(--text, #183C33);font-variant-numeric:tabular-nums}.loginlog-ip{color:var(--text-sub, #5a6478);font-variant-numeric:tabular-nums;word-break:break-all}.loginlog-device{color:var(--text, #183C33);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#qrImg{flex:0 0 160px;width:160px;height:160px;overflow:hidden}#qrImg svg{display:block;width:100%!important;height:100%!important}
