/*! bootstrap-reduzido.css — apenas classes usadas no projeto allinemenezes.com.br */

/* ── Reset / box-sizing ─────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}

/* ── Container ──────────────────────────────────────────────────────────── */
.container{width:100%;padding-right:1rem;padding-left:1rem;margin-right:auto;margin-left:auto}
@media(min-width:576px){.container{max-width:540px}}
@media(min-width:768px){.container{max-width:720px}}
@media(min-width:992px){.container{max-width:960px}}
@media(min-width:1200px){.container{max-width:1140px}}

/* ── Row ────────────────────────────────────────────────────────────────── */
.row{display:flex;flex-wrap:wrap;margin-right:-.75rem;margin-left:-.75rem}

/* ── Display ────────────────────────────────────────────────────────────── */
.d-flex{display:flex!important}
.d-none{display:none!important}
@media(min-width:768px){
  .d-md-flex{display:flex!important}
  .d-none.d-md-flex,.d-none{display:none!important}
  .d-md-flex{display:flex!important}
}

/* ── Flex helpers ───────────────────────────────────────────────────────── */
.flex-column{flex-direction:column!important}
.flex-row{flex-direction:row!important}
.flex-wrap{flex-wrap:wrap!important}
.flex-grow-1{flex-grow:1!important}
@media(min-width:768px){
  .flex-md-row{flex-direction:row!important}
}

/* ── Justify / Align ────────────────────────────────────────────────────── */
.justify-content-center{justify-content:center!important}
.justify-content-between{justify-content:space-between!important}
.justify-content-end{justify-content:flex-end!important}
.align-items-center{align-items:center!important}
.align-items-start{align-items:flex-start!important}

/* ── Width / Height ─────────────────────────────────────────────────────── */
.w-100{width:100%!important}
.h-100{height:100%!important}

/* ── Spacing — margin ───────────────────────────────────────────────────── */
.mt-3{margin-top:1rem!important}
.mt-4{margin-top:1.5rem!important}
.mb-0{margin-bottom:0!important}
.mb-2{margin-bottom:.5rem!important}
.mb-3{margin-bottom:1rem!important}
.mb-4{margin-bottom:1.5rem!important}
.ms-2{margin-left:.5rem!important}
.me-1{margin-right:.25rem!important}
.me-2{margin-right:.5rem!important}
.mx-3{margin-right:1rem!important;margin-left:1rem!important}
@media(min-width:768px){
  .mt-md-0{margin-top:0!important}
}

/* ── Spacing — padding ──────────────────────────────────────────────────── */
.px-3{padding-right:1rem!important;padding-left:1rem!important}
.pb-2{padding-bottom:.5rem!important}
.py-5{padding-top:3rem!important;padding-bottom:3rem!important}

/* ── Text ───────────────────────────────────────────────────────────────── */
.text-center{text-align:center!important}
.text-muted{color:#6c757d!important}
.fw-bold{font-weight:700!important}

/* ── Navbar ─────────────────────────────────────────────────────────────── */
.navbar{display:flex;flex-wrap:wrap;align-items:center;padding:.5rem 1rem}
.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}
.nav-item{list-style:none}
.nav-link{display:block;padding:.5rem 1rem;color:inherit;text-decoration:none}
.nav-link:hover{text-decoration:underline}

/* ── Buttons ────────────────────────────────────────────────────────────── */
.btn{display:inline-block;font-weight:400;line-height:1.5;text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;border-radius:.375rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}
.btn:disabled{opacity:.65;pointer-events:none}

.btn-primary{color:#fff;background-color:#0d6efd;border-color:#0d6efd}
.btn-primary:hover{background-color:#0b5ed7;border-color:#0a58ca}

.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}
.btn-secondary:hover{background-color:#5c636a;border-color:#565e64}

.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}
.btn-danger:hover{background-color:#bb2d3b;border-color:#b02a37}

.btn-outline-primary{color:#0d6efd;border-color:#0d6efd;background-color:transparent}
.btn-outline-primary:hover{color:#fff;background-color:#0d6efd;border-color:#0d6efd}

.btn-sm{padding:.25rem .5rem;font-size:.875rem;border-radius:.25rem}

/* ── Button group ───────────────────────────────────────────────────────── */
.btn-group{display:inline-flex;vertical-align:middle}
.btn-group>.btn{position:relative;flex:1 1 auto}
.btn-group>.btn:not(:first-child){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}
.btn-group>.btn:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}

/* ── Modal ──────────────────────────────────────────────────────────────── */
.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}
.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:.5rem;outline:0}
.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:.5rem;border-top-right-radius:.5rem}
.modal-title{margin-bottom:0;line-height:1.5}
.modal-body{position:relative;flex:1 1 auto;padding:1rem}
.modal-footer{display:flex;flex-wrap:wrap;flex-shrink:0;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;gap:.5rem}

/* ── Alert ──────────────────────────────────────────────────────────────── */
.alert{position:relative;padding:1rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.375rem}
.alert-success{color:#0f5132;background-color:#d1e7dd;border-color:#badbcc}
.alert-info{color:#055160;background-color:#cff4fc;border-color:#b6effb}

/* ── Card ───────────────────────────────────────────────────────────────── */
.card{position:relative;display:flex;flex-direction:column;min-width:0;background-color:#fff;border:1px solid rgba(0,0,0,.125);border-radius:.375rem}
.card-body{flex:1 1 auto;padding:1rem}
.card-header{padding:.5rem 1rem;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}
.card-footer{padding:.5rem 1rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}

/* ── List group ─────────────────────────────────────────────────────────── */
.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.375rem}
.list-group-flush{border-radius:0}
.list-group-flush>.list-group-item{border-width:0 0 1px}
.list-group-flush>.list-group-item:last-child{border-bottom-width:0}
.list-group-item{position:relative;display:block;padding:.5rem 1rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}
.list-group-item-action{cursor:pointer;width:100%;color:#495057;text-align:inherit}
.list-group-item-action:hover{color:#495057;background-color:#f8f9fa;text-decoration:none}

/* ── Forms ──────────────────────────────────────────────────────────────── */
.form-label{margin-bottom:.5rem;display:inline-block}
.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;border:1px solid #ced4da;border-radius:.375rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}
.form-control:focus{color:#212529;background-color:#fff;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}
.form-select{display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;border:1px solid #ced4da;border-radius:.375rem;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px}
.form-select:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}

/* ── Overflow ───────────────────────────────────────────────────────────── */
.overflow-y-auto,.overflow-auto{overflow:auto!important}

/* ── Visually hidden (acessibilidade) ───────────────────────────────────── */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
