.fs-row{display:grid;grid-template-columns:150px 1fr auto auto;gap:6px;align-items:center;margin-bottom:6px}
.fs-row input[type=date],.fs-row input[type=text]{min-width:0}
.fs-paid{display:flex;align-items:center;gap:5px;font-size:13px;white-space:nowrap;color:var(--muted)}
.fs-del{padding:4px 6px}
@media (max-width:520px){.fs-row{grid-template-columns:1fr 1fr;}.fs-paid{grid-column:1}.fs-del{justify-self:end}}

.fsale{display:grid;grid-template-columns:150px 1fr 1fr auto auto;gap:6px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--line)}
.fsale input{min-width:0}.fsale .fs-what{grid-column:1/3}.fsale .fs-party{grid-column:3/4}.fs-due{grid-column:4/6;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);white-space:nowrap}.fs-due input{width:140px}
.fin-sales{margin-top:6px;font-size:13px}.fin-sales summary{cursor:pointer;color:var(--muted)}
.fsl{display:grid;grid-template-columns:70px 1fr auto auto auto;gap:10px;align-items:baseline;padding:4px 0;border-bottom:1px solid var(--line)}
@media (max-width:520px){.fsale{grid-template-columns:1fr 1fr}.fsale .fs-what,.fsale .fs-party,.fs-due{grid-column:1/3}.fsl{grid-template-columns:60px 1fr auto}.fsl>span:nth-child(4),.fsl>span:nth-child(5){grid-column:2/4}}
.debt-row.late{border-left:3px solid var(--danger)}.debt-items{margin-top:6px;font-size:13px}.fsl.neg b{color:var(--danger)}
/* выплаты сотрудникам по проекту: дата, кому, сумма, удалить; ниже — за что */
.fstaff{display:grid;grid-template-columns:150px 1fr 140px auto;gap:6px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--line)}
.fstaff input,.fstaff select{min-width:0}.fstaff .fw-note{grid-column:1/5}
@media (max-width:520px){.fstaff{grid-template-columns:1fr 1fr auto}.fstaff select{grid-column:1/4;grid-row:2}.fstaff .fw-note{grid-column:1/4}}
/* страница «Финансы проекта» */
.fp-back{font-size:20px;text-decoration:none;color:var(--muted);padding:0 6px 0 0}.fp-back:hover{color:var(--text)}
.fp-link{color:inherit;text-decoration:none}.fp-link:hover{text-decoration:underline}
.fp-table{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--card,transparent)}
.fp-th,.fp-tr{display:grid;gap:8px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line)}
.fp-th{font-size:12px;color:var(--muted);padding-top:6px;padding-bottom:6px}.fp-tr:last-of-type{border-bottom:0}
.fp-tr input,.fp-tr select{min-width:0;width:100%}
.fp-sales .fp-th,.fp-sales .fp-tr{grid-template-columns:140px minmax(180px,2fr) minmax(120px,1fr) 110px 100px 140px 70px 34px}
.fp-what{min-width:0}.fp-ext:empty{display:none}.fp-ext{margin-top:4px}
.fp-pays .fp-th,.fp-pays .fp-tr{grid-template-columns:120px minmax(160px,2fr) 120px 140px minmax(160px,1.5fr)}
.fp-staff .fp-th,.fp-staff .fp-tr{grid-template-columns:140px 200px 120px minmax(160px,1fr) 34px}
.fp-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px 16px;max-width:900px}.fp-form label{display:flex;flex-direction:column;gap:4px}.fp-form .fp-wide{grid-column:1/-1}
.fp-bar{position:sticky;bottom:0;display:none;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg,#fff);box-shadow:0 -4px 16px rgba(0,0,0,.06)}.fp-bar.on{display:flex}
@media (max-width:900px){
  .fp-th{display:none}
  .fp-sales .fp-tr{grid-template-columns:1fr 1fr}.fp-sales .fp-what{grid-column:1/-1;order:-1}
  .fp-pays .fp-tr{grid-template-columns:1fr auto}.fp-staff .fp-tr{grid-template-columns:1fr 1fr}
}
