/* Shared presentation for secondary flows. Never override hidden, disabled or validation states. */
.liberty-flow { --flow-blue: #00365f; --flow-red: #bd1737; --flow-border: #dce6ef; font-family: 'Segoe UI',system-ui,sans-serif; color: #00365f; max-width: 1440px; margin: 24px auto; min-width: 0; }
.liberty-flow.liberty-flow h1 { font-size: clamp(25px,3vw,32px); font-weight: 700; letter-spacing: -.5px; color: var(--flow-blue); margin-bottom: 16px; }
.liberty-flow h2 { font-size: 24px; color: var(--flow-blue); }
.liberty-flow h4, .liberty-flow h5 { font-size: 18px; line-height: 1.6; overflow-wrap: anywhere; }
.liberty-flow p { line-height: 1.7; }
.liberty-flow.liberty-flow .card { background: #fff; border: 1px solid var(--flow-border); border-radius: 20px; box-shadow: none; min-width: 0; }
.liberty-flow.liberty-flow .card-header { background: #fff; color: var(--flow-blue); border-bottom: 1px solid var(--flow-border); border-radius: 20px 20px 0 0; padding: 20px 24px !important; font-size: 17px; font-weight: 650; }
.liberty-flow.liberty-flow .card-header p { margin: 0; }
.liberty-flow.liberty-flow .card-body { padding: 24px !important; color: var(--flow-blue); }
.liberty-flow.liberty-flow .card-footer { padding: 18px 24px; background: #f3f6f9; border-top: 1px solid var(--flow-border); border-radius: 0 0 20px 20px; }
.liberty-flow .form-group { margin-bottom: 18px !important; }
.liberty-flow label { font-size: 14px; color: var(--flow-blue); margin-bottom: 6px !important; }
.liberty-flow.liberty-flow .form-control:not([type=hidden]) { min-height: 48px; height: auto; border: 1px solid #cbdce9; background-color: #fff; color: var(--flow-blue); border-radius: 10px; padding: 10px 12px !important; font-size: 16px; }
.liberty-flow.liberty-flow .form-control:disabled, .liberty-flow.liberty-flow .form-control[readonly] { background-color: #edf3f8; color: #617589; }
.liberty-flow.liberty-flow .form-control:focus { border-color: #467eaf; box-shadow: 0 0 0 3px #e0edf7; }
.liberty-flow .input-validation-error { border-color: var(--flow-red) !important; }
.liberty-flow.liberty-flow .btn { border-radius: 12px; min-height: 46px; padding: 12px 18px; font-size: 14px; font-weight: 600; box-shadow: none; white-space: normal; }
.liberty-flow.liberty-flow .btn-primary, .liberty-flow.liberty-flow .btn-LibertyBlue, .liberty-flow.liberty-flow .btn-success { background: var(--flow-blue); border-color: var(--flow-blue); color: #fff; }
.liberty-flow.liberty-flow .btn-secondary, .liberty-flow.liberty-flow .btn-primary-soft { background: #edf3f8; border-color: #dce6ef; color: var(--flow-blue); }
.liberty-flow.liberty-flow .btn-danger { background: #fbe9ed; border-color: #f0c7d0; color: #97203a; }
.liberty-flow .alert { border-radius: 12px; overflow-wrap: anywhere; }
.liberty-flow .encabezado img.img-fluid { width: 150px; max-width: 100%; height: auto; }
.liberty-flow .encabezado { padding: 16px; }
.liberty-flow .modal-content { border-radius: 20px; }
.liberty-flow .modal-body { padding: 24px; }
.liberty-flow .modal-footer { gap: 8px; }
.liberty-flow :focus-visible { outline: 3px solid #467eaf; outline-offset: 3px; }
.liberty-flow.liberty-flow-notice { max-width: 760px; padding: 32px; border: 1px solid var(--flow-border); border-top: 3px solid var(--flow-red); border-radius: 22px; background: #fff; }
.liberty-flow-notice > br, .liberty-flow-notice h1 > br { display: none; }
.liberty-flow-notice code { white-space: pre-wrap; overflow-wrap: anywhere; }
.liberty-flow-notice > a[role=button] { display: inline-block; background: var(--flow-blue); color: #fff; padding: 14px 20px; border-radius: 12px; margin-top: 16px; }
.liberty-flow-notice > .row > .col-md-4 { flex: 0 0 100%; max-width: 100%; }
.liberty-flow-contact { max-width: 800px; }
.liberty-flow-contact > h2 { margin-bottom: 22px; }
.liberty-flow-contact .card.border-info { border-color: var(--flow-border) !important; }
.liberty-flow-auth { max-width: 620px; }
.liberty-flow-auth .abs-center { margin: 20px auto !important; padding: 0; }
.liberty-flow-auth .abs-center > .d-flex { width: 100%; }
.liberty-flow-auth .abs-center > .d-flex > .card { width: 100%; max-width: 560px !important; margin: auto; }
.liberty-flow-auth .card .card { border: 0; margin-top: 0 !important; padding: 0 !important; }
.liberty-flow-auth .card-img-top { border-radius: 20px 20px 0 0; }
.liberty-flow-auth .card-img-bottom { border-radius: 0 0 20px 20px; }
.liberty-flow-receipt > .card { width: 100%; max-width: 680px; padding: 0 !important; }
.liberty-flow-receipt #inputOrdenAmazon { margin-top: 12px; }
.liberty-flow-referrals .card-body { overflow-x: auto; }
.liberty-flow-referrals .mi-tabla { min-width: 620px; font-size: 14px; }
.liberty-flow-referrals .mi-tabla th, .liberty-flow-referrals .mi-tabla td { padding: 14px 12px; border: 0; border-bottom: 1px solid var(--flow-border); }
.liberty-flow-referrals .mi-tabla th { background: #edf3f8; color: #617589; }
.liberty-flow-movements .datatable { overflow-x: auto; }
.liberty-flow #dataTableListMovimientos th { background: #edf3f8; color: #617589; padding: 14px 10px; }
.liberty-flow #dataTableListMovimientos td { padding: 14px 10px; }
.liberty-flow .dataTables_filter input, .liberty-flow .dataTables_length select { border: 1px solid #cbdce9; border-radius: 10px; min-height: 44px; padding: 8px 12px; max-width: 100%; }
.liberty-flow-locker #viewGridUpdated { background: transparent; }
.liberty-flow-locker .btn-blue { background: var(--flow-blue); color: #fff; }
.liberty-flow-locker .btn-Amazon { background: #edf3f8; color: var(--flow-blue); }
.liberty-flow-locker .btn-group { gap: 8px; flex-wrap: wrap; }
@media (max-width: 575px) {
    .liberty-flow { margin: 12px auto; }
    .liberty-flow.liberty-flow-notice { padding: 24px 16px; }
    .liberty-flow.liberty-flow .card-header, .liberty-flow.liberty-flow .card-body, .liberty-flow.liberty-flow .card-footer { padding: 18px 16px !important; }
    .liberty-flow-auth .container { max-width: 100%; }
    .liberty-flow .modal-footer .btn { flex: 1 1 auto; }
    .liberty-flow-locker .btn-group { float: none !important; width: 100%; margin-bottom: 12px; }
    .liberty-flow-locker .btn-group .btn { flex: 1 1 auto; }
}
