.prj-cols-header{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--border);background:#f6f4ef80;flex-shrink:0;grid-template-columns:minmax(0,1fr) 140px 110px 54px 100px 90px;column-gap:.6rem;padding:.32rem 1rem .32rem 2.5rem;font-size:.72rem;font-weight:600;display:grid}.prj-cols-header>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.prj-col--num{text-align:right}.prj-list-wrap{scrollbar-width:thin;scrollbar-color:#0f172a1f transparent;flex:1;overflow-y:auto}.prj-group{border-bottom:1px solid #0f172a0a}.prj-group-hd{cursor:pointer;text-align:left;width:100%;color:var(--ink);background:#0f172a06;border:none;align-items:center;gap:.5rem;padding:.45rem 1rem .45rem .7rem;font-weight:600;transition:background .1s;display:flex}.prj-group-hd:hover{background:#0f172a0a}.prj-group-chevron{color:var(--muted);align-items:center;display:flex}.prj-group-label{background:var(--status-color,#0f172a2e);color:#fff;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;flex:none;padding:.18rem .7rem;font-size:.7rem;font-weight:800}.prj-group-count{color:var(--muted);margin-left:.1rem;font-size:.74rem;font-weight:700}.prj-row{cursor:pointer;text-align:left;width:100%;color:var(--ink);background:0 0;border:none;border-bottom:1px solid #0f172a09;grid-template-columns:24px minmax(0,1fr) 140px 110px 54px 100px 90px;align-items:center;column-gap:.6rem;padding:.38rem 1rem .38rem 0;font-size:.84rem;transition:background 80ms;display:grid}.prj-row>*{min-width:0}.prj-row:hover{background:#0f172a06}.prj-row-check{justify-content:center;align-items:center;padding-left:.7rem;display:flex}.prj-row-name{align-items:center;gap:.45rem;min-width:0;padding-right:.5rem;display:flex}.prj-row-label{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.prj-row-code{color:var(--muted);background:#0f172a12;border-radius:4px;flex-shrink:0;padding:.08rem .32rem;font-size:.7rem;font-weight:600}.prj-row-subtask{color:var(--muted);flex-shrink:0;font-size:.72rem}.prj-row-company{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;overflow:hidden}.prj-row-health{align-items:center;gap:.35rem;min-width:0;font-size:.8rem;display:flex;overflow:hidden}.prj-row-health>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.prj-row-date{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.8rem;overflow:hidden}.project-report-shell{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.project-report-summary{overscroll-behavior-inline:contain;scrollbar-width:thin;flex:auto;align-items:center;min-width:0;display:flex;overflow-x:auto}.project-report-summary>div{white-space:nowrap;border-right:1px solid #0f172a0f;flex:none;align-items:baseline;gap:.28rem;padding:.2rem .5rem;display:inline-flex}.project-report-summary>div:last-child{border-right:0}.project-report-summary span{color:var(--muted);font-size:var(--font-size-2xs);text-transform:uppercase;font-weight:700}.project-report-summary strong{color:var(--ink);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.project-report-toolbar{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:.45rem;min-height:38px;padding:.25rem .55rem;display:flex}.project-report-toolbar-sub{color:var(--muted);font-size:var(--font-size-2xs);white-space:nowrap;flex:none}.project-report-toolbar-actions{flex:none;justify-content:flex-end;align-items:center;gap:.4rem;display:flex}.project-report-warning{color:#9a6700;text-overflow:ellipsis;white-space:nowrap;max-width:190px;font-size:.72rem;font-weight:700;overflow:hidden}.project-report-popover-wrap{position:relative}.project-report-popover{z-index:40;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--popover);width:min(420px,78vw);max-height:min(560px,70vh);box-shadow:var(--shadow-lg);grid-template-columns:160px 220px;gap:1rem;padding:.9rem;display:grid;position:absolute;top:calc(100% + .35rem);right:0;overflow:auto}.project-report-popover h4{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .45rem;font-size:.7rem}.project-report-choice{min-height:25px;color:var(--ink);align-items:center;gap:.45rem;font-size:.78rem;display:flex}.project-report-choice input{margin:0}.project-report-table-wrap{background:var(--surface-sunken);flex:auto;min-height:0;overflow:auto}.project-report-table{border-collapse:separate;border-spacing:0;width:100%;min-width:1280px;color:var(--ink);font-size:.78rem}.project-report-table th{z-index:3;color:#fff;text-align:left;white-space:nowrap;background:#243746;border-right:1px solid #ffffff2e;padding:.42rem .5rem;font-size:.68rem;font-weight:800;position:sticky;top:0}.project-report-table td{background:var(--surface);vertical-align:middle;white-space:nowrap;border-bottom:1px solid #0f172a0f;padding:.42rem .5rem}.project-report-table tbody tr:hover td{background:var(--surface-tint)}.project-report-table tfoot td{z-index:2;background:var(--surface-sunken);color:var(--ink);box-shadow:0 -1px 0 var(--border);font-weight:800;position:sticky;bottom:0}.project-report-select{width:38px;text-align:center!important}.project-report-num{font-variant-numeric:tabular-nums;text-align:right!important}.project-report-project{min-width:220px;color:var(--ink);gap:.1rem;text-decoration:none;display:grid}.project-report-project strong{text-overflow:ellipsis;max-width:300px;overflow:hidden}.project-report-project span{color:var(--muted);font-size:.7rem}.project-report-actions-col{width:40px;text-align:center!important}.project-report-actions-col a{width:26px;height:26px;color:var(--muted);border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.project-report-actions-col a:hover{background:var(--surface-sunken);color:var(--ink)}.project-report-group-row td{z-index:1;color:var(--ink);font-weight:800;position:sticky;top:30px;background:var(--surface-sunken)!important}.project-report-group-row td span{background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;margin-right:.5rem;padding:.12rem .45rem;font-size:.72rem;display:inline-flex}.project-report-progress{grid-template-columns:92px 42px;align-items:center;gap:.45rem;display:inline-grid}.project-report-progress>span{background:color-mix(in srgb, var(--blue) 16%, var(--surface-sunken));border-radius:999px;height:4px;display:block;overflow:hidden}.project-report-progress>span>span{border-radius:inherit;background:var(--blue);height:100%;display:block}.project-report-progress>span>span[data-danger=true]{background:var(--red)}.project-report-progress em{color:var(--ink);font-variant-numeric:tabular-nums;font-style:normal}@media (width<=980px){.project-report-popover{grid-template-columns:1fr;left:0;right:auto}}.prj-health-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.prj-status-chip{white-space:nowrap;border-radius:999px;align-items:center;padding:.18rem .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.prj-board{scrollbar-width:thin;flex:1;align-items:stretch;gap:.75rem;min-height:0;padding:.75rem;display:flex;overflow:auto hidden}.prj-board-col{flex:0 0 var(--col-width,320px);background:#0f172a06;border-radius:10px;flex-direction:column;min-width:0;max-height:100%;display:flex;position:relative;overflow:hidden}.prj-board-col-hd{color:var(--ink);border-bottom:1px solid var(--border);background:#ffffff8c;flex:none;align-items:center;gap:.5rem;padding:.6rem .75rem;font-weight:600;display:flex}.prj-board-col-label{background:var(--status-color,#0f172a2e);color:#fff;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;flex:none;max-width:100%;padding:.18rem .7rem;font-size:.7rem;font-weight:800;overflow:hidden}.prj-board-col-count{color:var(--muted);margin-left:auto;font-size:.74rem;font-weight:700}.prj-board-col-body{scrollbar-width:thin;flex-direction:column;flex:auto;gap:.5rem;min-height:0;padding:.5rem;display:flex;overflow-y:auto}.prj-board-card{background:var(--surface-strong);border:1px solid var(--border);text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;gap:.3rem;width:100%;padding:.75rem;transition:box-shadow .12s,transform .12s;display:flex}.prj-board-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0f172a14}.prj-board-card-name{color:var(--ink);font-size:.85rem;font-weight:600}.prj-board-card-code{color:var(--muted);font-size:.72rem}.prj-board-card-meta{color:var(--muted);align-items:center;gap:.4rem;font-size:.78rem;display:flex}.prj-board-card-health{flex:1}.prj-board-card-budget{color:var(--ink);margin-left:auto;font-size:.78rem;font-weight:600}.prj-board-card-company{color:var(--muted);font-size:.76rem}.prj-gantt{scrollbar-width:thin;flex:1;min-height:0;padding:0;font-size:.8rem;overflow:auto}.prj-gantt-hd,.prj-gantt-project-row,.prj-gantt-job-row{grid-template-columns:220px minmax(960px,1fr);align-items:center;min-width:1180px;display:grid}.prj-gantt-hd{border-bottom:1px solid var(--border);z-index:3;color:var(--muted);background:#f6f4eff7;height:34px;font-size:.72rem;font-weight:600;position:sticky;top:0}.prj-gantt-label-col{z-index:1;background:var(--surface-strong);border-right:1px solid var(--border);align-items:center;gap:.5rem;min-width:0;padding:.4rem .75rem;display:flex;position:sticky;left:0;overflow:hidden}.prj-gantt-hd .prj-gantt-label-col{z-index:4;background:#f6f4eff7}.prj-gantt-project-row .prj-gantt-label-col{background:#0f172a05}.prj-gantt-timeline{height:100%;position:relative;overflow:hidden}.prj-gantt-week-label{white-space:nowrap;color:var(--muted);font-size:.7rem;position:absolute;top:50%;transform:translateY(-50%)}.prj-gantt-today-line{z-index:3;background:#bd5d388c;width:2px;position:absolute;top:0;bottom:0}.prj-gantt-group{border-bottom:1px solid #0f172a0d}.prj-gantt-project-row{background:#0f172a05;min-height:30px}.prj-gantt-stage-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.prj-gantt-project-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.prj-gantt-job-row{min-height:28px}.prj-gantt-job-label{color:var(--muted);padding-left:1.75rem;font-size:.78rem}.prj-gantt-bar{opacity:.85;border-radius:4px;align-items:center;height:18px;transition:opacity .12s;display:flex;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.prj-gantt-bar:hover{opacity:1}.prj-gantt-bar-progress{pointer-events:none;background:#0000003d;border-right:1px solid #ffffffa6;border-radius:4px 0 0 4px;position:absolute;top:0;bottom:0;left:0}.prj-gantt-bar-label{z-index:1;color:#fff;white-space:nowrap;text-overflow:ellipsis;padding:0 .5rem;font-size:.68rem;font-weight:600;position:relative;overflow:hidden}.prj-detail{background:var(--surface-strong);flex-direction:column;flex:1;min-width:0;animation:.18s ease-out fade-up;display:flex;overflow:hidden}.prj-activity{border-left:1px solid var(--border);scrollbar-width:thin;background:#f6f4ef59;flex-direction:column;gap:1rem;padding:.75rem;display:flex;overflow-y:auto}.prj-activity-section{flex-direction:column;gap:.45rem;display:flex}.prj-activity-section-label{text-transform:uppercase;letter-spacing:.08em;color:#5b6472a6;align-items:center;gap:.3rem;font-size:.68rem;font-weight:700;display:flex}.prj-activity-budget{flex-direction:column;gap:.28rem;display:flex}.prj-activity-budget-row{color:var(--muted);justify-content:space-between;font-size:.78rem;display:flex}.prj-activity-budget-row strong{color:var(--ink);font-weight:600}.prj-activity-budget-total{border-top:1px solid var(--border);color:var(--ink);padding-top:.35rem;font-weight:600}.prj-activity-budget-total strong{color:var(--accent)}.prj-tab-content{flex-direction:column;gap:0;padding:0;display:flex}.prj-tab-section{border-bottom:1px solid var(--border);padding:.65rem .85rem}.prj-tab-section-hd{letter-spacing:0;color:var(--ink);text-transform:uppercase;margin:0 0 .5rem;font-family:Space Grotesk,sans-serif;font-size:.78rem;font-weight:700}.prj-tab-section-title-row{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.prj-tab-section-title-row .prj-tab-section-hd{margin:0}.project-microsoft-sync{gap:.65rem;display:grid}.project-microsoft-sync__sub{color:var(--muted);margin:.15rem 0 0;font-size:.76rem;line-height:1.35}.project-microsoft-sync__action,.project-microsoft-sync__open{align-items:center;gap:.35rem;min-height:30px;display:inline-flex}.project-microsoft-sync__linked,.project-microsoft-sync__empty{background:color-mix(in srgb, var(--surface) 90%, var(--accent) 10%);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:.65rem;min-width:0;padding:.62rem .72rem;display:flex}.project-microsoft-sync__linked{flex-wrap:wrap;justify-content:space-between;align-items:flex-start}.project-microsoft-sync__folder{align-items:center;gap:.55rem;min-width:min(100%,260px);display:flex}.project-microsoft-sync__folder>div{gap:.12rem;min-width:0;display:grid}.project-microsoft-sync__folder strong,.project-microsoft-sync__entry-main strong,.project-microsoft-sync__candidate strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-microsoft-sync__folder span,.project-microsoft-sync__entry-main small,.project-microsoft-sync__candidate small,.project-microsoft-sync__empty span{color:var(--muted);font-size:.74rem;line-height:1.35}.project-microsoft-sync__stats{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.project-microsoft-sync__stats span{background:var(--surface-muted);border:1px solid var(--border);color:var(--ink);border-radius:999px;padding:.22rem .45rem;font-size:.7rem;font-weight:750;line-height:1}.project-microsoft-sync__note{flex-basis:100%;margin:0}.project-microsoft-sync__search{gap:.28rem;display:grid}.project-microsoft-sync__searchbar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:.42rem;max-width:520px;min-height:34px;padding:0 .55rem;display:flex}.project-microsoft-sync__searchbar input{color:var(--ink);background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:.82rem}.project-microsoft-sync__candidates,.project-microsoft-sync__entries{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.4rem;display:grid}.project-microsoft-sync__candidate,.project-microsoft-sync__entry{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--ink);text-align:left;align-items:center;gap:.5rem;min-width:0;padding:.5rem .6rem;text-decoration:none;display:flex}.project-microsoft-sync__candidate{cursor:pointer}.project-microsoft-sync__candidate:hover,.project-microsoft-sync__entry:hover{border-color:color-mix(in srgb, var(--accent) 46%, var(--border));box-shadow:0 8px 18px #0f172a14}.project-microsoft-sync__candidate>span,.project-microsoft-sync__entry-main{gap:.12rem;min-width:0;display:grid}.project-microsoft-sync__candidate svg:last-child{margin-left:auto}.project-microsoft-sync__entry{justify-content:space-between}.project-microsoft-sync__entry--deleted{opacity:.68}.project-microsoft-sync__entry .prj-status-chip{flex-shrink:0}.business-files{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);gap:.65rem;min-width:0;padding:.78rem;display:grid;position:relative}.business-files__head{justify-content:space-between;align-items:flex-start;gap:.75rem;min-width:0;display:flex}.business-files__head>div{min-width:0}.business-files__head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem;min-width:0;display:flex}.business-files__path{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:.12rem 0 0;font-size:.76rem;line-height:1.35;overflow:hidden}.business-files__policy{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.business-files__policy span{background:var(--surface-muted);border:1px solid var(--border);color:var(--ink);border-radius:999px;align-items:center;gap:.28rem;min-height:24px;padding:.22rem .48rem;font-size:.7rem;font-weight:750;line-height:1;display:inline-flex}.business-files__loading{color:var(--muted);padding:.4rem 0;font-size:.82rem}.business-files__upload-status{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:.72rem;font-weight:720;line-height:1.35;overflow:hidden}.business-files__upload-status--error{color:var(--danger,#dc2626)}.business-files__toolbar{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:.55rem;min-width:0;padding:.42rem;display:flex}.business-files__breadcrumbs{flex:1;align-items:center;gap:.2rem;min-width:0;display:flex;overflow:hidden}.business-files__breadcrumbs button,.business-files__crumb{align-items:center;min-width:0;display:inline-flex}.business-files__breadcrumbs button{color:var(--ink);cursor:pointer;font:inherit;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:220px;padding:.16rem .18rem;font-size:.75rem;font-weight:780;overflow:hidden}.business-files__crumb{color:var(--muted);gap:.12rem}.business-files__toolbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem;min-width:0;display:flex}.business-files__sort{align-items:center;gap:.28rem;min-width:0;display:inline-flex}.business-files__sort span{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:800}.business-files__sort select,.business-files__field select,.business-files__field input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);font:inherit;min-width:0;min-height:32px;padding:.34rem .5rem}.business-files__add,.business-files__more{position:relative}.business-files__add-menu,.business-files__row-menu{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);z-index:12;flex-direction:column;min-width:145px;padding:.26rem;display:inline-flex;position:absolute;top:calc(100% + .28rem);right:0;box-shadow:0 14px 32px #0f172a29}.business-files__add-menu button,.business-files__row-menu button{border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:.36rem;min-height:30px;padding:.3rem .42rem;font-size:.76rem;font-weight:720;display:flex}.business-files__add-menu button:hover,.business-files__row-menu button:hover{background:var(--surface-muted)}.business-files__add-menu button:disabled,.business-files__row-menu button:disabled{cursor:not-allowed;opacity:.45}.business-files__file-input{display:none}.business-files__dropzone{border:1px solid var(--border);border-radius:var(--radius-md);min-width:0;min-height:128px;transition:border-color .16s,box-shadow .16s,background .16s;overflow:hidden}.business-files__dropzone--active{background:color-mix(in srgb, var(--accent) 6%, var(--surface));border-color:color-mix(in srgb, var(--accent) 52%, var(--border));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent)}.business-files__list{min-width:0;display:grid}.business-files__list-head,.business-files__row{grid-template-columns:minmax(210px,1fr) minmax(88px,.22fr) 92px auto;align-items:center;gap:.5rem;min-width:0;display:grid}.business-files__list-head{background:var(--surface-muted);border-bottom:1px solid var(--border);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;min-height:30px;padding:.36rem .55rem;font-size:.67rem;font-weight:850}.business-files__row{background:var(--surface);border-bottom:1px solid var(--border-soft,var(--border));min-height:52px;padding:.42rem .55rem}.business-files__row:last-child{border-bottom:0}.business-files__row--folder{background:color-mix(in srgb, var(--surface) 94%, var(--accent) 6%)}.business-files__row--drop{background:color-mix(in srgb, var(--accent) 10%, var(--surface));outline:2px solid color-mix(in srgb, var(--accent) 42%, transparent);outline-offset:-2px}.business-files__row-main{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.48rem;min-width:0;display:grid}.business-files__row-main>div{gap:.1rem;min-width:0;display:grid}.business-files__icon{color:var(--accent);justify-content:center;align-items:center;display:inline-flex}.business-files__name{color:var(--ink);cursor:pointer;font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;min-width:0;padding:0;font-size:.82rem;font-weight:780;overflow:hidden}.business-files__meta,.business-files__canonical,.business-files__warning{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.7rem;line-height:1.25;overflow:hidden}.business-files__canonical{font-family:var(--mono-font,ui-monospace, SFMono-Regular, Menlo, monospace)}.business-files__warning{color:var(--danger,#dc2626)}.business-files__updated{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.7rem;font-weight:700;overflow:hidden}.business-files__actions{justify-content:flex-end;align-items:center;gap:.28rem;min-width:0;display:inline-flex}.business-files__sync{background:color-mix(in srgb, var(--green,#2f9e44) 14%, var(--surface));border:1px solid color-mix(in srgb, var(--green,#2f9e44) 36%, var(--border));color:var(--ink);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:145px;padding:.22rem .42rem;font-size:.66rem;font-weight:760;line-height:1;overflow:hidden}.business-files__sync--warn{background:color-mix(in srgb, var(--orange,#f59f00) 14%, var(--surface));border-color:color-mix(in srgb, var(--orange,#f59f00) 36%, var(--border))}.business-files__modal-backdrop{z-index:80;background:#0f172a52;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.business-files__modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);gap:.72rem;width:100%;max-width:min(420px,100vw - 2rem);padding:.82rem;display:grid;box-shadow:0 24px 64px #0f172a3d}.business-files__modal-head,.business-files__modal-actions{justify-content:space-between;align-items:center;gap:.45rem;display:flex}.business-files__modal-head h4{margin:0;font-size:.92rem}.business-files__modal-actions{justify-content:flex-end}.business-files__field{gap:.28rem;display:grid}.business-files__field span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;font-weight:820}@media (width<=760px){.business-files__head,.business-files__toolbar,.business-files__row{align-items:stretch}.business-files__head,.business-files__toolbar{flex-direction:column}.business-files__head-actions,.business-files__toolbar-actions{justify-content:flex-start;width:100%}.business-files__list-head{display:none}.business-files__row{grid-template-columns:1fr;gap:.34rem}.business-files__updated{display:none}.business-files__actions{justify-content:flex-start}}.project-schedule-panel{gap:.65rem;display:grid}.project-schedule-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;display:flex}.project-schedule-sync{min-height:32px;padding:.35rem .65rem}.project-schedule-stats{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:8px;display:grid}.project-schedule-panel .stat-card{gap:2px;padding:.62rem .72rem}.project-schedule-panel .stat-card-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:1.05rem;line-height:1.15;overflow:hidden}.project-schedule-delta{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--muted);flex-wrap:wrap;align-items:center;gap:.35rem .55rem;padding:.45rem .6rem;display:flex}.project-schedule-delta strong{color:var(--ink)}.project-schedule-delta__warn{color:var(--orange,#f59f00)!important}.project-schedule-delta__good{color:var(--green)!important}.project-schedule-seed-result{margin-top:-.15rem}.project-schedule-table{border:1px solid var(--border);border-radius:var(--radius-md);max-height:430px;overflow:auto}.project-schedule-table__row{border-top:1px solid var(--border-soft,var(--border));grid-template-columns:70px minmax(130px,1.1fr) minmax(190px,2fr) minmax(120px,.9fr) 82px minmax(150px,1fr) minmax(96px,.8fr);align-items:center;gap:8px;min-width:920px;min-height:34px;padding:.38rem .55rem;display:grid}.project-schedule-table__row:first-child{border-top:0}.project-schedule-table__row>span,.project-schedule-table__row>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-schedule-table__head{background:var(--surface-muted);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;z-index:1;font-size:.68rem;font-weight:800;position:sticky;top:0}.project-schedule-kind{border-radius:999px;justify-content:center;align-items:center;min-height:20px;padding:.16rem .38rem;font-size:.68rem;font-weight:800;line-height:1;display:inline-flex}.project-schedule-kind--phase{color:var(--accent);background:#5951ff1f}.project-schedule-kind--item{color:var(--green);background:#20c9971f}.project-schedule-more{justify-self:end}.quote-scope-editor{gap:.65rem;display:grid}.rich-text-viewer{color:var(--ink);font-size:var(--font-size-base);overflow-wrap:anywhere;line-height:1.6}.rich-text-viewer :where(p,ul,ol,blockquote,h1,h2,h3,h4){margin:0 0 .55rem}.rich-text-viewer :where(p,ul,ol,blockquote,h1,h2,h3,h4):last-child{margin-bottom:0}.rich-text-viewer :where(ul,ol){padding-left:1.25rem}.rich-text-viewer h1{font-size:1.25rem}.rich-text-viewer h2{font-size:1.12rem}.rich-text-viewer h3{font-size:1rem}.rich-text-viewer h4{font-size:.92rem}.imported-line-description{color:var(--muted);font-size:var(--font-size-sm);margin-top:.25rem}.imported-line-description :where(p,ul,ol){margin-bottom:.25rem}.quote-detail-lines-workspace.prj-tab-section{padding:.55rem .7rem}.prj-tab-toolbar{border-bottom:1px solid var(--border);background:#f6f4ef66;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;padding:.5rem 1rem;display:flex}.prj-tab-count{color:var(--muted);font-size:.78rem}.prj-tab-total{color:var(--ink);margin-left:auto;font-size:.78rem;font-weight:600}.prj-tab-toolbar .prj-tab-total~.prj-tab-total{margin-left:0}.project-overview-commandbar{justify-content:space-between;align-items:center;gap:.5rem;min-width:0;margin-bottom:.55rem;display:flex}.project-overview-commandbar__sections{overscroll-behavior-inline:contain;flex:auto;min-width:0;overflow-x:auto}.project-overview-commandbar__actions{flex:none;align-items:center;gap:.35rem;display:flex}@media (width<=760px){.project-overview-commandbar{flex-direction:column;align-items:stretch}.project-overview-commandbar__actions{justify-content:flex-end}}.prj-tab-error{border-radius:var(--radius-sm);color:#b32626;background:#e0313114;border:1px solid #e0313147;margin:.6rem 0 0;padding:.5rem .7rem;font-size:.8rem}.prj-detail-grid{grid-template-columns:repeat(2,1fr);gap:.55rem 1rem;display:grid}.prj-detail-field{flex-direction:column;gap:.18rem;display:flex}.prj-detail-lbl{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:.7rem;font-weight:600}.prj-detail-val{color:var(--ink);align-items:center;gap:.35rem;font-size:.86rem;display:flex}.sales-intake-card{border:1px solid var(--border);border-radius:var(--radius-md);background:#f8fafccc;gap:.55rem;padding:.75rem;display:grid}.sales-intake-card__head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.sales-intake-card__head>div{gap:.18rem;min-width:0;display:grid}.sales-intake-card__head strong{color:var(--ink);font-size:.86rem}.sales-intake-card__head span{color:var(--muted);font-size:.72rem;line-height:1.3}.sales-intake-checks{flex-wrap:wrap;gap:.35rem;display:flex}.sales-intake-check{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:999px;padding:.2rem .45rem;font-size:.68rem;font-weight:700}.sales-intake-check--done{color:#0b6b43;background:#e3f7ecbd;border-color:#1c7e5440}.sales-intake-flags{flex-wrap:wrap;gap:.75rem;padding:.2rem 0 .35rem;display:flex}.check-row{color:var(--ink);align-items:center;gap:.45rem;font-size:.82rem;font-weight:650;display:inline-flex}.check-row input{width:1rem;height:1rem;accent-color:var(--accent)}.prj-mono{font-family:ui-monospace,monospace;font-size:.8rem}.prj-jobs-list,.prj-vars-list{flex-direction:column;gap:.5rem;padding:.5rem 1rem;display:flex}.prj-tab-section .prj-vars-list{padding:0}.prj-job-row{border:1px solid var(--border);background:#ffffffb3;border-radius:8px;align-items:center;gap:.75rem;padding:.6rem .75rem;display:flex}.prj-job-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.prj-job-info{flex-direction:column;flex:1;gap:.12rem;min-width:0;display:flex}.prj-job-title{color:var(--ink);font-size:.86rem;font-weight:500}.prj-job-dates{color:var(--muted);font-size:.76rem}.prj-var-row{border:1px solid var(--border);background:#ffffffb3;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.65rem .75rem;display:flex}.prj-var-info{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.prj-var-title{color:var(--ink);font-size:.86rem;font-weight:500}.prj-var-reason{color:var(--muted);font-size:.78rem}.prj-var-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.4rem;display:flex}.prj-var-value{color:var(--ink);font-family:Space Grotesk,sans-serif;font-size:.9rem;font-weight:700}.job-quote-shell{border:1px solid var(--quote-make-border,var(--border));border-radius:8px;min-height:0;margin:.55rem .85rem;overflow:hidden;box-shadow:0 12px 28px #0f172a14}.job-quote-shell .quote-make-topbar{min-height:34px}.job-quote-shell .quote-make-brand{text-decoration:none}.job-quote-shell .quote-make-tabs{min-height:33px}.job-quote-shell .quote-make-tab{height:33px}.job-quote-shell__scroll{min-height:0;padding-bottom:0;overflow-x:auto}.job-quote-shell__scroll:not(.quote-make-scroll--worksheet){padding:12px}.job-quote-shell .quote-make-worksheet{border-top:0}.job-quote-toolbar-total{color:var(--muted);font-size:var(--font-size-xs);white-space:nowrap;align-items:baseline;gap:.28rem;display:inline-flex}.job-quote-toolbar-total strong{color:var(--ink);font-variant-numeric:tabular-nums}.job-quote-shell .quote-make-grid{grid-template-columns:78px minmax(290px,1.35fr) 64px minmax(104px,.66fr) minmax(128px,.75fr) minmax(108px,.66fr) minmax(108px,.66fr) minmax(124px,.72fr) minmax(112px,.66fr) minmax(118px,.7fr) minmax(112px,.66fr)}.job-quote-shell .quote-make-section-head,.job-quote-shell .quote-make-line{min-width:1390px}.job-quote-shell .quote-make-status-cell{grid-template-columns:minmax(0,1fr)}.job-quote-shell .quote-make-line-desc strong{color:var(--accent-strong);font-size:max(.75rem, calc(var(--font-size-sm) * var(--app-text-scale,1)));text-overflow:ellipsis;white-space:nowrap;font-weight:850;overflow:hidden}.job-quote-shell .quote-make-line-desc>span:last-child{min-width:0}.job-quote-side-totals{margin-bottom:12px}.job-quote-section-head{grid-template-columns:18px minmax(190px,1fr) minmax(68px,auto) minmax(96px,auto) minmax(132px,auto) minmax(148px,auto) minmax(176px,auto) minmax(156px,auto) minmax(164px,auto) minmax(122px,auto);display:grid}.job-quote-section-head b{margin-left:0}.job-quote-money-cell{min-width:0;color:var(--text-muted);font-size:max(var(--font-size-xs), calc(var(--font-size-xs) * var(--app-text-scale,1)));font-weight:750;line-height:1.25;display:grid}.job-quote-money-cell strong{color:var(--text);font-size:max(.8rem, calc(.8rem * var(--app-text-scale,1)));font-weight:900}.job-quote-money-cell small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.job-quote-money-cell--ok strong{color:#047857}.job-quote-money-cell--danger strong{color:#b91c1c}.job-quote-actual-separator{min-height:28px;color:var(--text-muted);font-size:max(var(--font-size-xs), calc(var(--font-size-xs) * var(--app-text-scale,1)));text-transform:uppercase;background:#fbfcff;justify-content:flex-start;font-weight:850}.job-quote-ledger-footer{border-top:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:7px;margin:10px 12px 14px;padding-top:9px;display:grid}.job-quote-ledger-footer div{border:1px solid var(--border);background:var(--surface);border-radius:7px;gap:3px;min-width:0;padding:8px 9px;display:grid}.job-quote-ledger-footer span{color:var(--text-muted);font-size:max(var(--font-size-xs), calc(var(--font-size-xs) * var(--app-text-scale,1)));text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-weight:800;overflow:hidden}.job-quote-ledger-footer strong{color:var(--text);font-size:max(.8rem, calc(.8rem * var(--app-text-scale,1)));text-overflow:ellipsis;white-space:nowrap;font-weight:900;overflow:hidden}.job-quote-footer{position:static}.job-quote-lanes{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.job-quote-ai-actions{justify-content:flex-start}.job-quote-shell .quote-make-report-card .prj-gantt{border:1px solid var(--quote-make-border);background:#fff;border-radius:8px}.job-cost-workspace__head{border-bottom:1px solid var(--border-subtle,#0f172a0f);justify-content:space-between;align-items:center;gap:.6rem;padding-bottom:.3rem;display:flex}.job-cost-workspace__head>div{gap:.1rem;min-width:0;display:grid}.job-cost-workspace__head .prj-tab-section-hd{text-transform:uppercase;margin-bottom:0;font-size:.78rem}.job-cost-workspace__head p{color:var(--muted);margin:0;font-size:.72rem}.job-commercial-strip{margin:0}.job-cost-workspace__grid{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);align-items:start;gap:.75rem;display:grid}.job-commercial-table{border:1px solid var(--border);background:#ffffffc7;border-radius:8px;min-width:0;font-size:.8rem;overflow:auto}.job-commercial-table__head,.job-commercial-row{grid-template-columns:minmax(180px,1.4fr) 96px repeat(4,92px) minmax(170px,1fr);align-items:center;gap:.55rem;min-width:950px;padding:.5rem .65rem;display:grid}.job-commercial-table__head{border-bottom:1px solid var(--border);color:var(--muted);text-transform:uppercase;background:#0f172a09;font-size:.68rem;font-weight:800}.job-commercial-row{border-bottom:1px solid #0f172a0e}.job-commercial-row:last-child{border-bottom:none}.job-commercial-row--empty{color:var(--muted);min-width:0;display:block}.job-commercial-row--total{background:#0f172a06;font-weight:800}.job-commercial-job{gap:.14rem;min-width:0;display:grid}.job-commercial-job strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.job-commercial-job small,.job-commercial-source small{color:var(--muted);font-size:.72rem}.job-commercial-num{font-variant-numeric:tabular-nums;text-align:right}.job-commercial-num--danger{color:#c92a2a}.job-commercial-num--ok{color:#087f5b}.job-commercial-source{gap:.24rem;min-width:0;display:grid}.job-commercial-burn{border-radius:var(--radius-pill);background:#0f172a14;height:5px;display:block;overflow:hidden}.job-commercial-burn>span{background:linear-gradient(90deg,#20a87a,#f59f00);max-width:100%;height:100%;display:block}.job-detail-gantt-card__head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.job-detail-gantt-card__head strong{color:var(--ink);font-family:var(--font-display);font-size:.9rem}.job-detail-gantt-card__head span{color:var(--muted);font-size:.74rem}.job-variation-workspace{gap:.5rem;margin:.55rem .85rem;display:grid}.job-variation-workspace__head,.job-variation-card__head{border-bottom:1px solid var(--border-subtle,#0f172a0f);justify-content:space-between;align-items:center;gap:.6rem;padding-bottom:.3rem;display:flex}.job-variation-workspace__head>div,.job-variation-card__head>div{gap:.1rem;min-width:0;display:grid}.job-variation-workspace__head strong,.job-variation-card__head strong{letter-spacing:.01em;text-transform:uppercase;font-size:.84rem;font-weight:800}.job-variation-workspace__head p,.job-variation-card__head span,.job-variation-hint{color:var(--muted);margin:0;font-size:.72rem}.job-variation-list{border:1px solid var(--border);background:#ffffffc7;border-radius:8px;display:grid;overflow:hidden}.job-variation-row{border-bottom:1px solid #0f172a0f;justify-content:space-between;align-items:center;gap:.75rem;padding:.58rem .72rem;display:flex}.job-variation-row:last-child{border-bottom:none}.job-variation-row>div:first-child{gap:.12rem;min-width:0;display:grid}.job-variation-row strong{color:var(--ink);font-size:.83rem}.job-variation-row span,.job-variation-row small{color:var(--muted);font-size:.74rem}.job-variation-values{white-space:nowrap;justify-items:end;gap:.1rem;display:grid}.job-variation-values span{color:var(--ink);font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:800}.job-variation-drawer{gap:.8rem;display:grid}.job-variation-form-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:.65rem;display:grid}.job-variation-form-grid__wide{grid-column:1/-1}.job-variation-form-grid label,.job-variation-notes,.job-variation-remove-row label{color:var(--muted);gap:.28rem;font-size:.72rem;font-weight:800;display:grid}.job-variation-form-grid input,.job-variation-form-grid select,.job-variation-form-grid textarea,.job-variation-notes textarea,.job-variation-remove-row input{border:1px solid var(--border);color:var(--ink);font:inherit;background:#fff;border-radius:7px;min-width:0;padding:.48rem .55rem}.job-variation-summary{margin:0}.job-variation-card{border:1px solid var(--border);background:#f8fafcb8;border-radius:8px;gap:.7rem;padding:.72rem;display:grid}.job-variation-removal-list{background:#fff;border:1px solid #0f172a14;border-radius:8px;display:grid;overflow:hidden}.job-variation-removal-toolbar{grid-template-columns:minmax(220px,1fr) auto auto;align-items:end;gap:.55rem;display:grid}.job-variation-removal-toolbar label{color:var(--muted);gap:.28rem;font-size:.72rem;font-weight:800;display:grid}.job-variation-removal-toolbar input[type=text],.job-variation-removal-toolbar input:not([type]){border:1px solid var(--border);color:var(--ink);font:inherit;background:#fff;border-radius:7px;min-width:0;padding:.48rem .55rem}.job-variation-selected-toggle{border:1px solid var(--border);white-space:nowrap;background:#fff;border-radius:999px;flex-direction:row;align-items:center;gap:.35rem;min-height:36px;padding:.35rem .6rem;display:flex!important}.job-variation-selected-toggle input{width:14px}.job-variation-removal-toolbar>span{color:var(--muted);white-space:nowrap;justify-self:end;font-size:.72rem;font-weight:800}.job-variation-remove-row{border-bottom:1px solid #0f172a0f;grid-template-columns:minmax(210px,1.2fr) 82px minmax(180px,1fr) 96px;align-items:center;gap:.55rem;padding:.55rem .6rem;display:grid}.job-variation-remove-row:last-child{border-bottom:none}.job-variation-remove-main{flex-direction:row;align-items:center;gap:.55rem;display:flex!important}.job-variation-remove-main input{width:16px}.job-variation-remove-main span,.job-variation-remove-values{gap:.12rem;min-width:0;display:grid}.job-variation-remove-main strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.job-variation-remove-main small,.job-variation-remove-values small{color:var(--muted);font-size:.7rem}.job-variation-remove-values{justify-items:end}.job-variation-remove-values span{color:var(--ink);font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:800}.job-variation-quote-table{min-width:0;overflow-x:auto}.job-variation-quote-table .qlt-shell{min-width:760px}.job-variation-actions{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}@media (width<=1180px){.job-quote-lanes,.job-cost-workspace__grid,.job-variation-form-grid,.job-variation-removal-toolbar,.job-variation-remove-row{grid-template-columns:1fr}.job-variation-workspace__head,.job-variation-card__head,.job-variation-row{flex-direction:column;align-items:stretch}.prj-activity{display:none}}@media (width<=900px){.prj-cols-header,.prj-row{grid-template-columns:24px 1fr 100px 80px}.prj-row>:nth-child(n+4),.prj-cols-header>:nth-child(n+4){display:none}}@media (width<=600px){.prj-cols-header,.prj-row{grid-template-columns:24px minmax(0,1fr)}.prj-row{padding-right:.55rem}.prj-row>:nth-child(n+3),.prj-cols-header>:nth-child(n+3){display:none}.prj-row-name{gap:.35rem;overflow:hidden}.prj-row-code{text-overflow:ellipsis;white-space:nowrap;max-width:5.5rem;overflow:hidden}.prj-row-label{flex:auto;min-width:0}.prj-row-subtask{display:none}}.prj-status-chip--neutral{background:var(--grey-soft);color:var(--grey-text)}.prj-status-chip--info{background:var(--blue-soft);color:var(--blue-text)}.prj-status-chip--success{background:var(--green-soft);color:var(--green-text)}.prj-status-chip--warning{background:var(--yellow-soft);color:var(--yellow-text)}.prj-status-chip--danger{background:var(--red-soft);color:var(--red-text)}.prj-status-chip--purple{background:var(--purple-soft);color:var(--purple-text)}.prj-status-chip--cyan{color:#0e6e7d;background:#15aabf1f}html[data-theme=dark] .prj-status-chip--cyan{color:#4dd4e8}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .prj-status-chip--cyan{color:#4dd4e8}}.prj-inline-callout{border:1px solid var(--border);font-size:var(--font-size-sm);border-radius:6px;padding:4px 6px}.prj-inline-callout--danger{background:var(--red-soft);color:var(--red-text);border-color:#d92d2073}.prj-inline-callout--warning{background:var(--yellow-soft);color:var(--yellow-text);border-color:#d9981273}
