/* redact.css — UI redazione (M8): overlay per-pagina, marche, barra azioni. */

/* Il page-wrap fa da contenitore posizionato per l'overlay. */
body.is-redacting .page-wrap { position: relative; }

/* Durante la redazione, disattiva le interazioni degli altri layer sopra la pagina. */
body.is-redacting .annot-layer,
body.is-redacting .fields-layer,
body.is-redacting .link-layer { pointer-events: none !important; }

.redact-overlay {
    position: absolute;
    inset: 0;
    z-index: 40;
    cursor: crosshair;
    /* velo tenue per segnalare la modalità attiva */
    background: rgba(220, 38, 38, .04);
}

/* Area marcata da redigere */
.redact-mark {
    position: absolute;
    background: rgba(17, 17, 17, .82);
    border: 1.5px solid var(--danger, #dc2626);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, .35);
    box-sizing: border-box;
}
.redact-mark.is-drawing { background: rgba(220, 38, 38, .22); }

.redact-mark__del {
    position: absolute;
    top: -11px; right: -11px;
    width: 22px; height: 22px;
    border-radius: 50%;
    border: 1px solid var(--danger, #dc2626);
    background: var(--panel, #fff);
    color: var(--danger, #dc2626);
    font-size: 15px; line-height: 1;
    cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    padding: 0;
    box-shadow: var(--e2, 0 2px 8px rgba(0,0,0,.15));
}
.redact-mark__del:hover { background: var(--danger, #dc2626); color: #fff; }

/* Barra azioni flottante (in basso, come la pill Fill&Sign) */
.redact-bar {
    position: fixed;
    left: 50%; bottom: 22px;
    transform: translateX(-50%) translateY(8px);
    z-index: 4001;
    display: none;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: var(--panel, #fff);
    color: var(--text, #1a1d21);
    border: 1px solid var(--border, #dcdfe4);
    border-radius: 12px;
    box-shadow: var(--e3, 0 12px 32px rgba(16,24,40,.16));
}
.redact-bar.is-open { display: flex; }

.redact-bar__count { font-size: 13px; font-weight: 600; color: var(--text-secondary, #616872); }

.redact-btn {
    appearance: none; cursor: pointer; font: inherit; font-size: 13px; font-weight: 600;
    padding: 8px 14px; border-radius: 9px;
    border: 1px solid var(--border, #dcdfe4);
    background: var(--control-bg, #f0f2f5); color: var(--text, #1a1d21);
}
.redact-btn:hover { background: var(--control-bg-hover, #e6e9ee); }
.redact-btn:disabled { opacity: .5; cursor: not-allowed; }
.redact-btn--danger {
    background: var(--danger, #dc2626); border-color: var(--danger, #dc2626); color: #fff;
}
.redact-btn--danger:hover:not(:disabled) { background: var(--danger-hover, #b91c1c); }

/* Su schermi stretti la barra resta centrata e compatta */
@media (max-width: 480px) {
    .redact-bar { left: 8px; right: 8px; transform: none; bottom: 12px; justify-content: space-between; }
    .redact-bar.is-open { display: flex; }
}

/* --- Dialog "aree marcate ma non rimosse" (askBeforeSave, prima di salvare) ---
   Le aree marcate sono solo un disegno finché non si applica la redazione: senza
   questa domanda si salvava un file NON redatto, col riquadro nero ancora a video
   e nessun avviso. Non si applica da soli perché la rimozione è irreversibile. */
.redact-ask {
    position: fixed; inset: 0; z-index: 10000;
    display: flex; align-items: center; justify-content: center;
    background: rgba(0, 0, 0, .45);
    padding: 16px;
}
.redact-ask__box {
    background: var(--panel, #fff); color: var(--text, #1a1d21);
    border: 1px solid var(--border, #d6dae1); border-radius: 12px;
    box-shadow: var(--shadow, 0 10px 30px rgba(0, 0, 0, .2));
    padding: 20px; max-width: 460px; width: 100%;
}
.redact-ask__title { margin: 0 0 8px; font-size: 16px; font-weight: 700; }
.redact-ask__text { margin: 0 0 16px; font-size: 13.5px; line-height: 1.5; color: var(--text-secondary, #616872); }
.redact-ask__row { display: flex; gap: 8px; justify-content: flex-end; flex-wrap: wrap; }
