html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}
/* ── Classes de navigation entre sections ─────────────────────── */
.toggled { display: none !important; }
.customers.toggled { display: none !important; }

.create-customer-container { width: 100%; }

.login-box {
    min-height: calc(100vh - 130px);
    display: flex;
    align-items: center;
    justify-content: center;
}

.spinner {
    position: fixed;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    gap: 4px;
    z-index: 999;
}
.spinner > div {
    width: 6px; height: 40px;
    background-color: #2196F3;
    animation: bounce 1.2s infinite ease-in-out;
}
.spinner .rect2 { animation-delay: -1.1s; }
.spinner .rect3 { animation-delay: -1.0s; }
.spinner .rect4 { animation-delay: -0.9s; }
.spinner .rect5 { animation-delay: -0.8s; }
@keyframes bounce {
    0%, 40%, 100% { transform: scaleY(0.4); }
    20% { transform: scaleY(1.0); }
}
.spinner-shadow {
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: rgba(0,0,0,0.3);
    z-index: 998;
}
.receipt-frame { width: 100%; height: 80vh; border: none; }

/* Toolbar */
.app-nav-toolbar { margin-bottom: 0; }
.body-content-no-footer { padding: 20px; }

/* PDF Viewer fullscreen */
.receipt-frame {
    width: 100% !important;
    height: calc(90vh - 56px) !important;
    border: none;
    display: block;
}
#popupFullScreen .modal-content { padding: 0 !important; overflow: hidden; }
