#customer-detail .dossier-document-card .customer-profile-card-head { gap:8px; padding-left:5px; padding-right:5px; }
#customer-detail .dossier-document-card .dossier-meeting-button { border:1px solid #a9c7c5; color:#176363; background:#fff; min-height:33px; font-size:14px; padding:5px 10px; border-radius:5px; }
#customer-detail .dossier-meeting-button:disabled { color:#819096; border-color:#dce5e8; cursor:default; }
#customer-detail .dossier-doc-empty { font-size:16px; color:#536676; line-height:1.6; margin:0; }
#customer-detail .dossier-doc-excerpt { white-space:pre-line; background:#eef6f7; padding:10px 13px; border-radius:5px; color:#172b3a; font-size:17px; line-height:1.65; overflow-wrap:anywhere; }
#customer-detail .dossier-doc-meta { color:#526773; font-size:12px; margin-top:6px; }
.customer-project-doc-overlay { --project-doc-layer:2400; position:fixed; inset:0; z-index:var(--project-doc-layer); background:#f1f5f7; color:#172b3a; font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif; font-size:16px; }
.customer-project-doc-overlay * { box-sizing:border-box; }
.customer-project-doc-overlay [hidden] { display:none!important; }
.project-doc-shell { display:flex; flex-direction:column; height:100%; }
.project-doc-header { display:flex; align-items:center; flex-wrap:wrap; gap:10px 16px; min-height:68px; background:#fff; border-bottom:1px solid #dce5ea; padding:12px 22px; }
.project-doc-header h2 { margin:0; font-size:23px; font-weight:650; }
.project-doc-status { color:#236d5c; font-size:14px; }
.project-doc-status.is-error { color:#a33328; }
.project-doc-actions { display:flex; align-items:center; flex-wrap:wrap; gap:9px; margin-left:auto; }
.customer-project-doc-overlay button,
.customer-project-doc-overlay select { background:#fff; color:#294957; border:1px solid #cddce3; border-radius:5px; font:inherit; padding:7px 12px; min-height:35px; cursor:pointer; }
.customer-project-doc-overlay button:hover { background:#eaf3f3; }
.customer-project-doc-overlay button.is-primary { background:#176363; border-color:#176363; color:#fff; }
.customer-project-doc-overlay button:disabled { color:#829197; cursor:default; }
.customer-project-doc-overlay :is(button,input,select,[contenteditable]):focus-visible { outline:2px solid #188684; outline-offset:2px; }
.project-doc-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:6px; background:#fff; padding:9px 22px; border-bottom:1px solid #dce5ea; }
.project-doc-toolbar button,.project-doc-toolbar select { padding:5px 9px; font-size:14px; }
.project-doc-font-label { font-size:14px; margin:0 6px; color:#425967; }
.project-doc-color { display:inline-flex; align-items:center; gap:5px; font-size:14px; }
.project-doc-color input { padding:0; width:28px; height:28px; border:0; background:none; cursor:pointer; }
.project-doc-notice { display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; padding:10px 22px; background:#fff6dc; color:#674915; border-bottom:1px solid #e6d59d; font-size:14px; }
.project-doc-history { display:flex; align-items:center; flex-wrap:wrap; gap:8px; max-height:180px; overflow:auto; width:100%; }
.project-doc-history strong { flex-basis:100%; }
.project-doc-history button { font-size:13px; }
.project-doc-workspace { display:flex; align-items:flex-start; min-height:0; flex:1; overflow-y:auto; overscroll-behavior:contain; padding:24px 30px 50px; gap:32px; scroll-behavior:smooth; }
.project-doc-outline { flex:0 0 190px; position:sticky; top:0; padding:7px 4px; font-size:16px; }
.project-doc-outline strong { display:block; font-size:18px; margin-bottom:16px; }
.project-doc-outline nav { display:flex; flex-direction:column; gap:6px; }
.project-doc-outline nav span { color:#586d7a; font-size:14px; line-height:1.6; }
.project-doc-outline button { background:none; border:0; text-align:left; padding:8px; overflow-wrap:anywhere; }
.project-doc-paper { flex:1; margin:0 auto; min-width:0; max-width:1100px; min-height:calc(100vh - 240px); padding:40px 64px 70px; background:#fff; box-shadow:0 1px 5px #2637460d; }
.project-doc-title { display:block; width:100%; padding:0 0 18px; margin:0; color:#172b3a; font-family:inherit; font-size:30px; font-weight:650; line-height:1.4; text-align:center; border:0; border-radius:0; background:none; }
.project-doc-body { min-height:460px; width:100%; font-family:inherit; font-size:18px; line-height:1.65; color:#172b3a; overflow-wrap:anywhere; outline:none; }
.project-doc-body:empty:before { content:attr(data-placeholder); color:#607381; pointer-events:none; }
.project-doc-body p { margin:0 0 14px; }
.project-doc-body h1 { font-size:30px; line-height:1.4; margin:24px 0 12px; font-weight:650; }
.project-doc-body h2 { font-size:25px; line-height:1.4; margin:22px 0 10px; font-weight:650; }
.project-doc-body h3 { font-size:21px; line-height:1.4; margin:18px 0 10px; font-weight:650; }
.project-doc-body img { max-width:100%; height:auto; display:inline-block; cursor:default; }
.project-doc-body img.is-doc-selected { outline:2px solid #188684; outline-offset:3px; }
.project-doc-body blockquote { margin:12px 0; border-left:3px solid #c4d5da; padding-left:18px; color:#425967; }
.project-doc-body table { border-collapse:collapse; width:100%; margin:14px 0; table-layout:fixed; }
.project-doc-body td,.project-doc-body th { padding:9px 12px; border:1px solid #bfcdd4; min-width:60px; }
.project-doc-body th { background:#f3f6f8; }
.project-doc-footer { background:#fff; border-top:1px solid #dce5ea; color:#536773; display:flex; justify-content:space-between; gap:12px; font-size:13px; padding:7px 22px; }
.project-doc-shell.is-meeting .project-doc-workspace { background:#fff; }
.project-doc-shell.is-meeting .project-doc-paper { max-width:1400px; box-shadow:none; padding-top:14px; }
.project-doc-shell.is-meeting .project-doc-title { font-size:38px; }
.project-doc-shell.is-meeting .project-doc-body { font-size:28px; line-height:1.7; }
.project-doc-shell.is-meeting .project-doc-body :is(p,div,span,li,td,th,strong,em,b,i,u) { font-size:inherit!important; }
.project-doc-shell.is-meeting .project-doc-body h1 { font-size:1.4em!important; }
.project-doc-shell.is-meeting .project-doc-body h2 { font-size:1.2em!important; }
.project-doc-shell.is-meeting .project-doc-body h3 { font-size:1.1em!important; }
.project-doc-shell.is-meeting .project-doc-outline { font-size:20px; }
@media(max-width:900px){
  .project-doc-outline { display:none; }
  .project-doc-workspace { padding:12px; }
  .project-doc-paper { padding:24px 22px 40px; }
  .project-doc-header { padding:10px 12px; }
  .project-doc-actions { margin-left:0; }
  .project-doc-toolbar { padding:8px 12px; }
  .project-doc-body { font-size:18px; }
  .project-doc-shell.is-meeting .project-doc-title { font-size:30px; }
}
@media(prefers-reduced-motion:reduce){.project-doc-workspace{scroll-behavior:auto;}}
