.insert-row-plus{-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;touch-action:manipulation}
.observation-validation{display:block;color:#a52222;font-size:12px;line-height:1.4;padding:4px 2px;white-space:normal}
.observation-validation[hidden]{display:none}
input[data-field="observations"][aria-invalid="true"]{border-color:#a52222;outline:1px solid #a52222}
.row-actions-dialog{width:min(90vw,420px);border:1px solid #bdd1c7;border-radius:18px;padding:22px;color:#213e31;box-sizing:border-box}
.row-actions-dialog::backdrop{background:rgba(20,40,30,.45)}
.row-actions-dialog h2{margin:0 0 12px;font-size:22px}
.row-actions-dialog p{overflow-wrap:anywhere}
.row-action-buttons{display:flex;flex-direction:column;gap:10px}
.row-action-buttons button{padding:13px;border:1px solid #b8ccc1;border-radius:10px;font-size:16px;background:#f4f8f5;color:#245b48}
.row-action-buttons button[hidden]{display:none}
.row-action-buttons button[data-row-action="delete"]{color:#a52222;border-color:#d8aaaa;background:#fff7f7}
.row-action-error{color:#a52222;font-size:14px}

/* Delete is centered on its own row; insert stays between rows. */
tr[data-address-id]>td:last-child{position:relative}
.delete-row-minus{position:absolute!important;right:0!important;top:50%!important;transform:translateY(-50%);z-index:3;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;padding:0!important;border:1px solid #c33939!important;border-radius:50%!important;background:#fff1f1!important;color:#c32222!important;font:600 20px/20px system-ui!important;box-shadow:none!important;touch-action:manipulation;-webkit-touch-callout:none;user-select:none}
.delete-row-minus:focus-visible{outline:3px solid #c33939;outline-offset:2px}
.delete-row-minus:disabled{opacity:.5}
.row-actions-dialog{width:min(90vw,320px);padding:18px}
.row-actions-dialog h2{font-size:19px;margin-bottom:8px}
.row-actions-dialog p{font-size:14px;margin:8px 0}
.row-action-buttons{flex-direction:row;flex-wrap:wrap;gap:8px}
.row-action-buttons button{flex:1;padding:10px;font-size:14px}

/* Compact, inset row controls with clearly defined circular borders. */
.delete-row-minus.delete-row-minus{right:0!important;transform:translate(50%,-50%)!important;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;box-sizing:border-box!important;border:2px solid #bd2525!important;background:#fff5f5!important;font:700 12px/12px system-ui!important;display:flex!important;align-items:center!important;justify-content:center!important}
.insert-row-plus.insert-row-plus{right:8px!important;bottom:-10px!important;width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;box-sizing:border-box!important;border:2px solid #245b48!important;background:#eef7f1!important;font:650 15px/16px system-ui!important;display:flex!important;align-items:center!important;justify-content:center!important}
.insert-row-plus.insert-row-plus:before{content:none!important;inset:0!important}

/* Leave room inside the clipping container for the outside half of minus. */
.street-page.live-page > .scroll{padding-right:10px!important;box-sizing:border-box!important}
.street-page.live-page > .scroll > table{width:100%!important}
