.status-pipeline{display:flex;width:100%;background:transparent;padding:0;border-radius:0;overflow-x:auto;gap:0}.pipeline-step{flex:1 1 0;min-width:130px;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--color-gray-100);color:var(--color-text-muted);padding:.7rem .85rem .7rem 1.7rem;font-size:.78rem;font-weight:600;line-height:1.25;letter-spacing:.01em;margin-right:-14px;transition:background .2s ease,color .2s ease;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%,14px 50%)}.pipeline-step:first-child{padding-left:.85rem;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%)}.pipeline-step:last-child{margin-right:0;padding-right:.85rem;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,14px 50%)}.pipeline-step:first-child:last-child{clip-path:none;border-radius:6px}.pipeline-step.done{background:var(--color-teal);color:var(--color-white)}.pipeline-step.current{background:var(--color-navy);color:var(--color-white);box-shadow:inset 0 0 0 9999px var(--color-navy)}.pipeline-declined{padding:.85rem 1.25rem;background:#dc354514;color:#b00020;border-left:4px solid #b00020;border-radius:6px;font-weight:600;font-size:.9rem}.doc-counters{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.counter{background:var(--color-white);border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 1px 4px #0000000a;text-align:center}.counter-value{font-family:var(--font-heading);font-size:2.25rem;color:var(--color-navy);line-height:1.1}.counter-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);font-weight:600;margin-top:.25rem}.doc-section{margin-bottom:1.75rem}.doc-section-header{display:flex;align-items:baseline;justify-content:flex-start;gap:.6rem;margin-bottom:.875rem;padding:0;background:none;border:none;width:100%;cursor:default;text-align:left}.doc-section-header h2{font-size:1.15rem;margin:0}.doc-section-count{background:var(--color-gray-100);color:var(--color-gray-800);font-weight:600;padding:.15rem .6rem;border-radius:99px;font-size:.78rem}.doc-section-toggle{cursor:pointer}.doc-section-toggle:hover .doc-section-count{background:var(--color-gray-200)}.doc-chevron{margin-left:auto;color:var(--color-text-muted);font-size:.9rem}.doc-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;background:var(--color-white);border-radius:10px;padding:1.25rem 1.5rem;margin-bottom:.75rem;box-shadow:0 1px 4px #0000000a;border-left:4px solid var(--color-gray-200);flex-wrap:wrap}.doc-card.section-todo{border-left-color:#dc3545}.doc-card.section-review{border-left-color:#f4c542}.doc-card.section-done{border-left-color:var(--color-teal)}.doc-card.status-rejected{border-left-color:#b00020;background:#dc35450a}.doc-card-main{flex:1 1 260px;min-width:0}.doc-card-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-bottom:.35rem}.doc-name{font-weight:600;color:var(--color-navy);font-size:.98rem}.doc-description{color:var(--color-text-muted);font-size:.875rem;margin:0;line-height:1.5}.doc-filename{color:var(--color-text-muted);font-size:.78rem;margin:.4rem 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.status-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .55rem;border-radius:99px;background:var(--color-gray-100);color:var(--color-gray-800);white-space:nowrap}.status-badge--requested{background:#dc35451f;color:#b00020}.status-badge--rejected{background:#dc35452e;color:#b00020}.status-badge--submitted{background:#f4c5422e;color:#8a6d11}.status-badge--under-review{background:#f4c5423d;color:#6b4f08}.status-badge--approved{background:#00c2a829;color:var(--color-teal-dark)}.status-badge--waived{background:#0f1b2d14;color:var(--color-navy)}.due-pill{font-size:.72rem;font-weight:600;padding:.15rem .55rem;border-radius:99px;background:var(--color-gray-100);color:var(--color-gray-800)}.due-pill.soon{background:#f4c5423d;color:#6b4f08}.due-pill.overdue{background:#dc354529;color:#b00020}.rejection-block{margin-top:.65rem;padding:.6rem .85rem;background:#dc35450f;color:#b00020;border-radius:6px;font-size:.875rem;line-height:1.5}.doc-card-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;min-width:120px}.doc-card-actions .btn{font-size:.85rem;padding:.5rem 1rem}.upload-progress{display:flex;align-items:center;gap:.5rem;width:100%}.upload-progress-bar{flex:1;height:4px;background:var(--color-gray-200);border-radius:2px;overflow:hidden}.upload-progress-fill{height:100%;width:0%;background:var(--color-teal);transition:width .2s ease}.upload-progress-text{font-size:.75rem;color:var(--color-text-muted);min-width:32px;text-align:right}.status-history-list{list-style:none;margin:0;padding:0}.status-history-item{display:flex;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--color-gray-100);align-items:baseline}.status-history-item:last-child{border-bottom:none}.status-history-date{flex-shrink:0;color:var(--color-text-muted);font-size:.85rem;width:100px}.status-history-label{color:var(--color-gray-800);font-size:.95rem}.modal-backdrop{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-backdrop[hidden]{display:none}.modal{background:var(--color-white);border-radius:12px;padding:2rem;width:100%;max-width:420px;box-shadow:0 8px 30px #0003}.modal h3{margin-bottom:.75rem}@media(max-width:600px){.pipeline-step{min-width:150px;font-size:.72rem;padding:.6rem .7rem .6rem 1.5rem}.pipeline-step:first-child{padding-left:.7rem}.pipeline-step:last-child{padding-right:.7rem}}.stage-summary{margin-top:2rem;padding:1.5rem;border-left:4px solid var(--color-teal)}.stage-summary-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.stage-summary-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-teal-dark)}.stage-summary-text{margin-bottom:1rem;color:var(--color-gray-800);font-size:.95rem}.stage-summary-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:700px){.stage-summary-grid{grid-template-columns:1fr 1fr}}.stage-summary-col{padding:.9rem 1rem;background:var(--color-gray-100);border-radius:6px}.stage-summary-col-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.6rem}.stage-summary-pill{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .55rem;border-radius:99px}.stage-summary-pill--you{background:#dc35451f;color:#b00020}.stage-summary-pill--broker{background:#f4c5422e;color:#8a6d11}.stage-summary-count{font-weight:700;color:var(--color-navy)}.stage-summary-list{list-style:none;margin:0;padding:0;font-size:.9rem}.stage-summary-list li{padding:.25rem 0;color:var(--color-gray-800)}.muted-inline{color:var(--color-text-muted);font-size:.85em}.doc-comments{margin-top:.75rem;padding-top:.5rem;border-top:1px solid var(--color-gray-200)}.doc-comments-summary{cursor:pointer;font-size:.85rem;color:var(--color-teal-dark);user-select:none;display:inline-flex;align-items:center;gap:.4rem}.doc-comments-toggle:before{content:"💬 "}.doc-comments-count{background:var(--color-teal);color:#fff;font-size:.7rem;font-weight:700;padding:.05rem .45rem;border-radius:99px}.doc-comments-body{margin-top:.6rem;padding:.5rem .75rem;background:var(--color-gray-100);border-radius:6px}.doc-comments-list{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.6rem}.doc-comment{padding:.45rem .65rem;background:#fff;border-radius:4px;border-left:3px solid var(--color-gray-200);font-size:.85rem}.doc-comment.from-broker{border-left-color:var(--color-teal)}.doc-comment.from-borrower{border-left-color:var(--color-navy)}.doc-comment-meta{font-size:.72rem;color:var(--color-text-muted);margin-bottom:.2rem}.doc-comment-body{white-space:pre-wrap;color:var(--color-gray-800);line-height:1.4}.doc-comments-compose{display:flex;flex-direction:column;gap:.4rem}.doc-comment-input{width:100%;padding:.4rem .6rem;border:1px solid var(--color-gray-200);border-radius:4px;font-family:var(--font-body);font-size:.85rem;resize:vertical}.doc-comment-post-btn{align-self:flex-start;padding:.4rem 1rem;font-size:.85rem}
