/* P-v2.19 平台原生模块样式（_split_platform_module.py 产物，请勿手改）
   主题：无独立主题逻辑，变量全部继承平台 app.css（html[data-theme] 驱动） */
#module-reportgen .wrap{display:flex;gap:16px;padding:16px 24px 60px;align-items:flex-start;flex-wrap:wrap;}
#module-reportgen .panel{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;}
#module-reportgen .side{width:300px;flex:none;}
#module-reportgen .main{flex:1;min-width:360px;}
#module-reportgen h2{font-size:15px;margin:0 0 10px;color:var(--brand);font-weight:500;}
#module-reportgen h3{font-size:13.5px;margin:16px 0 6px;color:var(--title);font-weight:500;
     border-left:4px solid var(--brand);padding-left:8px;}
#module-reportgen button{font-family:inherit;font-size:13px;border-radius:8px;border:1px solid var(--line);
    background:var(--surface);color:var(--ink);padding:7px 14px;cursor:pointer;}
#module-reportgen button:hover{border-color:var(--brand);color:var(--brand);}
#module-reportgen button.primary{background:var(--brand);border-color:var(--brand);color:#fff;}
#module-reportgen button.primary:hover{background:var(--brand-hi);color:#fff;}
#module-reportgen button.ghost{border-style:dashed;}
#module-reportgen .tpl{display:flex;justify-content:space-between;align-items:center;gap:8px;
    border:1px solid var(--line);border-radius:9px;padding:9px 11px;margin-bottom:8px;cursor:pointer;}
#module-reportgen .tpl:hover{border-color:var(--brand);background:var(--brand-soft);}
#module-reportgen .tpl.on{border-color:var(--brand);background:var(--brand-soft);}
#module-reportgen .tpl .nm{font-size:13.5px;font-weight:500;word-break:break-all;}
#module-reportgen .tpl .mt{font-size:11.5px;color:var(--sub);}
#module-reportgen .tpl .del{color:var(--red);font-size:12px;padding:2px 6px;}
#module-reportgen .tpl-v{display:inline-block;font-size:10.5px;line-height:1.5;padding:0 5px;border-radius:5px;
    margin-left:5px;vertical-align:1px;border:1px solid var(--line);color:var(--sub);}
#module-reportgen .tpl-v.now{border-color:rgba(52,211,153,.4);background:rgba(52,211,153,.13);color:#12a877;font-weight:600;}
#module-reportgen .tpl-v.old{border-color:rgba(244,96,79,.4);background:rgba(244,96,79,.12);color:var(--red);font-weight:600;}
#module-reportgen #tplTip{margin:0 0 8px;}
#module-reportgen .tpl-alert{border:1px solid rgba(251,191,36,.45);background:rgba(251,191,36,.11);
    border-radius:9px;padding:9px 10px;font-size:12px;line-height:1.6;color:var(--text);}
#module-reportgen .tpl-alert b{color:#b57a00;}
#module-reportgen .tpl-alert .btn-sm{display:block;width:100%;margin-top:7px;text-align:center;}
#module-reportgen .arc-row{display:flex;gap:5px;margin-bottom:5px;}
#module-reportgen .arc-row input{flex:1;min-width:0;font-size:11.5px;padding:4px 6px;font-family:inherit;
    border:1px solid var(--line);border-radius:6px;background:var(--fill);color:var(--field-ink);}
#module-reportgen .arc-row input:focus{outline:none;border-color:var(--brand);}
#module-reportgen .arc-row .btn-sm{padding:4px 8px;font-size:11.5px;white-space:nowrap;}
#module-reportgen .arc-item{border:1px solid var(--border);border-radius:8px;padding:6px 8px;margin-bottom:5px;background:var(--soft);}
#module-reportgen .arc-item .an{font-size:12px;font-weight:600;color:var(--text);word-break:break-all;line-height:1.45;}
#module-reportgen .arc-item .ano{font-size:11px;color:var(--sub);margin-top:2px;word-break:break-all;line-height:1.4;}
#module-reportgen .arc-item .at{font-size:10.5px;color:var(--muted);margin-top:3px;}
#module-reportgen .arc-ops{display:flex;gap:4px;margin-top:5px;flex-wrap:wrap;}
#module-reportgen .arc-ops button{border:1px solid var(--border);background:var(--card);color:var(--muted);
    border-radius:6px;padding:2px 6px;font-size:11px;cursor:pointer;font-family:inherit;}
#module-reportgen .arc-ops button:hover{border-color:var(--primary);color:var(--primary);}
#module-reportgen .arc-ops .del:hover{border-color:var(--red);color:var(--red);}
#module-reportgen #arcPage.wide .ap-body{max-width:1240px;}
#module-reportgen .gtab-sum{display:flex;align-items:baseline;gap:12px;margin:2px 2px 10px;}
#module-reportgen .gtab-sum b{font-size:15px;color:var(--text);}
#module-reportgen .gtab-sum span{font-size:12.5px;color:var(--muted);}
#module-reportgen .gtab-wrap{background:var(--card);border:1px solid var(--border);border-radius:12px;
    overflow:hidden;box-shadow:0 1px 4px rgba(15,23,42,.07);}
#module-reportgen .gtab{width:100%;border-collapse:collapse;font-size:13px;background:var(--card);}
#module-reportgen .gtab th{text-align:left;font-weight:600;color:var(--sub);padding:11px 16px;
    border-bottom:2px solid var(--border);white-space:nowrap;font-size:12.5px;
    background:var(--soft);letter-spacing:.5px;}
#module-reportgen .gtab td{padding:13px 16px;border-bottom:1px solid var(--border);vertical-align:middle;}
#module-reportgen .gtab tbody tr:last-child td{border-bottom:none;}
#module-reportgen .gtab .gt-ts,#module-reportgen .gtab .gt-date{white-space:nowrap;color:var(--muted);font-size:12.5px;}
#module-reportgen .gtab .gt-no{white-space:nowrap;color:var(--primary);font-weight:600;font-size:12.5px;}
#module-reportgen .gtab .gt-name{word-break:break-all;line-height:1.65;min-width:320px;
    font-weight:600;font-size:13.5px;color:var(--text);}
#module-reportgen .gtab .gt-ops{white-space:nowrap;}
#module-reportgen .gtab .gt-ops .arc-ops{margin-top:0;gap:6px;}
#module-reportgen .gt-ops button{border-radius:999px !important;padding:5px 14px !important;
    font-size:12.5px !important;white-space:nowrap;}
#module-reportgen .gtab tbody tr:hover{background:var(--soft);}
#module-reportgen .gtab tbody tr{transition:background .12s;}
#module-reportgen .arc-mask{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:99;
    display:flex;align-items:center;justify-content:center;padding:24px;}
#module-reportgen .arc-dlg{background:var(--card-solid);border:1px solid var(--border);border-radius:12px;
    width:100%;max-width:920px;max-height:82vh;display:flex;flex-direction:column;
    box-shadow:0 12px 40px rgba(0,0,0,.35);}
#module-reportgen .arc-dlg .hd{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border-soft);}
#module-reportgen .arc-dlg .hd b{font-size:14px;color:var(--text);flex:1;min-width:0;word-break:break-all;}
#module-reportgen .arc-dlg .bd{padding:12px 16px;overflow:auto;}
#module-reportgen .tbl-det{width:100%;border-collapse:collapse;font-size:12px;}
#module-reportgen .tbl-det th,#module-reportgen .tbl-det td{border:1px solid var(--border);padding:4px 7px;text-align:left;
    vertical-align:top;color:var(--text);}
#module-reportgen .tbl-det th{background:var(--soft);color:var(--sub);font-weight:600;white-space:nowrap;}
#module-reportgen .tbl-det td.v{word-break:break-all;white-space:pre-wrap;}
#module-reportgen .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(262px,1fr));gap:8px 14px;}
#module-reportgen .grid .gsep{grid-column:1/-1;display:flex;align-items:center;gap:8px;margin:8px 0 0;
    font-size:12.5px;font-weight:500;color:var(--sub);}
#module-reportgen .grid .gsep::after{content:"";flex:1;height:1px;background:var(--line);}
#module-reportgen .fld label{display:block;font-size:12.5px;color:var(--lbl);margin-bottom:3px;}
#module-reportgen .fld .req{color:var(--red);}
#module-reportgen .fld input,#module-reportgen .fld textarea{width:100%;font-family:inherit;font-size:13px;padding:6px 9px;
    border:1px solid var(--line);border-radius:7px;background:var(--fill);color:var(--field-ink);}
#module-reportgen .fld textarea{min-height:56px;resize:vertical;}
#module-reportgen .fld input:focus,#module-reportgen .fld textarea:focus{outline:none;border-color:var(--brand);background:var(--surface);}
#module-reportgen .fld .hint{font-size:11.5px;color:var(--sub);margin-top:2px;}
#module-reportgen .bar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:16px;
    padding-top:14px;border-top:1px solid var(--line);}
#module-reportgen .note{border-radius:9px;padding:10px 13px;font-size:12.5px;margin:10px 0;}
#module-reportgen .note.warn{background:var(--warn-soft);border:1px solid var(--warn-br);color:var(--warn-tx);}
#module-reportgen .note.ok{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--ok-solid);color:var(--ink);}
#module-reportgen .empty{color:var(--sub);font-size:13px;padding:24px 6px;text-align:center;}
#module-reportgen .mini{font-size:12px;padding:3px 9px;}
#module-reportgen .stat{font-size:12.5px;color:var(--sub);}
#module-reportgen .fld select{width:100%;font-family:inherit;font-size:13px;padding:6px 9px;
    border:1px solid var(--line);border-radius:7px;background:var(--fill);color:var(--field-ink);}
#module-reportgen .fld select:focus{outline:none;border-color:var(--brand);background:var(--surface);}
#module-reportgen .fld.wide{grid-column:1/-1;}
#module-reportgen .fld.narrow input,#module-reportgen .fld.narrow select{max-width:132px;}
#module-reportgen .fld .row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
#module-reportgen .fld .row select{width:auto;min-width:74px;}
#module-reportgen .fld .cks{display:flex;gap:8px 10px;flex-wrap:wrap;padding:3px 0;}
#module-reportgen .fld .cks label{display:inline-flex;gap:5px;align-items:center;cursor:pointer;margin-bottom:0;
    font-size:13px;color:var(--field-ink);font-weight:400;}
#module-reportgen .fld .cks label.catChip{border:1px solid var(--line);border-radius:999px;padding:5px 14px;
    background:var(--surface);position:relative;}
#module-reportgen .fld .cks label.catChip.on{background:var(--ok-solid);border-color:var(--ok-solid);color:#fff;font-weight:500;}
#module-reportgen .fld .cks label.catChip.on::before{content:"\2713 ";font-weight:600;}
#module-reportgen .fld .cks label.catChip input.catCk{position:absolute;width:1px;height:1px;opacity:0;margin:0;padding:0;}
#module-reportgen .fld .auto.catPicked{background:var(--ok-soft);border-radius:8px;padding:6px 10px;margin-top:8px;}
#module-reportgen .fld .auto{font-size:11.5px;color:var(--sub);margin-top:3px;line-height:1.5;}
#module-reportgen .fld input[readonly],#module-reportgen .fld textarea[readonly]{background:var(--ro);color:var(--lbl);}
#module-reportgen .fld .catFlRow{display:flex;gap:16px;flex-wrap:wrap;margin-top:8px;padding-top:8px;border-top:1px dashed var(--line);}
#module-reportgen .fld .catFl{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;color:var(--sub);flex:1 1 260px;}
#module-reportgen .fld .catFl i{font-style:normal;white-space:nowrap;}
#module-reportgen .fld .catFl input{width:auto;flex:1;min-width:110px;}
#module-reportgen .fld.costOnly{display:none;}
#module-reportgen .echo{background:var(--ro) !important;color:var(--lbl) !important;}
#module-reportgen .tag{font-size:11px;font-weight:400;color:var(--brand);background:var(--brand-soft);
    border:1px solid var(--brand-br);border-radius:4px;padding:0 5px;margin-left:6px;white-space:nowrap;}
#module-reportgen .ctl{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:8px;}
#module-reportgen .ctl.last,#module-reportgen .ctl:last-child{margin-bottom:0;}
#module-reportgen .sub{color:var(--sub);}
#module-reportgen .must{color:var(--must);}
#module-reportgen details.det{margin-top:8px;}
#module-reportgen details.det>summary{display:inline-flex;align-items:center;gap:5px;cursor:pointer;list-style:none;
    font-size:12px;color:var(--brand);border:1px solid var(--line);border-radius:6px;
    padding:2px 9px;background:var(--surface);}
#module-reportgen details.det>summary:hover{border-color:var(--brand);background:var(--brand-soft);}
#module-reportgen details.det>summary::-webkit-details-marker{display:none;}
#module-reportgen details.det>summary::before{content:"▸";font-size:10px;line-height:1;}
#module-reportgen details.det[open]>summary::before{content:"▾";}
#module-reportgen details.det>.dbody{margin-top:7px;padding:9px 11px;background:var(--soft);border:1px solid var(--line);
    border-radius:8px;font-size:12.5px;color:var(--sub);line-height:1.75;}
#module-reportgen details.res{margin-top:8px;}
#module-reportgen details.res>summary{display:inline-flex;align-items:center;gap:5px;cursor:pointer;list-style:none;
    font-size:12px;color:var(--lbl);border:1px solid var(--line);border-radius:6px;
    padding:3px 10px;background:var(--soft);}
#module-reportgen details.res>summary:hover{border-color:var(--brand);color:var(--brand);}
#module-reportgen details.res>summary::-webkit-details-marker{display:none;}
#module-reportgen details.res>summary::before{content:"▸";font-size:10px;line-height:1;color:var(--sub);}
#module-reportgen details.res[open]>summary::before{content:"▾";}
#module-reportgen details.res>.rbody{margin-top:7px;}
#module-reportgen .ch6chip{display:inline-flex;gap:5px;align-items:center;margin:3px 6px 0 0;padding:2px 3px 2px 8px;
    border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:12px;max-width:100%;}
#module-reportgen .ch6chip .g{color:var(--sub);font-size:11px;white-space:nowrap;}
#module-reportgen .ch6chip button{border:none;background:transparent;cursor:pointer;color:var(--muted);
    font-size:12px;line-height:1;padding:0 4px;}
#module-reportgen .ch6chip button:hover{color:var(--red);}
#module-reportgen .ch6edit{background:#fffdf6 !important;border-color:#e3c98a !important;}
#module-reportgen .vRow{border:1px solid var(--line);border-radius:8px;margin:5px 0;background:var(--surface);overflow:hidden;}
#module-reportgen .vHead{display:flex;align-items:center;gap:7px;padding:6px 10px;user-select:none;cursor:pointer;}
#module-reportgen .vRow .vHead:hover{background:var(--soft);}
#module-reportgen .vUse{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;cursor:pointer;
    font-size:12px;color:var(--sub);white-space:nowrap;}
#module-reportgen .vUse input{margin:0;cursor:pointer;}
#module-reportgen .vUse:has(input:checked){color:var(--brand);}
#module-reportgen .vHead .sub{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#module-reportgen .vHead .cnt{flex:0 0 auto;}
#module-reportgen .vBody{padding:0 10px 9px 22px;border-top:1px dashed var(--line);}
#module-reportgen .vBody .chips{margin-top:6px;display:flex;flex-wrap:wrap;gap:4px;align-items:center;
    max-height:96px;overflow:auto;}
#module-reportgen .vBody .chips button{text-align:left;}
#module-reportgen details.det>.dbody ul{margin:4px 0 0;padding-left:18px;}
#module-reportgen details.det>.dbody li{margin:2px 0;}
#module-reportgen details.det>.dbody b{color:var(--lbl);font-weight:500;}
#module-reportgen .grp{border:1px solid var(--line);border-left:4px solid var(--ok-solid);border-radius:10px;padding:12px 14px 14px;margin:12px 0;background:var(--surface);}
#module-reportgen .grp .grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));}
#module-reportgen .grp.party .grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px 12px;}
#module-reportgen .grp.party .fld{grid-column:span 1;}
#module-reportgen .grp.party .fld.w2{grid-column:span 2;}
#module-reportgen .grp.party .fld.wide{grid-column:1/-1;}
#module-reportgen .grp.party details.more{grid-column:1/-1;margin-top:6px;}
#module-reportgen .grp.party details.more>summary{cursor:pointer;font-size:12.5px;color:var(--pri);
    padding:5px 0;user-select:none;}
#module-reportgen .grp.party details.more>.grid{margin-top:6px;}
@media (max-width:980px){#module-reportgen .grp.party .grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));}}
#module-reportgen .grpT{display:flex;align-items:baseline;gap:8px;margin:0 0 10px;font-size:13.5px;font-weight:500;
    color:var(--title);}
#module-reportgen .grpT .cnt{font-size:11.5px;color:var(--sub);font-weight:400;}
#module-reportgen .tocSec{position:relative;}
#module-reportgen .secNo{position:absolute;top:-9px;left:-8px;width:23px;height:23px;border-radius:50%;z-index:2;
    background:var(--ok-solid);color:#fff;font-size:11.5px;font-weight:600;
    display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--bg);}
#module-reportgen .tocIt{font-size:12px;color:var(--text);padding:5px 8px;border-radius:7px;cursor:pointer;
    border-left:3px solid transparent;line-height:1.45;word-break:break-all;}
#sidebar .tocIt{font-size:12px;color:var(--text);padding:5px 8px;border-radius:7px;cursor:pointer;
    border-left:3px solid transparent;line-height:1.45;word-break:break-all;}
#module-reportgen .tocIt:hover{background:var(--soft);}
#sidebar .tocIt:hover{background:var(--soft);}
#module-reportgen .tocIt.on{background:var(--ok-soft);border-left-color:var(--ok-solid);font-weight:600;}
#sidebar .tocIt.on{background:var(--ok-soft);border-left-color:var(--ok-solid);font-weight:600;}
/* P-v2.19：生成器专属变量（平台已有变量直接继承 :root） */
#module-reportgen{--paper:#fff;--paper-ink:#1f2328;--ink:var(--text);--sub:var(--muted);--line:var(--border);--brand:var(--primary);--brand-soft:var(--accent-soft);--brand-br:var(--accent-border);--brand-hi:#6ea0ff;--ok:var(--green);--warn:var(--orange);--warn-soft:rgba(251,191,36,.12);--ok-soft:rgba(52,211,153,.12);--fill:var(--input-bg);--surface:var(--card-solid);--soft:rgba(148,163,184,.07);--grp:rgba(148,163,184,.05);--title:var(--text);--lbl:#cbd5e1;--field-ink:var(--text);--ro:rgba(148,163,184,.12);--must:var(--orange);--warn-tx:#fcd34d;--ok-tx:#6ee7b7;--warn-br:rgba(251,191,36,.35);--ok-br:rgba(52,211,153,.35);--ok-solid:#12a877;}
html[data-theme="light"] #module-reportgen{--lbl:#41505f;--field-ink:#1f4e79;--ro:#f2f5f9;--must:#8a6312;--warn-tx:#6b4a00;--ok-tx:#175f3c;--warn-soft:#fff5e0;--ok-soft:#e9f7ef;--warn-br:#f0d9a8;--ok-br:#bfe3d0;--ok-solid:#12a877;--soft:#f7f9fc;--grp:#fcfdff;}
#module-reportgen .btn-add{background:var(--grad);color:#06121f;padding:9px 17px;font-weight:700;
    border:none;border-radius:10px;display:inline-flex;align-items:center;gap:6px;
    white-space:nowrap;cursor:pointer;font-size:13.5px;font-family:inherit;
    box-shadow:0 6px 20px rgba(79,140,255,.35);}
#module-reportgen .btn-add:hover{filter:brightness(1.1);transform:translateY(-1px);}
#module-reportgen .btn-sm{border:1px solid var(--border);background:var(--card);color:var(--muted);
    border-radius:9px;padding:7px 12px;font-size:12.5px;cursor:pointer;font-family:inherit;}
#module-reportgen .btn-sm:hover{border-color:var(--primary);color:var(--primary);}
#module-reportgen .app-shell{display:flex;align-items:flex-start;}
#module-reportgen .sidebar{width:200px;flex-shrink:0;background:var(--card-solid);
    border-right:1px solid var(--border);padding:10px 0;position:sticky;top:56px;
    height:calc(100vh - 56px);overflow-y:auto;}
#module-reportgen .sidebar-label{padding:14px 16px 8px;font-size:12px;color:var(--muted);
    letter-spacing:.05em;font-weight:600;}
#module-reportgen .sb-pad{padding:0 14px 8px;}
#module-reportgen #arcPage{position:fixed;inset:0;z-index:60;background:var(--bg);overflow-y:auto;}
#module-reportgen .ap-top{display:flex;align-items:center;gap:12px;padding:12px 20px;
    border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg);z-index:1;}
#module-reportgen .ap-top b{font-size:15px;color:var(--text);}
#module-reportgen .ap-body{max-width:860px;margin:0 auto;padding:16px 20px 60px;}
#module-reportgen #genPv{position:fixed;inset:0;z-index:70;background:var(--bg);overflow-y:auto;}
#module-reportgen #genPv .pv-paper{max-width:860px;margin:0 auto 60px;background:var(--paper,#fff);color:var(--paper-ink,#1f2328);
    border:1px solid var(--border);border-radius:8px;padding:46px 56px;box-shadow:0 2px 14px rgba(0,0,0,.08);}
#module-reportgen #genPv .pv-line{min-height:1.5em;line-height:1.9;font-size:14px;white-space:pre-wrap;word-break:break-all;}
#module-reportgen .ap-note{font-size:12.5px;color:var(--muted);background:var(--soft);
    border:1px solid var(--border-soft);border-radius:9px;padding:8px 10px;margin-bottom:10px;}
#module-reportgen .sb-note{margin:2px 14px 10px;font-size:11.5px;color:var(--muted);line-height:1.7;
    background:var(--soft);border:1px solid var(--border-soft);border-radius:9px;padding:8px 10px;}
#module-reportgen .content-area{flex:1;min-width:0;padding:14px 18px;}
#module-reportgen .page{background:var(--card);border:1px solid var(--border-soft);
    border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow);}
#module-reportgen .sidebar .tpl{flex-direction:column;align-items:stretch;gap:3px;margin:0 0 6px;
    padding:8px 10px;border-radius:10px;background:var(--card);}
#module-reportgen .sidebar .tpl .del{align-self:flex-end;margin-top:2px;}
#module-reportgen .sidebar .empty{padding:12px 4px;font-size:12px;}
@media (max-width:768px){#module-reportgen .sidebar{display:none;}
#module-reportgen .app-shell{display:block;}
#module-reportgen .content-area{padding:10px 12px;}
#module-reportgen .steps{display:none;}}
#module-reportgen .paper-pane{width:420px;flex-shrink:0;position:sticky;top:56px;height:calc(100vh - 56px);
    display:flex;flex-direction:column;padding:14px 0 14px 4px;transition:width .18s ease;}
#module-reportgen .pp-head{display:flex;align-items:center;justify-content:space-between;gap:8px;
    padding:0 6px 8px;font-size:12px;color:var(--muted);font-weight:600;letter-spacing:.05em;}
#module-reportgen .pp-ops{display:flex;gap:6px;}
#module-reportgen .paper-scroll{flex:1;overflow-y:auto;padding:2px 6px 8px;}
#module-reportgen .paper{background:var(--paper);color:var(--paper-ink);border-radius:6px;
    box-shadow:0 6px 22px rgba(0,0,0,.28);padding:34px 30px;font-size:12px;line-height:1.85;
    min-height:520px;font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;}
#module-reportgen .pp-line{margin:0 0 2px;}
#module-reportgen .pp-ind{text-indent:2em;}
#module-reportgen .pp-c{text-align:center;}
#module-reportgen .pp-b{font-weight:700;}
#module-reportgen .pp-h1{font-size:13.5px;font-weight:700;margin:10px 0 6px;}
#module-reportgen .pp-h2{font-weight:700;margin:9px 0 5px;}
#module-reportgen .pp-blank{height:7px;}
#module-reportgen .pp-empty{color:var(--muted);font-size:12px;padding:26px 4px;text-align:center;}
#module-reportgen #paper .pv-f{border-radius:3px;transition:background .15s,box-shadow .15s;}
#module-reportgen #paper .pv-f.pv-hl{background:#ffe680;box-shadow:0 0 0 2px #ffd83d;}
#module-reportgen .pv-bar-wrap{margin:2px 0 8px;}
#module-reportgen .pv-bar{border:1px solid var(--primary);border-radius:9px;padding:9px 11px;
    background:var(--accent-soft,#eef4ff);font-size:12.5px;}
#module-reportgen .pv-bar-t{font-weight:600;font-size:12.5px;margin-bottom:6px;color:var(--text);}
#module-reportgen .pv-bar-t .sub{font-weight:400;color:var(--muted);}
#module-reportgen .pv-bar-row{display:flex;gap:7px;align-items:flex-start;margin-bottom:6px;flex-wrap:wrap;}
#module-reportgen .pv-bar-row label{flex:0 0 88px;color:var(--muted);padding-top:4px;font-size:12px;}
#module-reportgen .pv-bar-row input,#module-reportgen .pv-bar-row textarea{flex:1 1 280px;min-width:180px;font-family:inherit;
    font-size:13px;padding:5px 8px;border:1px solid var(--line);border-radius:6px;
    background:var(--fill,#fff);color:var(--field-ink,#1f2328);}
#module-reportgen .pv-bar-row textarea{resize:vertical;line-height:1.7;}
#module-reportgen .pv-bar-row .sub{flex:0 0 100%;color:var(--muted);font-size:11.5px;}
#module-reportgen .pv-bar-ops{display:flex;gap:7px;margin-top:3px;}
#module-reportgen .pv-bar-ops .mini{border:1px solid var(--border);background:var(--card);color:var(--muted);
    border-radius:6px;padding:4px 12px;font-size:12px;cursor:pointer;font-family:inherit;}
#module-reportgen .pv-bar-ops .mini.ok{border-color:var(--green);color:var(--green);font-weight:600;}
#module-reportgen .pv-bar-ops .mini:hover{border-color:var(--primary);color:var(--primary);}
#module-reportgen #paper .pp-line.pv-hl-line{background:rgba(255,214,61,.18);border-radius:4px;}
#module-reportgen #paper .pp-line.pv-sec-in{background:rgba(79,140,255,.07);}
#module-reportgen #paper .pp-line.pv-sec-hd{box-shadow:inset 3px 0 0 var(--primary);}
#module-reportgen #paper[contenteditable="true"]{outline:2px solid var(--brand);outline-offset:3px;cursor:text;}
#module-reportgen #paper[contenteditable="true"] .pp-line:hover{background:rgba(79,140,255,.06);}
#module-reportgen #paper .pp-line.pv-changed{box-shadow:inset 3px 0 0 var(--orange);}
#module-reportgen #ppEdit.on{background:var(--brand);color:#fff;border-color:var(--brand);}
#module-reportgen .pp-tip b{color:var(--orange);}
#module-reportgen .pp-tip{padding:6px 8px 0;font-size:11px;color:var(--muted);}
#module-reportgen .paper-pane.wide{width:min(900px,74vw);}
#module-reportgen .paper-pane.folded{width:46px;}
#module-reportgen .paper-pane.folded .paper-scroll,#module-reportgen .paper-pane.folded .pp-tip,#module-reportgen .paper-pane.folded .pp-head>span:first-child{display:none;}
#module-reportgen .paper-pane.folded .pp-ops{flex-direction:column;}
@media (max-width:1200px){#module-reportgen .paper-pane{display:none;}}
#module-reportgen #gzPage{position:fixed;inset:0;z-index:60;background:var(--bg);overflow-y:auto;}
#module-reportgen #gzPage .ap-body{max-width:1080px;}
#module-reportgen .ap-top .ap-sub{font-size:12px;color:var(--muted);}
#module-reportgen #gzCard{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);
    box-shadow:var(--shadow);overflow:hidden;padding:16px 18px 18px;}
#module-reportgen .gz-sec{background:var(--soft);border:1px solid var(--border-soft);border-radius:11px;
    padding:13px 15px;margin-bottom:12px;}
#module-reportgen .gz-sec h4{font-size:13.5px;color:var(--primary);margin:0 0 8px;font-weight:600;}
#module-reportgen .gz-sec .tip{font-size:11.5px;color:var(--muted);margin:4px 0 0;line-height:1.7;}
#module-reportgen .gz-quote{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:13px;
    border-bottom:1px dashed var(--border-soft);}
#module-reportgen .gz-quote:last-child{border-bottom:none;}
#module-reportgen .gz-quote label{width:76px;flex:none;color:var(--muted);font-size:12.5px;}
#module-reportgen .gz-quote input{flex:1;padding:4px 8px;font-size:13px;border:1px solid var(--border);
    border-radius:7px;background:var(--bg);color:var(--text);}
#module-reportgen .gz-quote .diff{color:var(--orange);font-size:11px;flex:none;}
#module-reportgen .gz-group{margin:2px 0 12px;}
#module-reportgen .gz-group:last-child{margin-bottom:2px;}
#module-reportgen .gz-group .gt{display:flex;align-items:center;gap:8px;margin-bottom:7px;}
#module-reportgen .gz-group .gt b{font-size:12.5px;color:var(--text);font-weight:600;}
#module-reportgen .gz-group .gt .ln{flex:1;height:1px;background:var(--border-soft);}
#module-reportgen .gz-group .gt .cnt{font-size:11px;color:var(--ok-solid);}
#module-reportgen .gz-pills{display:flex;flex-wrap:wrap;gap:8px;}
#module-reportgen .gzPill{border:1px solid var(--line);border-radius:999px;padding:5px 14px;background:var(--surface);
    position:relative;font-size:12.5px;color:var(--text);cursor:pointer;display:inline-flex;
    align-items:center;gap:6px;transition:border-color .15s,background .15s,color .15s;user-select:none;}
#module-reportgen .gzPill:hover{border-color:var(--ok-solid);}
#module-reportgen .gzPill.on{background:var(--ok-solid);border-color:var(--ok-solid);color:#fff;font-weight:500;}
#module-reportgen .gzPill.on::before{content:"\2713 ";font-weight:600;}
#module-reportgen .gzPill input{position:absolute;width:1px;height:1px;opacity:0;margin:0;padding:0;}
#module-reportgen .gzPill .rec{font-style:normal;font-size:10.5px;padding:0 5px;border-radius:6px;line-height:1.6;
    background:var(--ok-soft);color:var(--ok-solid);border:1px solid var(--ok-solid);}
#module-reportgen .gzPill.on .rec{background:rgba(255,255,255,.22);color:#fff;border-color:rgba(255,255,255,.55);}
#module-reportgen .gz-ops{display:flex;gap:10px;align-items:center;padding:0 0 4px;flex-wrap:wrap;}
#module-reportgen .gz-ops .stat{flex:1;min-width:180px;font-size:12px;color:var(--muted);text-align:right;}
#module-reportgen .gz-drop{border:2px dashed var(--border);border-radius:10px;padding:18px 12px;text-align:center;
    cursor:pointer;color:var(--muted);background:var(--bg);transition:border-color .15s,color .15s;}
#module-reportgen .gz-drop:hover,#module-reportgen .gz-drop.on{border-color:var(--primary);color:var(--primary);}
#module-reportgen .gz-drop .t1{font-size:13px;font-weight:600;margin-bottom:4px;color:var(--text);}
#module-reportgen .gz-drop .t2{font-size:11.5px;line-height:1.7;}
#module-reportgen .gz-drop .fn{font-size:12.5px;font-weight:700;color:var(--ok-solid);word-break:break-all;}
#module-reportgen .gz-warn{background:#fff7e6;border:1px solid #f3d9a4;color:#8a6312;font-size:12px;
    border-radius:8px;padding:8px 10px;margin-bottom:10px;display:none;line-height:1.7;}
#module-reportgen .gzHistIt{display:flex;align-items:center;justify-content:space-between;gap:6px}
#module-reportgen .gzHistIt a{color:inherit;text-decoration:none;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#module-reportgen .gzHistIt a:hover{text-decoration:underline}
#module-reportgen .gzHistEmpty{cursor:default;opacity:.6}
#module-reportgen .gzHistDel{font-style:normal;opacity:.4;cursor:pointer;font-size:11px;flex:none;padding:0 2px}
#module-reportgen .gzHistDel:hover{opacity:1;color:#d97706}
#module-reportgen .gz-mask{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:99;display:flex;align-items:center;justify-content:center;padding:20px;}
#module-reportgen .gz-dlg{background:var(--card-solid);border:1px solid var(--border);border-radius:12px;
    width:min(560px,96vw);max-height:86vh;display:flex;flex-direction:column;overflow:hidden;}
#module-reportgen .gz-dlg .hd{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border-soft);}
#module-reportgen .gz-dlg .hd b{font-size:14px;color:var(--text);flex:1;}
#module-reportgen .gz-dlg .bd{padding:6px 16px;overflow:auto;}
#module-reportgen .gz-dlg .ft{padding:12px 16px;border-top:1px solid var(--border-soft);display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
#module-reportgen .gz-dlg .ft .note{font-size:12px;color:var(--muted);flex:1;min-width:160px;}
#module-reportgen .gzResIt{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed var(--border-soft);}
#module-reportgen .gzResIt:last-child{border-bottom:none;}
#module-reportgen .gzResIt .nm{flex:1;min-width:0;font-size:13px;color:var(--text);word-break:break-all;}
#module-reportgen .gzResIt .sz{font-size:11.5px;color:var(--muted);flex:none;}
#module-reportgen .gzListTbl{width:100%;border-collapse:collapse;font-size:13px;}
#module-reportgen .gzListTbl th{text-align:left;padding:8px 10px;color:var(--sub);font-weight:600;border-bottom:1px solid var(--border);white-space:nowrap;}
#module-reportgen .gzListTbl td{padding:8px 10px;border-bottom:1px solid var(--border-soft);color:var(--text);}
#module-reportgen .gzListTbl td.c{text-align:center;}
#module-reportgen .gzListTbl td.t{white-space:nowrap;color:var(--sub);}
#module-reportgen .gzListTbl td.op{white-space:nowrap;}
#module-reportgen .gzListTbl td.op a{color:#2f6fed;text-decoration:none;margin-right:10px;}
#module-reportgen .gzListTbl td.op a:hover{text-decoration:underline;}
#module-reportgen .gzListEmpty{text-align:center;color:var(--muted);padding:24px 10px !important;}
#module-reportgen .rgp-wrap{max-width:1180px;margin:0 auto;padding:2px 4px 40px;}
#module-reportgen .rgp-head{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:14px;}
#module-reportgen .rgp-head .rgp-sub{font-size:12.5px;color:var(--muted);line-height:1.7;max-width:760px;}
#module-reportgen .rgp-chips{margin-left:auto;display:flex;gap:8px;align-items:center;}
#module-reportgen .rgp-chip{font-size:12px;color:var(--sub);background:var(--soft);
    border:1px solid var(--border-soft);border-radius:999px;padding:4px 12px;white-space:nowrap;}
#module-reportgen .rgp-chip b{color:var(--text);font-weight:600;}
#module-reportgen .rgp-card{background:var(--card-solid);border:1px solid var(--border);border-radius:14px;
    box-shadow:0 1px 2px rgba(15,23,42,.04);overflow:hidden;margin-bottom:14px;}
#module-reportgen .rgp-card-hd{display:flex;align-items:center;gap:10px;padding:11px 18px;
    border-bottom:1px solid var(--border-soft);background:var(--soft);}
#module-reportgen .rgp-card-hd b{font-size:13.5px;color:var(--text);font-weight:600;}
#module-reportgen .rgp-card-hd .hd-note{margin-left:auto;font-size:12px;color:var(--muted);}
#module-reportgen .rgp-card-bd{padding:14px 18px 16px;}
#module-reportgen .rgp-tbl{width:100%;border-collapse:collapse;font-size:13px;}
#module-reportgen .rgp-tbl th{text-align:left;font-weight:600;font-size:12px;color:var(--sub);
    padding:10px 16px;background:var(--soft);border-bottom:1px solid var(--border);
    white-space:nowrap;letter-spacing:.02em;}
#module-reportgen .rgp-tbl td{padding:12px 16px;border-bottom:1px solid var(--border-soft);
    color:var(--text);vertical-align:middle;line-height:1.6;}
#module-reportgen .rgp-tbl tbody tr:last-child td{border-bottom:none;}
#module-reportgen .rgp-tbl tbody tr{transition:background .12s;}
#module-reportgen .rgp-tbl tbody tr:hover{background:var(--soft);}
#module-reportgen .rgp-tbl td.c{text-align:center;}
#module-reportgen .rgp-tbl td.t{white-space:nowrap;color:var(--sub);font-size:12.5px;}
#module-reportgen .rgp-tbl .r-name{word-break:break-all;min-width:220px;}
#module-reportgen .rgp-tbl .r-sub{color:var(--sub);font-size:12.5px;word-break:break-all;}
#module-reportgen .rgp-tbl .r-no{color:var(--primary);font-weight:600;font-size:12.5px;white-space:nowrap;}
#module-reportgen .rgp-tbl td.op{white-space:nowrap;}
#module-reportgen .rgp-empty{padding:46px 16px;text-align:center;color:var(--muted);}
#module-reportgen .rgp-empty .e-ic{display:block;font-size:28px;opacity:.5;margin-bottom:8px;}
#module-reportgen .rgp-empty .e-t{font-size:13.5px;color:var(--text);margin-bottom:4px;font-weight:500;}
#module-reportgen .rgp-empty .e-s{font-size:12.5px;}
#module-reportgen .rgp-ops{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
#module-reportgen .rgp-tbl .arc-ops{display:flex;gap:6px;flex-wrap:wrap;margin:0;justify-content:flex-end;}
#module-reportgen .rgp-ops button:not(.primary),#module-reportgen .rgp-tbl .arc-ops button{border:1px solid var(--border);background:var(--card-solid);
    color:var(--sub);border-radius:999px;padding:5px 12px;font-size:12px;cursor:pointer;
    transition:all .15s;font-family:inherit;line-height:1.5;}
#module-reportgen .rgp-ops button:not(.primary):hover,#module-reportgen .rgp-tbl .arc-ops button:hover{border-color:var(--primary);color:var(--primary);
    background:var(--accent-soft);}
#module-reportgen .rgp-tbl .arc-ops button.del:hover{border-color:var(--red);color:var(--red);
    background:rgba(244,96,79,.08);}
#module-reportgen .rgp-form{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px;}
#module-reportgen .rgp-fd{flex:1;min-width:230px;display:block;}
#module-reportgen .rgp-fd>span{display:block;font-size:12px;color:var(--sub);margin-bottom:5px;}
#module-reportgen .rgp-fd input{width:100%;font-size:13px;padding:8px 11px;font-family:inherit;
    background:var(--input-bg);color:var(--text);border:1px solid var(--border);border-radius:9px;}
#module-reportgen .rgp-fd input:focus{outline:none;border-color:var(--primary);
    box-shadow:0 0 0 3px var(--accent-soft);}
#module-reportgen .rgp-link{color:var(--primary);text-decoration:none;font-size:12.5px;margin-right:12px;}
#module-reportgen .rgp-link:hover{text-decoration:underline;}
#module-reportgen .rgp-del{color:var(--sub);font-size:12.5px;font-style:normal;cursor:pointer;margin-left:2px;}
#module-reportgen .rgp-del:hover{color:var(--red);}
#module-reportgen .grp.party .partyCards{display:flex;flex-direction:column;gap:10px;}
#module-reportgen .grp.party .partyCard{border:1px solid var(--line);border-radius:9px;
    background:var(--surface);overflow:hidden;}
#module-reportgen .grp.party .partyHead{display:flex;align-items:center;gap:8px;flex-wrap:wrap;
    padding:7px 12px;background:var(--soft);border-bottom:1px solid var(--line);}
#module-reportgen .grp.party .phName{font-size:13px;font-weight:500;color:var(--title);}
#module-reportgen .grp.party .phKind{font-size:11.5px;color:var(--sub);background:var(--surface);
    border:1px solid var(--border-soft);border-radius:999px;padding:2px 9px;white-space:nowrap;}
#module-reportgen .grp.party .phSel{margin-left:auto;display:inline-flex;align-items:center;gap:5px;
    font-size:11.5px;color:var(--muted);white-space:nowrap;}
#module-reportgen .grp.party .phSel select{width:auto;min-width:96px;max-width:150px;flex:0 0 auto;
    font-family:inherit;font-size:11.5px;padding:2px 5px;
    border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);}
#module-reportgen .grp.party .pgrid{display:grid;padding:10px 12px 12px;
    grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px 12px;}
#module-reportgen .grp.party .pgrid .fld{grid-column:span 1;}
#module-reportgen .grp.party .pgrid .fld.w2{grid-column:span 2;}
#module-reportgen .grp.party .pgrid .fld.wide{grid-column:1/-1;}
@media (max-width:980px){#module-reportgen .grp.party .pgrid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));}}

/* P-v2.19：报告模板子页工具条（原 topbar 导入入口迁入） */
#module-reportgen .rgTplWrap{max-width:860px;margin:0 auto;padding:16px 24px 60px;}
#module-reportgen .rgTplBar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;}
#module-reportgen .rgTplBar>b{font-size:15px;color:var(--text);}
/* P-v2.19：预览栏 sticky 偏移——生成器 56px 自家顶栏已删，改贴平台头部 */
#module-reportgen .paper-pane{top:0;height:calc(100vh - 118px);}
/* P-v2.20：参数存档/生成明细改文档流子页（哥哥第③④条：不要全屏覆盖层，直接在内容区显示）。
   原规则 #arcPage{position:fixed;inset:0;z-index:60;...} 在本文件前段，此处同特异性后写覆盖；
   显隐仍由生成器 arcPageShow/Hide 管 display，三容器互斥由平台 switchRgTab 负责。 */
#module-reportgen #arcPage{position:static;inset:auto;z-index:auto;overflow-y:visible;}
/* P-v2.24：盖章资料独立面板文档流化（与 arcPage 同款覆盖；显隐由平台 switchRgTab('gz') 管，
   内容填充由引擎 gzSync 管——哥哥拍板：不接在生成报告后面，独立面板页） */
#module-reportgen #gzPage{position:static;inset:auto;z-index:auto;overflow-y:visible;}
/* P-v2.27（哥哥第 2 条）：报告模板 / 参数存档 / 生成明细 / 盖章资料 / 盖章资料统计
   五个子页铺满整页 —— 与生成报告页同宽，去掉版心 max-width（后写覆盖前段 860/1080/1240） */
#module-reportgen .ap-body{max-width:none;}
#module-reportgen #arcPage.wide .ap-body{max-width:none;}
#module-reportgen #gzPage .ap-body{max-width:none;}
#module-reportgen .rgTplWrap{max-width:none;}

/* ================= ★ 第十二轮第三批第 1 条（2026-10-13）：反污染 =================
   现象：平台版参数配置界面"高大空"，与试用版（紧凑舒服）观感差一大截（哥哥附了两张对比图）。
   根因（Playwright 现场实测定位，非推断）：平台 app.css 有**三条不带作用域的元素选择器**，
   它们会漏进生成器模块，而生成器自己的基础规则恰好没覆盖这些缺口：
     app.css  button{min-height:44px;font-size:15px}
             label{display:block;margin:12px 0 5px}
             input,select,textarea{font-size:16px;padding:11px 13px;width:100%}
     生成器  .fld input,.fld textarea{width:100%;font-size:13px;padding:6px 9px}（注意**没有 select**）
             button{font-family:inherit;font-size:13px;...}（**没有 min-height**）
             —— 于是：11 个按钮被撑到 44px 高；86 个 .fld>label 顶上凭空多 12px（整页稀松主因）；
                     31 个复选框被拉成 64/54/31px 宽（"乱"的另一个来源）。
   改法：按模块作用域把这三处缺口补齐。id 选择器特异性高于元素选择器，跨 CSS 加载顺序生效；
         只补"生成器自己没写死"的部分，所以不影响任何已有类规则的排版意图。
   实测（以试用版为基准，探针 _probe_r40_fix.js）：
     .bar button  h 44→34 / min-height 44px→0；.fld label margin-top 12px→0；
     checkbox 宽 64→13、字号 16px→13px；模块根字号两边都是 15px（无需干预）。 */
#module-reportgen button{min-height:0;}
#module-reportgen label{margin:0;}
#module-reportgen input[type="checkbox"],#module-reportgen input[type="radio"]{
  width:auto;min-height:0;padding:0;font-size:13px;}

/* ★ 第十二轮第三批第 4 条（2026-10-13）：报告模板页加「确定，去填写」按钮。
   原来点模板卡片只是选中，页面仍停在「报告模板」，用户不知道该干嘛；
   现在选好模板 → 点这颗按钮 → 切到「生成报告」开始填。 */
#module-reportgen .rgTplOps{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
#module-reportgen .rgTplHint{font-size:12.5px;color:var(--muted);}
#module-reportgen .rgTplOps .btn-go{background:var(--primary);color:#fff;border:none;
  padding:9px 17px;border-radius:10px;font-weight:700;font-size:13px;cursor:pointer;
  box-shadow:0 6px 20px rgba(79,140,255,.35);}
#module-reportgen .rgTplOps .btn-go:hover{filter:brightness(1.1);}
