.mock-report-editor,.mock-official-preview{color:var(--text,#344054);font-size:12px}
.mock-report-editor{background:var(--surface,#fff);border:1px solid var(--line,#e6e8ef);border-radius:var(--panel-radius,12px);padding:20px;margin:18px 0}
.mock-report-editor h3{margin:0 0 16px;font-size:15px}.mock-report-editor fieldset{border:1px solid var(--line,#e6e8ef);border-radius:8px;padding:14px;margin:14px 0}.mock-report-editor legend{font-weight:600;padding:0 6px}
.mock-report-editor label{display:flex;flex-direction:column;gap:7px;margin:10px 0;color:var(--muted,#7b8494)}
.mock-report-editor input,.mock-report-editor textarea,.mock-report-editor select{box-sizing:border-box;width:100%;border:1px solid var(--line,#e6e8ef);border-radius:6px;padding:9px;color:var(--text,#344054);background:var(--surface,#fff);font:inherit}.mock-report-editor textarea{resize:vertical;min-height:60px}
.mock-report-editor button{min-height:34px;border:1px solid var(--line,#e6e8ef);border-radius:6px;padding:7px 12px;background:var(--surface,#fff);cursor:pointer;font:inherit}.mock-report-editor button.primary{background:var(--primary,#7162df);color:#fff}.mock-report-editor button:disabled{opacity:.55;cursor:default}
.mock-report-editor fieldset:first-child{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 14px}.mock-report-editor fieldset:first-child legend{grid-column:1/-1}
.mock-report-group-edit{border:1px solid var(--line,#e6e8ef);border-radius:8px;padding:12px;margin:10px 0;background:var(--surface-muted,#f8f9fc)}.mock-report-group-edit summary{cursor:pointer;font-weight:600;color:var(--text,#344054)}.mock-report-field-edit{border-bottom:1px solid var(--line,#e6e8ef);padding-bottom:10px;margin-bottom:12px}
.mock-official-project{background:var(--surface,#fff);border:1px solid var(--line,#e6e8ef);border-radius:var(--panel-radius,12px);padding:24px;margin:18px 0}.mock-official-project>h2,.mock-official-project>h3{text-align:center;margin:14px 0}.mock-official-project>h2{font-size:20px}.mock-official-project>h3{font-size:18px}.mock-official-project>p{margin:8px 0}.mock-report-field{margin:22px 0}.mock-report-field>h4{font-size:14px;margin:12px 0}
.mock-report-table-wrap{overflow:auto}.mock-official-preview table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:760px}.mock-official-preview th,.mock-official-preview td{border:1px solid var(--line,#d6dbe5);padding:12px;vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere;text-align:left}.mock-official-preview thead th{background:var(--surface-muted,#f2effa);font-weight:600}.mock-official-preview th:first-child{width:14%}.mock-official-preview th:nth-child(2),.mock-official-preview th:nth-child(3){width:36%}.mock-official-preview th:last-child{width:14%}
.mock-official-preview table[data-report-phases] th{width:auto}.mock-official-preview table[data-report-phases="3"]{min-width:960px}
.mock-report-line{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;margin:5px 0}.mock-report-empty{color:var(--muted,#7b8494);font-size:11px}.mock-report-issues h5{font-size:12px;margin:0 0 8px}.mock-report-task{display:block;border:0;padding:5px 0;background:transparent;color:var(--primary,#7162df);text-align:left;cursor:pointer;font:inherit;overflow-wrap:anywhere}.mock-report-summary{padding:14px;background:var(--surface-muted,#f8f9fc);border-radius:8px;margin:18px 0}.mock-report-supplement{margin-top:18px;border-top:1px solid var(--line,#e6e8ef);padding-top:14px}.mock-report-supplement summary{cursor:pointer}
@media(max-width:720px){.mock-report-editor{padding:12px}.mock-report-editor fieldset:first-child{grid-template-columns:1fr}.mock-official-project{padding:14px}.mock-report-editor button,.mock-report-editor input,.mock-report-editor select{min-height:40px}}
.weekly-project-report>.mock-report-format-settings,.weekly-project-report>.mock-report-format-preview{margin:16px;border:1px solid var(--line,#e6e8ee);border-radius:var(--panel-radius,10px);background:var(--surface,#fff)}
.weekly-project-report>.mock-report-format-settings>summary,.weekly-project-report>.mock-report-format-preview>summary{padding:13px 16px;cursor:pointer;font-size:13px;font-weight:600;color:var(--text,#253046)}
/* 주간은 성과를 먼저 읽고 근거 집계를 필요할 때 펼친다. 월간·내보내기 양식은 기존 계약을 따른다. */
.weekly-page[data-report-layout="summary"] .weekly-ai-editor{background:var(--surface,#fff);border-color:var(--line,#e6e8ef)}
.weekly-page[data-report-layout="summary"] .weekly-ai-fields{gap:20px;align-items:start}
.weekly-page[data-report-layout="summary"] [data-report-reading="actual"]{grid-column:1/-1;font-size:15px}
.weekly-page[data-report-layout="summary"] .weekly-ai-fields label{min-width:0;grid-column:auto;font-size:13px}
.weekly-page[data-report-layout="summary"] .weekly-ai-fields label[data-report-reading="actual"]{grid-column:1/-1}
.weekly-page[data-report-layout="summary"] .weekly-ai-fields textarea{box-sizing:border-box;font-weight:400;font-size:14px;line-height:1.9;padding:16px;min-height:140px;color:var(--text,#344054)}
.weekly-previous-comparison{grid-column:1/-1;border-top:1px solid var(--line,#e6e8ef);padding-top:12px}
.weekly-previous-comparison summary,.weekly-evidence-counts>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--muted,#7b8494);font-size:12px;gap:8px}
.weekly-previous-comparison summary:before,.weekly-evidence-counts>summary:before{content:'▸'}
.weekly-previous-comparison[open]>summary:before,.weekly-evidence-counts[open]>summary:before{content:'▾'}
.weekly-evidence-counts{margin:0 0 18px;border-bottom:1px solid var(--line,#e6e8ef)}
@media(max-width:800px){.weekly-page[data-report-layout="summary"] .weekly-ai-fields{grid-template-columns:1fr;gap:16px}.weekly-page[data-report-layout="summary"] .weekly-ai-fields textarea{padding:12px;font-size:14px}}
