.contract-confirm { width:min(580px,calc(100% - 32px)); max-height:85dvh; padding:0; border:1px solid var(--bd); border-radius:16px; color:var(--ink); background:#fff; box-shadow:0 20px 70px #08252c55; margin:auto; }
.contract-confirm::backdrop { background:#08252c99; }
.contract-confirm h2 { padding:22px 24px 16px; margin:0; font-size:18px; border-bottom:1px solid var(--bd); }
.contract-confirm-body { padding:18px 24px; overflow:auto; max-height:calc(85dvh - 170px); font-size:13px; line-height:1.65; }
.contract-confirm-body p + p { margin-top:10px; }
.contract-confirm-actions { padding:16px 24px; display:flex; justify-content:flex-end; gap:10px; border-top:1px solid var(--bd); background:#f5f9f8; }
.contract-warning-item { padding:14px; border:1px solid #eadbb9; background:#fffaf0; border-radius:10px; margin-bottom:12px; }
.contract-warning-item > strong { display:block; margin-bottom:7px; }
.contract-warning-item p { margin-top:10px; }
.contract-controls { padding:20px; display:flex; align-items:center; gap:18px; flex-wrap:wrap; margin-bottom:18px; }
.contract-controls strong { font-size:14px; }
.contract-controls p { font-size:11.5px; color:var(--ink-m); line-height:1.6; margin-top:4px; }
.contract-status-select { display:grid; gap:5px; font-size:11px; font-weight:700; }
.contract-status-select select { min-width:210px; }
.contract-status-dates { flex:1 1 240px; }
.contract-badges { display:flex; flex-wrap:wrap; gap:7px; align-items:center; }
.profile-card-top .contract-badges .badge { display:inline-flex; margin-top:0; font-size:10px; }
.profile-card-top .contract-badges .badge.bb { color:var(--blu); }
.profile-card-top .contract-badges .badge.bg { color:var(--grn); }
.profile-card-top .contract-badges .badge.bk { color:#60717b; }
.summary-expand .badge { margin-top:6px; font-size:10px; }
.dashboard-contract-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:0 0 22px; }
.dashboard-contract-card { padding:20px 23px; background:#fff; border:1px solid var(--bd); border-radius:12px; box-shadow:var(--shad); }
.dashboard-contract-card > span { display:block; color:var(--ink-m); font-size:11px; font-weight:750; }
.dashboard-contract-card > strong { display:block; margin:10px 0; color:var(--primary); font-size:27px; font-variant-numeric:tabular-nums; }
.dashboard-contract-card strong small { font-size:12px; color:var(--ink-m); font-weight:550; }
.dashboard-contract-card p { font-size:16px; font-weight:750; color:var(--ink); font-variant-numeric:tabular-nums; }
.dashboard-contract-card > small { display:block; margin-top:5px; color:var(--ink-m); font-size:11px; }
@media(max-width:620px) { .dashboard-contract-stats { grid-template-columns:1fr; } .contract-status-select,.contract-status-select select { width:100%; } .contract-confirm-actions { padding:14px; } .contract-confirm-actions .btn { flex:1; white-space:normal; } }
