.cohabitation-fields { border: 1px solid var(--border-color, #d6dde5); border-radius: 12px; padding: 18px; margin: 16px 0; min-width: 0; }
.cohabitation-fields legend { font-weight: 700; padding: 0 6px; }
.cohabitation-fields p { margin: 0 0 16px; }
.cohabitation-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.cohabitation-recipient-fields .cohabitation-fields { border: 0; border-radius: 0; padding: 0; margin: 0; }
.cohabitation-recipient-fields .cohabitation-grid { gap: 18px; }
.cohabitation-grid label { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.cohabitation-grid :is(input, select) { width: 100%; box-sizing: border-box; min-height: 44px; padding: 10px; border: 1px solid #adb9c6; border-radius: 8px; background: #fff; color: #172b3a; font: inherit; }
.cohabitation-grid :is(input, select):focus-visible { outline: 2px solid #176947; outline-offset: 2px; }
.cohabitation-dialog { width: min(760px, calc(100% - 32px)); max-height: 85vh; box-sizing: border-box; overflow: auto; border: 0; border-radius: 16px; padding: 24px; color: #172b3a; }
.cohabitation-dialog::backdrop { background: rgb(15 23 42 / 55%); }
.cohabitation-dialog textarea { width: 100%; box-sizing: border-box; }
@media (max-width: 600px) { .cohabitation-grid { grid-template-columns: minmax(0, 1fr); } .cohabitation-fields { padding: 14px; } .cohabitation-dialog { padding: 16px; } }
