.contracts-workspace{display:flex;flex-direction:column;gap:12px;color:#172b45;font-size:14px;line-height:20px;min-height:0}.contract-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.contract-heading h1{font-size:28px;line-height:34px;margin:8px 0}.contract-heading small{color:#5f6f83;font-size:14px}.contract-workspace-nav,.contract-tabs,.contract-steps,.contract-toolbar,.contract-footer{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.contract-workspace-nav a{padding:8px 12px}.contract-workspace-nav a[aria-current],.contract-tabs [aria-pressed=true],.contract-steps [aria-current=step]{background:#e8f5f2;color:#0b766e}.contract-toolbar input{flex:1;max-width:350px;min-width:160px}.contract-toolbar select{width:auto;max-width:100%}.contract-summary{display:flex;flex-wrap:wrap;gap:24px;background:white;border:1px solid #e4e9f0;border-radius:12px;padding:16px}.contract-summary>div{display:grid;gap:6px;color:#5f6f83}.contract-summary strong{font-size:22px;line-height:28px;color:#172b45}.contract-table-wrap{overflow:auto;border:1px solid #e4e9f0;border-radius:12px;background:white;max-height:calc(100dvh - 320px)}.contract-table{width:100%;border-collapse:collapse}.contract-table th{background:#f6f8fb;color:#5f6f83;position:sticky;top:0;text-align:left;font-weight:500}.contract-table td,.contract-table th{padding:12px 14px;border-bottom:1px solid #e4e9f0}.contract-table small{display:block;color:#5f6f83}.contract-table a{font-weight:600}.contract-table details p{font-size:13px;max-width:280px}.contract-footer{justify-content:flex-end}.contract-footer span{margin-right:auto}.contract-empty,.contract-surface{background:white;border:1px solid #e4e9f0;padding:24px;border-radius:12px}.contract-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}.contract-form-grid label,.contract-date-rule label,.contract-price-row label,.contract-field label{display:grid;gap:6px;min-width:0}.contract-date-rule,.contract-price-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}.contract-price-row{grid-template-columns:1fr 1fr 1fr 40px;border:1px solid #e4e9f0;border-radius:8px;padding:12px}.contract-price-row .wide{grid-column:1/-1}.contract-editor input,.contract-editor select{width:100%;min-width:0;margin:0}.contract-editor input[type=checkbox]{width:auto}.contract-editor small{color:#5f6f83;font-size:13px}.contract-editor fieldset{border:0;margin:0;padding:0}.contract-editor .contract-table-wrap{max-height:none}.contract-field{padding:12px 0;border-bottom:1px solid #e4e9f0}.contract-error{color:#a12e22!important}.contract-editor h4{font-size:18px;line-height:24px;margin:24px 0 12px}
@media(max-width:899px){.contract-heading{flex-wrap:wrap}.contract-heading h1{font-size:24px}.contracts-workspace button,.contract-editor button{min-height:44px}.contract-table-wrap{max-height:none}.contract-table thead{display:none}.contract-table,.contract-table tbody{display:block}.contract-table tr{display:grid;grid-template-columns:1fr 1fr;padding:12px;border-bottom:1px solid #e4e9f0}.contract-table td{border:0;padding:6px;overflow-wrap:anywhere}.contract-table td:first-child{grid-column:1/-1}.contract-summary{gap:12px;padding:12px}.contract-summary strong{font-size:18px}.contract-steps{display:grid;grid-template-columns:1fr 1fr}.contract-form-grid,.contract-date-rule,.contract-price-row{grid-template-columns:1fr}.contract-price-row .wide{grid-column:auto}.contract-workspace-nav{gap:0}.contract-workspace-nav a{padding:8px}.contract-toolbar input{max-width:none}.contract-editor{width:100%!important;max-width:100%!important}}
.contract-schedule-presets{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}.contract-schedule-presets button{min-height:44px}.contract-schedule-presets button.active{background:#0b766e;color:white}.contract-schedule-grid>label,.contract-base-price>label{grid-template-rows:minmax(40px,auto) minmax(44px,auto) auto;align-content:start}.contract-editor input:focus-visible,.contract-editor select:focus-visible,.contract-editor button:focus-visible{outline:3px solid #0b766e;outline-offset:2px}.contract-editor .contract-error{display:block;color:#a12e22;margin-top:4px}.contract-editor .contract-base-price{max-width:780px}
@media(max-width:600px){.contract-schedule-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.contract-editor .contract-schedule-grid>label,.contract-editor .contract-base-price>label{grid-template-rows:auto minmax(44px,auto) auto}.contract-editor .contract-steps button{font-size:13px;padding:8px}.contract-editor .contract-form-grid{gap:12px}}
.contract-validation-summary{display:grid;gap:8px;background:#fff6f3;border:1px solid #e6ada3;border-radius:12px;padding:16px;margin-bottom:16px}.contract-validation-summary button{text-align:left;width:100%;justify-content:flex-start}.contract-editor [id^="contract-"]{scroll-margin-top:80px}

/* Keep inputs at their normal height when a neighboring field has help text. */
.contract-editor .contract-form-grid > label { align-self: start; align-content: start; }
.contract-delete-actions { justify-content: flex-end; }

/* Rental overview: one compact row per object, shared financial totals above the list. */
.rental-financial-truth { display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center;margin:6px 0 10px;color:#516175;font-size:13px;line-height:19px; }
.rental-financial-truth strong{color:#172b45}.rental-financial-truth button{min-height:32px;padding:4px 10px;margin-left:5px}
.rental-financial-truth-detail summary{cursor:pointer}.rental-financial-truth-detail a{display:inline-block;margin:6px 0}
.rental-kpi-mobile-label{display:none}
.rental-extra-metrics { margin:6px 0 10px; }
.rental-extra-metrics > summary { cursor:pointer;color:#516175;padding:5px 0; }
.rental-page .rental-problem-cards { gap:0; }
.rental-page .rental-debtor-card { padding:10px 12px;gap:12px;align-items:center;border-radius:0;border:0;border-bottom:1px solid #e4e9f0;background:white;box-shadow:none; }
.rental-page .rental-debtor-card.is-critical { border-left:3px solid #be584d;background:#fff; }
.rental-page .rental-debtor-card-main { flex:1;min-width:0;display:grid;grid-template-columns:minmax(150px,1.3fr) minmax(130px,.7fr) minmax(160px,1fr);align-items:center;gap:16px; }
.rental-page .rental-debtor-card-title,.rental-page .rental-debtor-balance,.rental-page .rental-debtor-meta { display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin:0;min-width:0; }
.rental-page .rental-debtor-card-title span { max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis; }
.rental-page .rental-debtor-card small { color:#617185;font-size:13px;line-height:18px; }
.rental-page .rental-debtor-card-actions { flex-wrap:nowrap;align-items:center; }
@media(max-width:1000px){.rental-page .rental-debtor-card-main{grid-template-columns:1fr 1fr}.rental-page .rental-debtor-card-title{grid-column:1/-1}.rental-page .rental-debtor-card-actions{width:100%}.rental-page .rental-debtor-card{border:1px solid #e4e9f0;border-radius:10px;margin-bottom:8px}.rental-page .rental-debtor-card button,.rental-page .rental-debtor-card a.btn{min-height:44px}.rental-page .rental-debtor-card-title span{white-space:normal}.rental-page .rental-debtor-card-main{width:100%}}
@media(max-width:600px){.rental-financial-truth{display:block}.rental-financial-truth>*{display:inline}.rental-financial-truth>*+*::before{content:" · "}.rental-financial-truth button{margin:0 3px}.rental-financial-truth button::before{content:none}}
@media(max-width:600px){.rental-page>.page-header{flex-direction:row;align-items:center;gap:8px}.rental-page .page-header-desc,.rental-page .rental-overview-add{display:none}.rental-page .page-header-actions{margin-left:auto;justify-content:flex-end}.rental-page [data-testid="rental-month-pay"] .rental-review-head{display:block}.rental-page [data-testid="rental-month-pay"] .rental-review-head h3{white-space:nowrap;font-size:18px}.rental-page [data-testid="rental-month-pay"] .rental-review-head .row-actions{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:6px;max-width:100%;margin-top:8px}.rental-page [data-testid="rental-month-pay"] .rental-review-head .row-actions button{flex:0 0 auto;min-height:40px}}
@media(max-width:600px){
  .rental-page [data-testid="rental-kpi-month"]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px;padding:10px 12px;font-size:12px;line-height:18px}
  .rental-page [data-testid="rental-kpi-month"]>span{display:block;min-width:0;white-space:nowrap}
  .rental-kpi-desktop-label{display:none}.rental-kpi-mobile-label{display:inline}
  .rental-financial-truth{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;align-items:center;margin:4px 0 8px;line-height:17px}
  .rental-financial-truth>*{display:block}.rental-financial-truth>*+*::before{content:none}
  .rental-financial-truth strong{font-size:12px}.rental-financial-truth button{grid-column:2;grid-row:1/3;min-height:44px;margin:0}
  .rental-financial-truth-detail{grid-column:1;grid-row:2;color:#617185;font-size:12px}
  .rental-page .rental-debtor-card-main{gap:8px}
  .rental-page .rental-debtor-balance>small:last-child{display:none}
}

@media(min-width:900px){.fl-modal.deal-context-panel.deal-record-panel{max-width:680px}}

.deal-mobile-select-page { display: none; }
@media (max-width: 899px) { .deal-mobile-select-page { display: inline-flex; } }
.contracts-workspace>h1{font-size:28px;line-height:34px;margin:8px 0}.contract-toolbar>details{flex-basis:100%;margin:4px 0 12px}.contract-toolbar>details summary{cursor:pointer;color:#5f6f83}
@media(max-width:899px){.contract-migration-table td::before{content:attr(data-label);display:block;font-weight:600;color:#5f6f83;font-size:13px;margin-bottom:4px}.contract-migration-table td{grid-column:1/-1}}
.contract-inline-create{grid-column:1/-1;display:grid;justify-items:start;gap:8px}.contract-inline-create .contract-surface{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:min(100%,720px);padding:16px}.contract-inline-create .contract-surface strong,.contract-inline-create .contract-surface small{grid-column:1/-1}
@media(max-width:600px){.contract-inline-create .contract-surface{grid-template-columns:1fr}}
.rental-payment-views{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:8px 0 12px}.rental-payment-views button{min-height:44px}
@media(max-width:700px){
  .rental-page .rental-payments-wrap,
  .rental-page .table-wrap:has([data-testid="rental-rules-table"]){max-height:none;overflow:visible;border:0}
  .rental-page [data-testid="rental-payment-link-table"],
  .rental-page [data-testid="rental-rules-table"],
  .rental-page [data-testid="rental-payment-link-table"] tbody,
  .rental-page [data-testid="rental-rules-table"] tbody{display:block;width:100%}
  .rental-page [data-testid="rental-payment-link-table"] thead,
  .rental-page [data-testid="rental-rules-table"] thead{display:none}
  .rental-page [data-testid="rental-payment-link-table"] tr,
  .rental-page [data-testid="rental-rules-table"] tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;padding:12px;margin-bottom:8px;background:#fff;border:1px solid #e4e9f0;border-radius:10px}
  .rental-page [data-testid="rental-payment-link-table"] td,
  .rental-page [data-testid="rental-rules-table"] td{display:block;min-width:0;padding:0;border:0;text-align:left;overflow-wrap:anywhere}
  .rental-page [data-testid="rental-payment-link-table"] td::before,
  .rental-page [data-testid="rental-rules-table"] td::before{content:attr(data-label);display:block;color:#5f6f83;font-size:12px;line-height:17px;font-weight:500}
  .rental-page [data-testid="rental-payment-link-table"] td:nth-child(2),
  .rental-page [data-testid="rental-payment-link-table"] td:nth-child(4),
  .rental-page [data-testid="rental-rules-table"] td:first-child,
  .rental-page [data-testid="rental-rules-table"] td:last-child,
  .rental-page .rental-plink-actions{grid-column:1/-1}
  .rental-page .rental-plink-actions,.rental-page [data-testid="rental-rules-table"] td:last-child .row-actions{display:flex;gap:8px;flex-wrap:wrap}
  .rental-page .rental-plink-actions button,.rental-page .rental-plink-actions a,
  .rental-page [data-testid="rental-rules-table"] button{min-height:44px}
}
.contract-editor .ru-date-input{display:flex;width:100%;min-width:0;box-sizing:border-box}.contract-editor .ru-date-display{min-width:0}
.rental-overview-mode{display:flex;gap:8px;align-items:center;margin:8px 0}.rental-overview-mode button.active{background:#e8f5f2;color:#0b766e;border-color:#8ccbc5}
.rental-matrix{margin-bottom:12px}.rental-matrix>p{margin:0 0 10px}.rental-matrix-desktop{overflow:auto;max-width:100%;max-height:min(68vh,760px);overscroll-behavior:contain}.rental-matrix-desktop table{border-collapse:separate;border-spacing:0;width:100%;min-width:850px}.rental-matrix-desktop th,.rental-matrix-desktop td{padding:6px;border-bottom:1px solid #e4e9f0;text-align:left;vertical-align:middle}.rental-matrix-desktop th:first-child{position:sticky;left:0;background:#fff;z-index:2;min-width:170px;max-width:220px}.rental-matrix-desktop thead th{position:sticky;top:0;background:#f6f8fb;font-size:13px;color:#516175;z-index:2;box-shadow:0 1px 0 #e4e9f0}.rental-matrix-desktop thead th:first-child{background:#f6f8fb;z-index:3}
.rental-matrix-cell{display:grid;align-content:center;gap:2px;min-width:115px;width:100%;min-height:54px;padding:6px 8px;border:1px solid #dae3ed;border-radius:8px;text-align:left;background:#f7f9fc;color:#253b55;font-size:12px}.rental-matrix-cell small,.rental-matrix-mobile-row small{display:block;color:#516175;font-size:12px}.rental-matrix-cell.is-paid,.rental-matrix-mobile-row.is-paid{background:#e9f6ef;border-color:#79bb96}.rental-matrix-cell.is-partial,.rental-matrix-mobile-row.is-partial{background:#fff6e8;border-color:#d6a957}.rental-matrix-cell.is-overdue,.rental-matrix-mobile-row.is-overdue{background:#fff0ed;border-color:#d77f71}.rental-matrix-cell.is-unknown,.rental-matrix-mobile-row.is-unknown,.rental-matrix-cell.is-openingbalance,.rental-matrix-mobile-row.is-openingbalance{background:#f3f5f8;border-color:#8e9caf}.rental-matrix-cell:focus-visible,.rental-matrix-mobile-row:focus-visible{outline:3px solid #0b766e;outline-offset:2px}.rental-matrix-detail-status{padding:8px 10px;border-radius:8px;background:#f3f5f8}.rental-matrix-detail-status.is-paid{background:#e9f6ef}.rental-matrix-detail-status.is-overdue{background:#fff0ed}.rental-matrix-mobile,.rental-matrix-mobile-description{display:none}
.rental-matrix-cell.is-partialoverdue,.rental-matrix-mobile-row.is-partialoverdue{background:#fff2e9;border-color:#c88c64}.rental-matrix-detail-status.is-partialoverdue{background:#fff2e9}
.rental-matrix-cell.is-unpaid,.rental-matrix-mobile-row.is-unpaid{background:#f3f5f8;border-color:#b4bdc9}.rental-matrix-cell.is-review,.rental-matrix-mobile-row.is-review{background:#eaf5ff;border-color:#6daee5}
@media(max-width:700px){.rental-matrix-desktop,.rental-matrix-desktop-description{display:none}.rental-matrix-mobile-description{display:inline}.rental-matrix-mobile{display:grid;gap:8px}.rental-matrix-mobile>label{display:grid;gap:4px}.rental-matrix-mobile select{max-width:100%;min-height:44px}.rental-matrix-mobile-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:64px;padding:10px 12px;border:1px solid #dae3ed;border-radius:9px;background:#f7f9fc;color:#253b55;text-align:left}.rental-matrix-mobile-row>span{min-width:0}.rental-matrix-mobile-row>span:first-child{flex:1}.rental-matrix-mobile-row>span:last-child{text-align:right}.rental-overview-mode{flex-wrap:wrap}.rental-overview-mode button{min-height:44px}}

@media(max-width:899px){.contract-editor .fl-icon-btn{min-width:44px;min-height:44px}}
