.tiptap-editor-wrapper{display:flex;flex-direction:column;height:100vh;background:#fff}.dark .tiptap-editor-wrapper{background:#18181b}.save-status-bar{padding:8px 16px;background:#f9fafb;border-top:1px solid #e5e7eb;font-size:12px;text-align:right;color:#6b7280}.dark .save-status-bar{background:#27272a;border-top-color:#3f3f46;color:#9ca3af}.save-status-bar .saving{color:#f59e0b;font-weight:500}.save-status-bar .saved{color:#10b981;font-weight:500}.save-toast{position:fixed;bottom:80px;right:24px;background:#10b981;color:#fff;padding:12px 20px;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;display:flex;align-items:center;gap:8px;font-weight:500;font-size:14px;z-index:9999;animation:slideInUp .3s ease-out,fadeOut .3s ease-in 2.7s;animation-fill-mode:both}@keyframes slideInUp{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.menubar{display:flex;gap:4px;padding:8px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:center}.dark .menubar{background:#27272a;border-bottom-color:#3f3f46}.menubar-divider{width:1px;height:24px;background:#e5e7eb;margin:0 8px}.dark .menubar-divider{background:#3f3f46}.menubar button{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 8px;background:#fff;border:1px solid #e5e7eb;border-radius:4px;cursor:pointer;font-size:13px;font-weight:600;color:#374151;transition:all .15s}.menubar button svg{display:block}.dark .menubar button{background:#18181b;border-color:#3f3f46;color:#e5e7eb}.menubar button:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.dark .menubar button:hover:not(:disabled){background:#27272a;border-color:#52525b}.menubar button:disabled{opacity:.5;cursor:not-allowed}.menubar button.is-active{background:#3b82f6;border-color:#3b82f6;color:#fff}.dark .menubar button.is-active{background:#2563eb;border-color:#2563eb}.tiptap-editor-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:32px;height:0;background:#e5e7eb}.dark .tiptap-editor-content{background:#0a0a0b}.tiptap-page-canvas{width:794px;margin:0 auto}.tiptap-page{background:#fff;min-height:1123px;box-shadow:0 1px 3px #0000001a,0 4px 16px #00000014;padding:76px 60px}.dark .tiptap-page{background:#18181b;box-shadow:0 1px 3px #0000004d,0 4px 16px #00000040}.tiptap-page .ProseMirror{outline:none;min-height:100%}.menubar-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.menubar-row .menubar{flex:1}.zoom-controls{display:flex;align-items:center;gap:6px;padding:0 16px}.zoom-controls button{width:26px;height:26px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;color:#374151;font-size:15px;line-height:1;cursor:pointer}.dark .zoom-controls button{border-color:#3f3f46;background:#27272a;color:#d1d5db}.zoom-controls button:hover:not(:disabled){background:#f3f4f6}.dark .zoom-controls button:hover:not(:disabled){background:#3f3f46}.zoom-controls button:disabled{opacity:.4;cursor:not-allowed}.zoom-controls .zoom-level{font-size:12px;color:#6b7280;min-width:38px;text-align:center}.dark .zoom-controls .zoom-level{color:#9ca3af}.ProseMirror h1,.ProseMirror h2,.ProseMirror h3,.ProseMirror p{text-align:left!important}.ProseMirror h1{font-size:2.25rem;font-weight:700;line-height:2.5rem;margin-top:0;margin-bottom:1rem;color:#111827}.dark .ProseMirror h1{color:#f9fafb}.ProseMirror h2{font-size:1.875rem;font-weight:700;line-height:2.25rem;margin-top:2rem;margin-bottom:1rem;color:#111827}.dark .ProseMirror h2{color:#f9fafb}.ProseMirror h3{font-size:1.5rem;font-weight:600;line-height:2rem;margin-top:1.5rem;margin-bottom:.75rem;color:#111827}.dark .ProseMirror h3{color:#f9fafb}.ProseMirror p{margin-top:.75rem;margin-bottom:.75rem;line-height:1.75rem;color:#374151}.dark .ProseMirror p{color:#e5e7eb}.ProseMirror strong{font-weight:600;color:#111827}.dark .ProseMirror strong{color:#f9fafb}.ProseMirror em{font-style:italic}.ProseMirror ul,.ProseMirror ol{padding-left:1.5rem;margin-top:.75rem;margin-bottom:.75rem}.ProseMirror ul{list-style-type:disc}.ProseMirror ol{list-style-type:decimal}.ProseMirror li{margin-top:.25rem;margin-bottom:.25rem;line-height:1.75rem}.ProseMirror blockquote{border-left:4px solid #e5e7eb;padding-left:1rem;font-style:italic;margin-top:1rem;margin-bottom:1rem;color:#6b7280}.dark .ProseMirror blockquote{border-left-color:#374151;color:#9ca3af}.ProseMirror code{background-color:#f3f4f6;padding:.125rem .375rem;border-radius:.25rem;font-size:.875em;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Monaco,Consolas,monospace}.dark .ProseMirror code{background-color:#374151;color:#f9fafb}.ProseMirror pre{background-color:#1f2937;color:#f9fafb;padding:1rem;border-radius:.5rem;overflow-x:auto;margin-top:1rem;margin-bottom:1rem}.ProseMirror pre code{background-color:transparent;padding:0;color:inherit}.ProseMirror hr{border:none;border-top:2px solid #e5e7eb;margin:2rem 0}.dark .ProseMirror hr{border-top-color:#374151}.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:#9ca3af;pointer-events:none;height:0}.ProseMirror s{text-decoration:line-through}.ProseMirror mark{background-color:#fef08a;padding:.125rem 0}.dark .ProseMirror mark{background-color:#854d0e}.property-data-section{position:relative;margin:1.5rem 0;border-radius:12px;overflow:hidden;border:1px solid #e2e8f0;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 1px 3px #0000000d;-webkit-user-select:none;user-select:none}.property-data-section>*:not(.section-edit-button){pointer-events:none}.property-data-section .section-edit-button{position:absolute;top:10px;right:10px;z-index:5;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:8px;border:1px solid rgba(15,76,129,.25);background:#fffffff5;color:#0f4c81;font-size:12px;font-weight:600;line-height:1;text-decoration:none;box-shadow:0 2px 6px #0f172a1f;opacity:0;transition:opacity .12s ease,background-color .12s ease;pointer-events:auto}.property-data-section .section-edit-button svg{width:14px;height:14px}.property-data-section:hover .section-edit-button,.property-data-section .section-edit-button:focus-visible{opacity:1}.property-data-section .section-edit-button:hover{background:#fff;border-color:#0f4c8180}.dark .property-data-section .section-edit-button{border-color:#94a3b859;background:#18181bf5;color:#93c5fd}.dark .property-data-section{border-color:#3f3f46;background:linear-gradient(180deg,#27272a,#18181b)}.property-data-section .section-header{display:flex;align-items:center;gap:12px;padding:16px 20px;background:linear-gradient(135deg,#0f4c81,#1e3a5f);color:#fff}.property-data-section .section-icon{width:40px;height:40px;background:#ffffff26;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.property-data-section .section-icon svg{width:22px;height:22px;stroke:#fff}.property-data-section .section-title-wrapper{flex:1;display:flex;align-items:center;justify-content:space-between;gap:12px}.property-data-section .section-title{font-size:1.125rem;font-weight:600;margin:0;color:#fff}.property-data-section .readonly-badge{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;background:#fff3;padding:4px 10px;border-radius:20px;color:#ffffffe6}.property-data-section .lock-icon{width:12px;height:12px}.property-data-section .section-content{padding:20px}.property-data-section .data-table{width:100%;border-collapse:collapse;font-size:.875rem}.property-data-section .data-table tr{border-bottom:1px solid #f1f5f9}.dark .property-data-section .data-table tr{border-bottom-color:#3f3f46}.property-data-section .data-table tr:last-child{border-bottom:none}.property-data-section .data-table td{padding:10px 12px;vertical-align:top}.property-data-section .data-table td.label{color:#64748b;font-weight:500;width:40%}.dark .property-data-section .data-table td.label{color:#9ca3af}.property-data-section .data-table td.value{color:#1e293b;font-weight:500}.dark .property-data-section .data-table td.value{color:#f1f5f9}.property-data-section .data-table .subsection-header td{background:#f8fafc;color:#475569;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;padding:8px 12px}.dark .property-data-section .data-table .subsection-header td{background:#27272a;color:#a1a1aa}.property-data-section .na-value{color:#9ca3af;font-style:italic}.property-data-section .no-data{color:#9ca3af;font-style:italic;text-align:center;padding:20px}.property-data-section .value-highlight{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #6ee7b7;border-radius:10px;padding:20px;margin-bottom:20px;text-align:center}.dark .property-data-section .value-highlight{background:linear-gradient(135deg,#064e3b,#065f46);border-color:#059669}.property-data-section .value-highlight-label{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#047857;margin-bottom:8px}.dark .property-data-section .value-highlight-label{color:#6ee7b7}.property-data-section .value-highlight-label .icon{width:18px;height:18px}.property-data-section .value-highlight-amount{font-size:2rem;font-weight:700;color:#065f46;margin-bottom:8px}.dark .property-data-section .value-highlight-amount{color:#ecfdf5}.property-data-section .metric-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:20px}.property-data-section .metric-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px;text-align:center}.dark .property-data-section .metric-card{background:#27272a;border-color:#3f3f46}.property-data-section .metric-icon{font-size:1.5rem;margin-bottom:8px}.property-data-section .metric-value{font-size:1.25rem;font-weight:700;color:#0f4c81;margin-bottom:4px}.dark .property-data-section .metric-value{color:#60a5fa}.property-data-section .metric-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.dark .property-data-section .metric-label{color:#9ca3af}.property-data-section .status-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.property-data-section .status-excellent{background:#dcfce7;color:#166534}.dark .property-data-section .status-excellent{background:#166534;color:#dcfce7}.property-data-section .status-good{background:#dbeafe;color:#1e40af}.dark .property-data-section .status-good{background:#1e40af;color:#dbeafe}.property-data-section .status-average{background:#fef3c7;color:#92400e}.dark .property-data-section .status-average{background:#92400e;color:#fef3c7}.property-data-section .status-poor{background:#fee2e2;color:#991b1b}.dark .property-data-section .status-poor{background:#991b1b;color:#fee2e2}.property-data-section .status-neutral{background:#f3f4f6;color:#4b5563}.dark .property-data-section .status-neutral{background:#3f3f46;color:#d1d5db}.property-data-section .no-data{color:#9ca3af;font-style:italic;text-align:center;padding:12px}.property-data-section .report-list{padding-left:20px;color:#1e293b;font-size:.875rem}.dark .property-data-section .report-list{color:#f1f5f9}.property-data-section .report-table{width:100%;border-collapse:collapse;font-size:.875rem;margin-bottom:8px}.property-data-section .report-table th{text-align:left;padding:8px 10px;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:#64748b;background:#f8fafc;border-bottom:1px solid #e2e8f0}.dark .property-data-section .report-table th{color:#9ca3af;background:#27272a;border-bottom-color:#3f3f46}.property-data-section .report-table td{padding:8px 10px;border-bottom:1px solid #f1f5f9;color:#1e293b}.dark .property-data-section .report-table td{border-bottom-color:#3f3f46;color:#f1f5f9}.property-data-section .report-table td.num{text-align:right;font-variant-numeric:tabular-nums}.property-data-section .overall-box{display:flex;justify-content:space-between;align-items:center;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:12px 16px;margin-bottom:14px}.dark .property-data-section .overall-box{background:#1e3a5f;border-color:#2563eb}.property-data-section .overall-box-label{font-size:.75rem;color:#64748b}.dark .property-data-section .overall-box-label{color:#9ca3af}.property-data-section .overall-box-verdict{font-size:.9rem;font-weight:600;color:#1e293b}.dark .property-data-section .overall-box-verdict{color:#f1f5f9}.property-data-section .overall-box-score{font-size:1.4rem;font-weight:700;color:#1d4ed8}.dark .property-data-section .overall-box-score{color:#60a5fa}.property-data-section .criteria-table .verdict-cell{text-align:right;font-weight:600;font-size:.8rem}.property-data-section .dots{white-space:nowrap;letter-spacing:1px;font-size:11px}.property-data-section .dot{color:#d4d4d8}.dark .property-data-section .dot{color:#52525b}.property-data-section .dot.on{color:#1d4ed8}.dark .property-data-section .dot.on{color:#60a5fa}.property-data-section .no-source{color:#9ca3af;font-size:.75rem;font-style:italic}.property-data-section .waterfall{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.dark .property-data-section .waterfall{border-color:#3f3f46}.property-data-section .wf-section-label{padding:6px 14px;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:#64748b;background:#f8fafc;border-bottom:1px solid #f1f5f9}.dark .property-data-section .wf-section-label{color:#9ca3af;background:#27272a;border-bottom-color:#3f3f46}.property-data-section .wf-row{display:flex;justify-content:space-between;padding:8px 14px;font-size:.85rem;border-bottom:1px solid #f1f5f9}.dark .property-data-section .wf-row{border-bottom-color:#3f3f46}.property-data-section .wf-row.indent{padding-left:28px;font-size:.8rem;color:#64748b}.dark .property-data-section .wf-row.indent{color:#9ca3af}.property-data-section .wf-row .lbl{color:#475569}.dark .property-data-section .wf-row .lbl{color:#d1d5db}.property-data-section .wf-row .val{font-weight:600;font-variant-numeric:tabular-nums;color:#1e293b}.dark .property-data-section .wf-row .val{color:#f1f5f9}.property-data-section .wf-row.subtotal{font-weight:700;background:#f8fafc;border-top:1px solid #e2e8f0}.dark .property-data-section .wf-row.subtotal{background:#27272a;border-top-color:#3f3f46}.property-data-section .wf-row.total{font-weight:700;font-size:.95rem;background:#eff6ff;border-top:2px solid #1e293b}.dark .property-data-section .wf-row.total{background:#1e3a5f;border-top-color:#f1f5f9}.property-data-section .wf-row.total .val{color:#1d4ed8}.dark .property-data-section .wf-row.total .val{color:#60a5fa}.property-data-section .report-photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.property-data-section .report-photo-grid img{width:100%;height:120px;object-fit:cover;border-radius:8px;border:1px solid #e2e8f0}.dark .property-data-section .report-photo-grid img{border-color:#3f3f46}.property-data-section .photo-caption{font-size:.7rem;color:#64748b;text-align:center;margin-top:4px}.dark .property-data-section .photo-caption{color:#9ca3af}.property-data-section .cover-preview-image{width:100%;height:200px;object-fit:cover;border-radius:10px;margin-bottom:16px}.property-data-section .cover-preview-kicker{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin-bottom:6px}.dark .property-data-section .cover-preview-kicker{color:#9ca3af}.property-data-section .cover-preview-address{font-size:1.25rem;font-weight:700;color:#1e293b;margin-bottom:16px;line-height:1.3}.dark .property-data-section .cover-preview-address{color:#f1f5f9}.property-data-section .cover-preview-value{background:#f8fafc;border-radius:10px;padding:14px 18px;margin-bottom:16px}.dark .property-data-section .cover-preview-value{background:#27272a}.property-data-section .cover-preview-value-label{font-size:.75rem;color:#64748b;margin-bottom:4px}.dark .property-data-section .cover-preview-value-label{color:#9ca3af}.property-data-section .cover-preview-value-amount{font-size:1.5rem;font-weight:700;color:#1e293b}.dark .property-data-section .cover-preview-value-amount{color:#f1f5f9}.property-data-section .criterion-desc{font-size:11px;color:#6b7280;margin-top:2px;line-height:1.4}.dark .property-data-section .criterion-desc{color:#9ca3af}.property-data-section figure.report-map{margin:6px 0 12px}.property-data-section figure.report-map img{width:100%;height:auto;display:block;border:1px solid #e5e7eb;border-radius:4px}.property-data-section figure.report-map figcaption{font-size:11px;color:#6b7280;margin-top:4px}.property-data-section figure.report-map .report-map-caption{font-weight:600;color:#374151}.dark .property-data-section figure.report-map .report-map-caption{color:#e5e7eb}.property-data-section figure.report-map .report-map-source{font-size:10px;color:#9ca3af}.property-data-section .report-map-missing{border:1px dashed #d1d5db;background:#f9fafb;color:#9ca3af;font-style:italic;text-align:center;padding:48px 16px;font-size:12px}.tiptap-editor-wrapper .ProseMirror img.report-image{display:inline-block;vertical-align:top;max-width:100%;border-radius:4px;padding:0 2px;box-sizing:border-box}.tiptap-editor-wrapper .ProseMirror p:has(>img.report-image){margin:1rem 0;font-size:0;line-height:0}.image-toolbar{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:6px 10px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.image-toolbar button{border:1px solid transparent;background:transparent;border-radius:4px;padding:2px 8px;font-size:12px;cursor:pointer}.image-toolbar button:hover{background:#e5e7eb}.image-toolbar button.is-active{background:#2563eb;color:#fff}.image-toolbar-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;margin-right:2px}.image-focus-grid{display:grid;grid-template-columns:repeat(3,12px);grid-template-rows:repeat(3,12px);gap:2px}.image-focus-grid button{padding:0;width:12px;height:12px;border:1px solid #d1d5db;border-radius:2px;background:#fff}.image-focus-grid button.is-active{background:#2563eb;border-color:#2563eb}.dark .image-toolbar{background:#18181b;border-color:#3f3f46}.dark .image-toolbar button:hover{background:#3f3f46}.dark .image-focus-grid button{background:#27272a;border-color:#52525b}.tiptap-editor-wrapper .ProseMirror img.ProseMirror-selectednode{outline:2px solid #2563eb}.property-data-section .report-section-preview{display:block}.tiptap-page .ProseMirror table{width:100%;border-collapse:collapse;table-layout:fixed;margin:12px 0;overflow:hidden}.tiptap-page .ProseMirror table td,.tiptap-page .ProseMirror table th{position:relative;min-width:1em;padding:6px 8px;border:1px solid #e4e4e7;vertical-align:top;box-sizing:border-box}.tiptap-page .ProseMirror table th{background:#f5f5f5;font-size:.85em;font-weight:600;text-align:left;text-transform:uppercase;letter-spacing:.03em;color:#666}.tiptap-page .ProseMirror table p{margin:0}.tiptap-page .ProseMirror table .selectedCell:after{content:"";position:absolute;inset:0;background:#2563eb1f;pointer-events:none}.tiptap-page .ProseMirror table .column-resize-handle{position:absolute;right:-2px;top:0;bottom:-2px;width:4px;background:#2563eb;pointer-events:none}.tiptap-page .ProseMirror.resize-cursor{cursor:col-resize}.dark .tiptap-page .ProseMirror table td,.dark .tiptap-page .ProseMirror table th{border-color:#3f3f46}.dark .tiptap-page .ProseMirror table th{background:#27272a;color:#a1a1aa}.tiptap-page .ProseMirror.report-prose{font-family:Helvetica Neue,Arial,sans-serif;font-size:9.5pt;line-height:1.55;color:#222}.dark .tiptap-page .ProseMirror.report-prose{color:#e4e4e7}.tiptap-page .ProseMirror.report-prose p{margin:0 0 8px;text-align:justify}.tiptap-page .ProseMirror.report-prose h1{font-size:15pt;font-weight:700;border-bottom:2px solid #1a1a1a;padding-bottom:6px;margin:0 0 14px}.dark .tiptap-page .ProseMirror.report-prose h1{border-bottom-color:#e4e4e7}.tiptap-page .ProseMirror.report-prose h2{font-size:11.5pt;font-weight:700;margin:18px 0 8px}.tiptap-page .ProseMirror.report-prose h3{font-size:10pt;font-weight:600;margin:12px 0 4px}.tiptap-page .ProseMirror.report-prose ul,.tiptap-page .ProseMirror.report-prose ol{margin:0 0 10px 18px;padding-left:0}.tiptap-page .ProseMirror.report-prose li{margin-bottom:3px}.tiptap-page .ProseMirror.report-prose blockquote{border-left:3px solid #e4e4e7;margin:0 0 10px;padding-left:10px;color:#555}.tiptap-page .ProseMirror.report-prose hr{border:0;border-top:1px solid #e4e4e7;margin:14px 0}
