/*
 * oraculum-watchlist.css — CTA «Avvisami» nel cockpit Consultazione Bandi (CIT-1).
 * Blocco discreto sotto i Dati essenziali: bottone → mini-form inline → conferma.
 * Namespace: ocb-wl-. Usa i token --oc-* (oraculum-tokens.css), non li sostituisce.
 */

.ocb-wl {
    margin: 18px 0 6px;
    border: 1px dashed var(--oc-border-2);
    border-radius: 12px;
    background: var(--oc-bg-2);
    padding: 4px;
}

/* ── CTA chiusa: una riga discreta ── */
.ocb-wl-cta {
    display: flex; align-items: center; gap: 10px; width: 100%;
    padding: 11px 14px; border: 0; border-radius: 9px;
    background: transparent; cursor: pointer; text-align: left;
    font-family: inherit; font-size: 14.5px; font-weight: 600;
    color: var(--oc-text);
}
.ocb-wl-cta:hover { background: var(--oc-accent-light); }
.ocb-wl-bell { font-size: 16px; line-height: 1; }
.ocb-wl-hint {
    margin-left: auto; font-size: 12px; font-weight: 400;
    color: var(--oc-text-3);
}

/* ── mini-form inline ── */
.ocb-wl-form { padding: 4px 14px 14px; }
.ocb-wl-form[hidden], .ocb-wl-done[hidden] { display: none; }
.ocb-wl-lead { font-size: 13px; color: var(--oc-text-2); margin: 2px 0 12px; }
.ocb-wl-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
}
.ocb-wl-field { display: flex; flex-direction: column; gap: 4px; }
.ocb-wl-field.span2 { grid-column: 1 / -1; }
.ocb-wl-field label {
    font-size: 11.5px; font-weight: 600; letter-spacing: .02em;
    color: var(--oc-text-3); text-transform: uppercase;
}
.ocb-wl-field label .opt { font-weight: 400; text-transform: none; letter-spacing: 0; }
.ocb-wl-field input {
    padding: 9px 11px; border: 1px solid var(--oc-border);
    border-radius: 8px; background: var(--oc-bg);
    font: inherit; font-size: 14px; color: var(--oc-text); outline: none;
}
.ocb-wl-field input:focus { border-color: var(--oc-accent); box-shadow: 0 0 0 3px var(--oc-accent-light); }

/* consenso GDPR */
.ocb-wl-consent {
    display: flex; align-items: flex-start; gap: 9px;
    margin: 12px 0 12px; font-size: 12.5px; line-height: 1.5;
    color: var(--oc-text-2);
}
.ocb-wl-consent input { margin-top: 2px; accent-color: var(--oc-accent); flex: 0 0 auto; }

.ocb-wl-actions { display: flex; align-items: center; gap: 12px; }
.ocb-wl-submit {
    padding: 9px 18px; border: 0; border-radius: 8px; cursor: pointer;
    background: var(--oc-primary); color: #fff;
    font-family: inherit; font-size: 14px; font-weight: 600;
}
.ocb-wl-submit:hover { background: var(--oc-primary-hover); }
.ocb-wl-submit:disabled { opacity: .55; cursor: default; }
.ocb-wl-cancel {
    border: 0; background: transparent; cursor: pointer;
    font-family: inherit; font-size: 13px; color: var(--oc-text-3);
    text-decoration: underline; padding: 4px;
}
.ocb-wl-error { margin-top: 10px; font-size: 13px; color: var(--oc-danger); }
.ocb-wl-error:empty { display: none; }

/* ── conferma inline ── */
.ocb-wl-done {
    display: flex; align-items: flex-start; gap: 10px;
    padding: 13px 14px; font-size: 14px; color: var(--oc-text);
}
.ocb-wl-done-ico {
    width: 26px; height: 26px; border-radius: 50%; flex: 0 0 auto;
    display: grid; place-items: center;
    background: var(--oc-badge-open-bg); color: var(--oc-success);
    font-size: 14px; font-weight: 700;
}
.ocb-wl-done-sub { font-size: 12.5px; color: var(--oc-text-3); margin-top: 2px; }

@media (max-width: 640px) {
    .ocb-wl-grid { grid-template-columns: 1fr; }
    .ocb-wl-hint { display: none; }
}
