.case-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.case-summary .stat strong{font-size:21px;overflow-wrap:anywhere}.case-tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--border);margin-top:12px}.case-tabs button{border:0;border-bottom:3px solid transparent;border-radius:6px 6px 0 0;background:transparent;padding:15px 18px}.case-tabs [aria-selected=true]{border-bottom-color:var(--brand-sky);background:var(--surface,white);color:var(--accent-text,var(--brand-blue));font-weight:700}.case-tabs button:focus-visible{outline:2px solid var(--brand-sky)}.case-discard{display:flex;justify-content:end;margin:8px 0 18px}.case-discard button{font-size:12px}#case-panels>[hidden]{display:none!important}.phase-tracking td,.phase-tracking th{vertical-align:top}.phase-tracking td small{display:block;margin-top:6px}.phase-tracking td button{display:block;margin-bottom:6px}.phase-tracking td:nth-child(4){font-size:12px;line-height:1.7}#phase-editor{border-top:2px solid var(--brand-sky);scroll-margin-top:20px}#phase-editor .form-grid label{display:flex;flex-direction:column;gap:8px}#phase-editor input,#phase-editor select,#phase-editor textarea{padding:10px;border:1px solid var(--border);border-radius:6px;font:inherit;color:var(--ink);width:100%;box-sizing:border-box}.phase-history-item{padding:16px 0;border-bottom:1px solid var(--border)}.phase-history-item p{white-space:pre-wrap}.case-overview-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.case-overview-list>div{padding:16px;border:1px solid var(--border);border-radius:8px}.case-overview-list strong{display:block;color:var(--accent-text,var(--brand-blue));margin-bottom:6px}@media(max-width:1200px){.case-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.case-summary,.case-overview-list{grid-template-columns:1fr}.case-tabs{gap:0}.case-tabs button{padding:12px 10px;font-size:12px}}
.phase-evidence{margin:16px 0 22px;padding:16px;border:1px solid var(--line-soft,#d9e3ef);border-radius:8px;background:var(--surface-alt,#f6f9fd)}.phase-evidence h4{margin:0 0 12px}.phase-evidence dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0}.phase-evidence dt{font-size:11px;color:var(--muted)}.phase-evidence dd{margin:5px 0 0;line-height:1.55}.phase-evidence p{margin:12px 0 0;color:var(--muted);font-size:11px}.phase-evidence .warning{color:var(--danger,#a33232);font-weight:600}.phase-delivery-confirmation{margin-top:14px;border-top:1px solid var(--border);padding-top:12px}.phase-delivery-confirmation>summary{cursor:pointer;font-weight:650;color:var(--accent-text,var(--brand-blue))}.phase-delivery-confirmation form{margin-top:12px}.phase-delivery-confirmation .check{display:flex;align-items:flex-start;gap:8px;margin:12px 0;font-size:12px}.phase-delivery-confirmation .check input{width:auto;margin-top:3px}.phase-delivery-confirmed strong{color:var(--success,#237044)}@media(max-width:700px){.phase-evidence dl{grid-template-columns:1fr}}
.case-full-title{font-size:14px;line-height:1.6;margin:-12px 0 24px;color:var(--muted);max-width:1000px}
.project-heading .back{margin-bottom:12px}
.project-heading .heading{margin-bottom:12px;align-items:center}
.project-heading .heading h1{font-size:clamp(23px,2.2vw,30px);line-height:1.3;margin:7px 0}
.project-heading .heading p{margin:0}
.project-heading .case-mission{margin:0 0 12px}
.project-heading+.case-tabs{margin-top:0;margin-bottom:20px}
.project-navigation{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--border)}
.project-switch{display:flex;align-items:center;gap:10px;min-width:0;width:fit-content;max-width:100%;padding:6px 8px;border-radius:6px;text-decoration:none;color:var(--ink)}
.project-switch.next{justify-self:end;text-align:right}.project-switch-arrow{font-size:23px;color:var(--accent-text,var(--brand-blue));flex:none}.project-switch-text{display:grid;min-width:0;gap:3px;font-size:12px;color:var(--muted)}
.project-switch-text strong{font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-switch[aria-disabled=true]{opacity:.35}
a.project-switch:hover{background:var(--surface,white)}.project-navigation a:focus-visible{outline:2px solid var(--brand-sky);outline-offset:3px}
.project-navigation-center{display:grid;justify-items:center;gap:4px;font-size:13px}.project-navigation-center a{color:var(--accent-text,var(--brand-blue));text-decoration:none;padding:6px}.project-navigation-center a:hover{text-decoration:underline}.project-navigation-center small{font-size:11px;color:var(--muted)}
@media(max-width:650px){.project-navigation{gap:4px}.project-switch{padding:6px 2px;gap:4px}.project-switch-text strong{display:none}.project-switch-text{font-size:11px}.project-navigation-center{font-size:12px}}
.finance-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--border);margin:0 0 24px}
.finance-tabs a{padding:15px 18px;border-bottom:3px solid transparent;border-radius:6px 6px 0 0;text-decoration:none;color:var(--ink);font-weight:500}
.finance-tabs a[aria-current=page]{border-bottom-color:var(--brand-sky);background:var(--surface,white);color:var(--accent-text,var(--brand-blue));font-weight:700}
.finance-tabs a:focus-visible{outline:2px solid var(--brand-sky)}
@media(max-width:650px){.finance-tabs{gap:0}.finance-tabs a{padding:12px 10px;font-size:12px}}
.case-discard[hidden],[data-dirty-actions][hidden]{display:none!important}
.case-discard{align-items:center}
.cost-tracking{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}
.cost-explanation{margin:0 0 22px;font-size:13px;color:var(--muted);line-height:1.7}
.cost-explanation summary{cursor:pointer;color:var(--accent-text,var(--brand-blue));width:fit-content}
.cost-explanation p{max-width:95ch;margin:10px 0}
.project-production-records>summary,.project-financial-terms>summary{padding:18px 24px;cursor:pointer;color:var(--accent-text,var(--brand-blue));font-weight:600}
.project-financial-terms>.panel{border:0;box-shadow:none;margin:0}
.expense-table.operating-expense-table{min-width:1160px;width:100%;table-layout:fixed}
.expense-table td,.expense-table th{vertical-align:top;overflow-wrap:anywhere;padding:16px 10px}
.expense-table td{font-size:12px}
.expense-table th:nth-child(1){width:9%}.expense-table th:nth-child(2){width:16%}.expense-table th:nth-child(3){width:11%}.expense-table th:nth-child(4){width:11%}.expense-table th:nth-child(5){width:11%}.expense-table th:nth-child(6){width:9%}.expense-table th:nth-child(7){width:13%}.expense-table th:nth-child(8){width:11%}.expense-table th:nth-child(9){width:9%}
.expense-table td:nth-child(3){white-space:nowrap}
.expense-table .numeric{white-space:nowrap}.expense-table .numeric small{white-space:normal}
.expense-table button,.expense-table .button,.expense-table .button-link{font-size:12px;padding:8px 10px;white-space:normal;overflow-wrap:normal}
.expense-table summary{cursor:pointer;color:var(--accent-text,var(--brand-blue));font-size:11px;margin-top:8px}.expense-table details p{font-size:11px;line-height:1.6}
.supplier-shortcuts h2{margin:0;font-size:20px}.supplier-shortcuts .actions{flex-wrap:wrap;margin-bottom:0}
.directory-table{min-width:800px;table-layout:fixed}
.directory-table th:nth-child(1){width:26%}.directory-table th:nth-child(2){width:25%}.directory-table th:nth-child(3){width:24%}.directory-table th:nth-child(4){width:25%}
.directory-table td,.directory-table th{padding:10px 12px;overflow-wrap:anywhere}
.directory-table td{font-size:12px;line-height:1.4}
.directory-table td strong{margin:0 0 3px}.directory-table td small{display:block;font-size:11px;margin-top:3px;line-height:1.4;color:var(--muted)}
.directory-row-actions{display:flex;gap:5px;flex-wrap:wrap;align-items:center}
.directory-row-actions button,.directory-row-actions .button{display:inline-flex;gap:5px;align-items:center;justify-content:center;margin:0;padding:6px 8px;min-height:32px;font-size:11px;line-height:1.3;white-space:nowrap;background:var(--surface);color:var(--accent-text,var(--brand-blue));border:1px solid var(--border)}
.directory-row-actions button:hover,.directory-row-actions .button:hover{background:var(--surface-alt);border-color:var(--brand-blue)}
.directory-project-count{font-size:10px;font-weight:700;border-radius:4px;background:var(--surface-alt);padding:1px 4px}
@media(max-width:650px){.directory-row-actions button,.directory-row-actions .button{min-height:40px}}
#production-expense-payments:empty{display:none}
@media(max-width:650px){.project-heading .heading{gap:12px}.cost-tracking{grid-template-columns:1fr}.project-expenses .panel-head{align-items:flex-start;flex-direction:column}.project-expenses .actions{flex-wrap:wrap}}


@media(max-width:760px){
  .expense-table.operating-expense-table{display:block;min-width:0;width:100%}.expense-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .expense-table tbody{display:block}.expense-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin:12px 0;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface,white)}
  .expense-table td{display:block;min-width:0;max-width:none!important;width:auto!important;padding:10px 12px;border:0;overflow-wrap:anywhere;text-align:left}
  .expense-table td::before{content:attr(data-label);display:block;font-size:10px;font-weight:600;color:var(--muted);margin-bottom:5px}
  .expense-table td:nth-child(2),.expense-table td:nth-child(4),.expense-table td:nth-child(9){grid-column:1/-1}
  .expense-table td:nth-child(1){grid-column:1/-1;background:var(--surface-alt,#f5f8fc)}.expense-table td:nth-child(2){padding-top:4px}
  .expense-table td:nth-child(3){grid-column:1}.expense-table td:nth-child(4){grid-column:2}
  .expense-table .expense-row-actions{padding-top:5px}.expense-table button,.expense-table .button{max-width:100%;white-space:normal}

  .expense-table td:nth-child(3),.expense-table .numeric{white-space:normal}
}

/* Shared schedule preparation and direct access to production. */
.schedule-builder{padding:16px;border:1px solid var(--border);border-radius:8px;margin-bottom:18px;background:var(--surface-alt,#f5f8fc)}
.schedule-builder h3{margin-top:0}.schedule-builder [hidden]{display:none!important}
.schedule-builder .inline-check,#financial-plan-form>.inline-check{display:flex;align-items:center;gap:8px;margin:12px 0}
.schedule-builder .inline-check input,#financial-plan-form>.inline-check input{width:auto}
.schedule-allocations{margin:18px 0}.schedule-allocations>summary,.budget-person-details>summary{cursor:pointer;font-weight:600;padding:10px 0}
.contract-shortcuts{flex-wrap:wrap}.budget-phase-jump{display:flex;gap:8px;align-items:center;font-size:12px}.budget-phase-jump select{max-width:320px}
.budget-phase{scroll-margin-top:20px}.budget-person-details{margin-bottom:12px}
#project-contract-details>.panel,#project-administration>.panel{border:0;margin:0}
@media(max-width:760px){.budget-phase-jump{display:block}.budget-phase-jump select{max-width:100%;width:100%}.schedule-builder{padding:12px}}

.schedule-custom{margin:14px 0}.schedule-custom>summary{cursor:pointer;font-weight:600;padding:10px 0}.schedule-preview th,.schedule-preview td{padding:10px 12px}
#project-finance-budget>.stats{gap:12px;margin-bottom:16px}#project-finance-budget>.stats .stat{padding:14px 18px}

.schedule-builder .form-grid>label{display:flex;flex-direction:column;gap:7px;font-size:12px}
.schedule-builder input:not([type=checkbox]),.schedule-builder select,.schedule-builder textarea,.budget-phase-jump select{font:inherit;padding:9px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);box-sizing:border-box;min-width:0}
.schedule-builder textarea{display:block;width:100%;margin-top:7px}.schedule-builder [data-schedule-market]>label{display:block;margin-top:12px;font-size:12px}
.budget-save{position:sticky;top:10px;z-index:3;box-shadow:0 5px 18px #0001;padding:12px 16px;background:var(--surface)}
.budget-save>label{display:flex;align-items:center;gap:12px;font-size:12px}.budget-save>label>input{flex:1;min-width:0;font:inherit;padding:8px;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--text)}
#project-finance-budget>.stats .stat strong{font-size:24px}#project-finance-budget>.stats .stat label{margin-bottom:7px}#project-finance-budget>.stats .stat small{margin-top:6px}
@media(max-width:760px){.budget-save>label{display:block}.budget-save>label>input{width:100%;box-sizing:border-box}.budget-save .toolbar{flex-wrap:wrap}}

.production-budget-table th.numeric{white-space:normal;overflow-wrap:normal;line-height:1.5}

.project-finance-tabs{display:flex;flex-wrap:wrap;gap:4px;width:fit-content;max-width:100%;padding:4px;margin:0 0 20px;border:1px solid var(--border);border-radius:9px;background:var(--surface-alt,#f5f8fc)}
.project-finance-tabs button{border:1px solid transparent;border-radius:6px;padding:10px 18px;background:transparent;color:var(--muted)}
.project-finance-tabs [aria-selected=true]{background:var(--surface,white);border-color:var(--border);color:var(--accent-text,var(--brand-blue));font-weight:700}
.project-finance-tabs button:focus-visible{outline:2px solid var(--brand-sky);outline-offset:2px}
#project-finance-budget[hidden],#project-finance-tracking[hidden]{display:none!important}
@media(max-width:650px){.project-finance-tabs button{padding:9px 12px;font-size:12px}}
