/* here you can put your own css to customize and override the theme */

#generate-report-progress-bar{
	position: fixed;
	top: 0;
	width: 100%;
	left: 0;
	z-index:99999999;
}

#notification-container{
	position: fixed;
	top: 10%;
	/*right: 37.5%;*/
	width: 25%;
	z-index:999999999;
	
    width: 25%;
    left: 50%;
    transform: translate(-50%, -20%);
    -ms-transform: translate(-50%, -20%);
}
.paper{
	max-width: 1100px;
    margin: auto;
    box-shadow: 1px 1px 4px 2px #555;
    padding: 5px 10px;
}


@media print{
	#generate-report-progress-bar,
	.virtual-progress-bar,
	#virtual-progress-bar,
	#notification-container{
		display:none;
	}
}
@media only screen and (max-width: 991px){
	#notification-container{
		right: 10%;
		width: 80%;
	}
}
.virtual-progress-bar{
	height:4px;
	position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.75;
    z-index: 1030;
    /*height: 100%;*/
}
/*
.virtual-progress-bar:after{
    content: "Please Wait...";
    top: 50%;
    font-size: 2em;
    font-weight: bold;
    position: relative;
    opacity: 1;
    color: #fff;
}
*/
.input-row{
	padding-left:5px;
	padding-right:5px;
}

.action-button{
	padding:0;
}

.report-table-preview-exploration table,
.report-table-preview table tr th,
.report-table-preview table{
	font-size:1em;
}
.report-table-preview table.big-font{
	font-size:1.2em;
}
.report-table-preview-exploration table tr th,
.report-table-preview table tr th{
	text-align:center;
	vertical-align:middle;
}
.report-table-preview table tr.total-row td,
.report-table-preview table tr td.company,
.report-table-preview table tr td.operator,
.report-table-preview table tr td.fdollar-column,
.report-table-preview table tr th{
	/*background-color:#ffc600;*/
	background-color:#ddebfd;
	
	font-weight:bold;
}
.report-table-preview table tr td.alternate.company,
.report-table-preview table tr td.alternate.operator,
.report-table-preview table tr td.alternate.fdollar-column,
.report-table-preview table tr th.alternate{
	/*background-color:#C9FB93;*/
	background-color:#ddebfd;
}

.report-table-preview table tr td.standard,
.report-table-preview table tr th.standard{
	background-color:#ddebfe;
	font-weight:bold;
}

.report-table-preview table tr td.company-1{
	background-color:#ddebff;
	font-weight:bold;
}

.report-table-preview-exploration table tr, .report-table-preview-exploration table tr th, .report-table-preview-exploration table tr td, .report-table-preview table tr, .report-table-preview table tr th, .report-table-preview table tr td {
    border: 1px solid #000;
}

.hover-2 .table-hover>tbody>tr:hover>td, .hover-2 .table-hover>tbody>tr:hover>th {
    background-color: #d9efff;
}

/* Portrait */
@media only screen 
  and (max-width: 360px)
  and (-webkit-min-device-pixel-ratio: 2)
  and (orientation: portrait) {
	.report-table-preview  table > thead > tr > th, .report-table-preview  table > tbody > tr > td{
		font-size:0.7em;
		padding:3px;
	}
	.landscape-only{ 
		display:none;
	}
}

@media only screen 
  and (min-width: 375px)
  and (max-width: 667px)
  and (-webkit-min-device-pixel-ratio: 2)
  and (orientation: portrait) {
	.report-table-preview  table > thead > tr > th, .report-table-preview  table > tbody > tr > td{
		font-size:0.8em;
		padding:4px;
	}
	.landscape-only{ 
		display:none;
	}
}
img.form-gen-element-image-upload-preview{
	max-width:100%;
}
#data-entry-form-container {
	
}
#data-entry-form-container label{
	font-size:10px;
	font-weight:600;
}
#data-entry-form-container h3{
	font-size:12px !important;
	font-weight:600;
	margin-top:0;
}

.control-label{
position: relative;
}

.form-element-required-label-yes::after,
span.required::after{
	content: '*';
	color: #e30000;
	position:absolute;
	top:-2px;
	/*right:3px;*/
}
.form-element-required-field.invalid-data{
	/*border:1px solid #e30000;
	background:#ffe2e2;*/
	border: 1px solid #f59f9f;
    background: #fff4f4;
}
.form-element-required-field.valid-data{
	border:1px solid #d7d7d7;
	background:#ffffff;
}
.hide-in-frontend{
	display:none;
}
.page-sidebar  .select2-container .select2-choice{
	background-color: #ddd;
	border: 1px solid #bbb;
}
.select2-container .select2-choice > .select2-chosen{
	min-height: 24px;
}
body.project .page-sidebar{
	background-color: #ddd !important;
}
.select2-container .select2-choice,
.form-control{
	/* border:1px solid #999; */
}

.form-check {
  position: relative;
  display: block;
  margin-bottom: 10px;

  &.disabled {
    .form-check-label {
      color: #999;
    }
  }
}

.form-check-label {
  padding-left: 0;
  margin-right: 15px;
  margin-bottom: 0;
}


.form-check-inline {
  display: inline-block;

  .form-check-label {
    vertical-align: middle;
  }

  + .form-check-inline {
    margin-left: 15px;
  }
}

.data-form-title{
	font-weight: bold !important;
    text-align: center;
    font-size: 20px;
}
tr.flag,
tr.flag td{
	color:#e02222;
}

tr.pflag,
tr.pflag td{
	color:#2222e0;
}

th.r,
td.r{
text-align:right;
}
th.c,
td.c{
text-align:center;
}

.input-group span.pull-right{
	position: absolute;
    top: -17px;
    right: 0;
}

form label{
	font-weight:bold;
}

form sup{
	color:#d32111;
}
.tabbable-custom .nav-tabs > li > a {
	font-weight:bold;
}

.tabbable-custom .nav-tabs.list-group > li > a{
	font-weight:normal;
}
.tabbable-custom .nav-tabs.list-group > li.active > a{
	font-weight:bold;
}

.tabbable-custom .nav-tabs.list-group > li.active > a.bg-blue{
	background-color:transparent !important;
	color:#333 !important;
	border-color:transparent !important;
}
.menu-header-title {
    font-weight: 600 !important;
    font-size: 1.25rem;
    margin: 0;
}

#appointment2 .card-body {
    padding: 0px 15px;
}

.payers > .row {
    margin-bottom: 12px;
    margin-top: 12px;
}

#appointment2 .card.mb-3.widget-chart.text-left {padding: 2px 10px;}

#appointment2 hr {margin: 10px 0;}
.allow-scroll{
	overflow:auto;
}

@media (min-width: 768px){
td.col-md-4 {
    	width:30% !important;
}
}
/*table-scrollable*/
td.nwp-desc-ba{
	word-break: break-all;
}


/* Modern Table & Prompt Styling */

/* Modern Card Container */
.verify-input-container {
    /* background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); */
    border-radius: 20px;
    /* padding: 2px; */
    margin: 20px 0;
    /* background: transparent; */
    box-shadow: 0 20px 40px rgba(102, 126, 234, 0.15);
}

.verify-input-card {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border-radius: 18px;
    /* padding: 30px; */
    border: 1px solid rgba(255, 255, 255, 0.2);
}

/* Modern Prompt Header */
.verify-prompt {
    background: linear-gradient(135deg, #f9ecd3 0%, #fff8e9 50%, #f9ebf5 100%);
    border: none;
    border-radius: 15px;
    padding: 25px 30px;
    margin-bottom: 0;
    box-shadow: 0 8px 32px rgba(255, 154, 158, 0.2);
    border-left: 5px solid #ff6b6b;
}

.verify-prompt h3 {
    color: #2c3e50;
    font-size: 24px !important;
    font-weight: 700;
    margin: 0 0 10px 0;
    letter-spacing: -0.5px;
}

.verify-prompt p {
    color: #5a6c7d;
    font-size: 16px;
    margin: 0;
    font-weight: 500;
}

/* Modern Action Buttons */
.modern-button-group {
    display: flex;
    gap: 15px;
    margin-bottom: 25px;
}

.modern-button {
    padding: 12px 24px;
    border: none;
    border-radius: 12px;
    font-weight: 600;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.modern-button.primary {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
}

.modern-button.secondary {
    background: white;
    color: #667eea;
    border: 2px solid #667eea;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.modern-button:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(102, 126, 234, 0.4);
}

.modern-button.secondary:hover {
    background: #667eea;
    color: white;
}

/* Modern Table Styling */

.table tbody tr {
    transition: all 0.3s ease;
    border-bottom: 1px solid #caced3;
}

.table tbody tr:hover {
    background: linear-gradient(90deg, #f8fafc 0%, #e2e8f0 100%);
    /* transform: scale(1.002); */
}

.table tbody tr:last-child {
    border-bottom: none;
}

.table td {
    padding: 16px 20px;
    border: none !important;
    font-size: 15px;
    color: #374151;
    vertical-align: middle;
}
.report-table-preview .table td{
	border:1px solid #999 !important;
}

.table td:first-child {
    font-weight: 600;
    color: #1f2937;
    background: linear-gradient(90deg, #f9fafb 0%, #ffffff 100%);
    border-right: 3px solid #e5e7eb;
    /* width: 200px; */
}

.table td:last-child {
    font-weight: 500;
    color: #111827;
}

/* Status and Type Badges */
.status-badge, .type-badge {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}


/* Responsive Design */
@media (max-width: 768px) {
    .verify-input-card {
        padding: 20px;
        margin: 10px;
    }
    
    .modern-button-group {
        flex-direction: column;
    }
    
    .table td {
        padding: 12px 15px !important;
        font-size: 14px;
    }
    
    .table td:first-child {
        width: 140px;
    }
}

/* Add subtle animations */
@keyframes slideInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.shopping-cart-table {
    animation: slideInUp 0.6s ease-out;
    background: #fff;
}
.report-table-preview-20{
    animation: slideInUp 0.6s ease-out;
	overflow-x: auto;
    margin-top: 20px;
    border-radius: 12px;
    box-shadow: 0 4px 6px rgb(0 0 0 / 5%);
	background:#fff;
}
.verify-input-card {
    animation: slideInUp 0.4s ease-out;
}

/* Micro-interactions */
.table td:first-child::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: transparent;
    transition: all 0.3s ease;
}

.table tbody tr:hover td:first-child::before {
    background: linear-gradient(180deg, #667eea 0%, #764ba2 100%);
}

.shopping-cart-table tbody tr td{
	/*font-size:11px;*/
	/* padding: 15px; */
	border-bottom: 1px solid #e2e8f0 !important;
}
.report-table-preview-20 thead tr th,
.shopping-cart-table tfoot tr th,
.shopping-cart-table thead tr th{
	background: #f7fafc;
    padding: 15px;
    text-align: center;
    font-weight: 600;
    color: #4a5568;
    border-bottom: 2px solid #e2e8f0;
}

    
.report-table-preview-20  tr.flag th,
.report-table-preview-20  tr.flag td,
.report-table-preview-20  tr.flag,
.shopping-cart-table tr.flag th,
.shopping-cart-table tr.flag td,
.shopping-cart-table tr.flag{
	background:#ffe5e1 !important;
}
