/* html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
}

main {
    display: block;
}

h1 {
    font-size: 2em;
    margin: 0.67em 0;
	font-weight:600 !important;
} */

hr {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

pre {
    font-size: 1em;
}

a {
    background-color: transparent;
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
}

code,
kbd,
samp {
    font-size: 1em;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

img {
    border-style: none;
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}

button,
input {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText;
}

fieldset {
    padding: 0.35em 0.75em 0.625em;
}

legend {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal;
}

progress {
    vertical-align: baseline;
}

textarea {
    overflow: auto;
}

[type="checkbox"],
[type="radio"] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit;
}

details {
    display: block;
}

summary {
    display: list-item;
}

template {
    display: none;
}

[hidden] {
    display: none;
}
.mb-0{margin-bottom:0 !important;}
.mr-0{margin-right:0 !important;}
.ml-0{margin-left:0 !important;}
.mt-0{margin-top:0 !important;}
.mb-1,.my-1{margin-bottom:.25rem!important}
.mb-2,.my-2{margin-bottom:.50rem!important}
.mb-3,.my-3{margin-bottom:1rem!important}
.mb-4,.my-4{margin-bottom:1.5rem!important}
.mb-5,.my-5{margin-bottom:3rem!important}
.mt-1{margin-top:.25rem!important}
.mt-2{margin-top:.50rem!important}
.mt-3{margin-top:1rem!important}
.mt-4{margin-top:1.5rem!important}
.mt-5{margin-top:3rem!important}
.mt-6{margin-top:5rem!important}
.mr-1{margin-right:.25rem!important}
.mr-2{margin-right:.50rem!important}
.mr-3{margin-right:1rem!important}
.mr-4{margin-right:1.5rem!important}
.mr-5{margin-right:3rem!important}
.ml-1{margin-left:.25rem!important}
.ml-2{margin-left:.50rem!important}
.ml-3{margin-left:1rem!important}
.ml-4{margin-left:1.5rem!important}
.ml-5{margin-left:3rem!important}
.footer__links a, .footer__links p{color:#fff;}
/* Thiet lap quang cao*/
.ads {
    width: 100%;
}

.ads-margin {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: auto;
}

.ads-left {
    display: none;
    position: absolute;
    top: 155px;
    left: 0;
    text-align: left;
    height: 600px;
}

.ads-right {
    display: none;
    position: absolute;
    top: 155px;
    right: 0;
    text-align: right;
}

.ads-content {
    height: 600px;
}

.ads-box {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.ads-title {
    display: block;
    text-align: center;
    background: 0 0;
    font-size: 11px;
    margin: 0;
    padding: 0;
    color: #b3b3b3;
    opacity: .6
}

.horizontal-title {
    text-align: left !important
}

.ads, .ads-left, .ads-right {
    z-index: 100;
}

* {
    margin: 0;
    padding: 0;
    border: 0;
    outline: none;
    text-rendering: optimizeLegibility;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/* a {
    text-decoration: none;
    cursor: pointer;
    background-color: transparent;
    outline: none;
    color: inherit;
} */

i {
    cursor: pointer;
    margin: 0 !important;
}

ul, li {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* h1, h2, h3, h4 {
    font-weight: normal;
    margin: 0;
} */

table {
    border-collapse: collapse;
}

table th,
table td {
    font-weight: normal;
    text-align: left;
    vertical-align: top;
}

input,
select,
textarea,
button {
    background-color: transparent;
    font-size: 16px;
    color: #333;
    outline: none;
}

button {
    -webkit-transition: background-color 0.2s ease 0s, color 0.2s ease 0s, border-color 0.2s ease 0s;
    -o-transition: background-color 0.2s ease 0s, color 0.2s ease 0s, border-color 0.2s ease 0s;
    transition: background-color 0.2s ease 0s, color 0.2s ease 0s, border-color 0.2s ease 0s;
}

input, button {
    border: 0;
}

/* p {
    margin-bottom: 1rem;
} */

/* .container {
    position: relative;
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 16px;
} */

.row {
    width: 100%;
}

.font-bold {
    font-weight: bold;
}

.d-block {
    display: block;
}

.d-inline {
    display: inline-block;
}

.d-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.d-r-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.d-c-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.sp {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.jc {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.bz {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.p-r {
    position: relative;
}

.absolute {
    position: absolute;
    top: 50%;
}

.text-overflow {
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    line-height: 1.5;
}

.text-center {
    text-align: center !important;
}

.text-uppercase {
    text-transform: uppercase;
}

.text-capitalize {
    text-transform: capitalize;
}

.m-r {
    margin-right: 10px;
}

.m-t {
    margin: 10px 0;
}

.flex-start {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.flex-end {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.gif {
    width: 100%;
    text-align: center;
}

#loading_img {
    width: 50px;
    height: 50px;
    background-color: transparent !important;
}

.hidden {
    display: none;
}

.al {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.clear {
    clear: both;
}

html {
    font-family: sans-serif;
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    font-weight: 400;
    line-height: 1.5;
    background-color: var(--bg-main);
    /* color: var(--color-black); */
	color:#000;
    font-size: 1rem;
}

/*header*/
header {
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
   /* position: fixed;
    top: 0;
    left: 0;*/
    width: 100%;
    z-index: 99;
    background-color: #f8f9fa;
}

.grid__menu {
    padding: 1rem 0;
}

.grid__menu--heading-logo {
    display: flex;
    align-items: center;
}

.grid__menu--heading-logo-text {
    font-weight: bold;
    font-size: var(--size-large);
    color: var(--color-black);
    margin-left: 0.5rem;
}

.logo-calculator {
    font-weight: 400;
    color: #2e6f40;
}

/*end header*/

/*game_play*/
.grid__timecard--heading {
    text-align: left;
}

.grid__timecard--heading h1 {
    font-size: 30px;
	color: #2e6f40;
}

.grid__timecard--description {
    
}

/*grid__calculate*/
.grid__calculate {
    border-bottom: 1px solid #000;
}

.grid__calculate--info {
    padding: 1rem 0;
}

.info__header>span {
    padding-right: 1rem;
}

.info__header--date {
    padding-left: 3rem;
}

.txt-input {
    box-sizing: border-box;
    width: 164px;
    height: 32px;
    background: var(--color-white);
    border: 1px solid #53565A;
    border-radius: 4px;
    padding: 0.5rem;
    font-size: 18px;
	color: inherit;
}
.txt-input::placeholder {
    color: #b4b4b4;
}
.txt-input:focus {
    background: #F8FFFF;
    border: 1px solid #007089;
}
.txt-input:focus::-webkit-input-placeholder {
    /* color: transparent; */
}
.txt-input:focus:-moz-placeholder {
    /* color: transparent; */
}
.txt-input:focus::-moz-placeholder {
    /* color: transparent; */
}
.txt-input:focus:-ms-input-placeholder {
    /* color: transparent; */
}
table {
    width: 100%;
    border-collapse: collapse;
}

.grid__calculate--control table, .result-mobile {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}
.result-mobile {
	overflow: hidden;
	margin-top:0.75rem;
}
.grid__calculate--control table th{
	height:52px;
	line-height:1;
}
.grid__calculate--control #weekdays-0 td{
	padding-top: 1rem;
}
.grid__calculate--control #weekdays-6 td{
	padding-bottom: 1rem;
}
table tbody {
    background-color: #F5F5F5;
}

table tr {
    width: 100%;
}

table td,
table th {
    padding: 0.5rem 1rem;
    vertical-align: middle;
}

table th {
    background-color: #2e6f40;
    color: var(--color-white);
}

.weekdays-name,
.weekdays-name-mobile {
    font-weight: 600;
}

.weekdays-name-mobile {
    display: none;
}

td .txt-input {
    width: 120px;
}

.total {
    text-align: right;
}

.txt-input.wrong-format {
    background-color: #FFEFED;
    border-color: #6E2D24
}

.grid__calculate--total {
    background-color: #2e6f40 !important;
	color:#fff;
}
.grid__calculate--control tbody tr:nth-child(1n){background-color: #ebfff1;}
.grid__calculate--control tbody tr:nth-child(2n){background-color: #ebfff1;}
.grid__calculate--control th{font-size:17px;}
.grid__calculate--error,
.grid__calculate--total {
    height: 52px;
    padding: 10px;
}

.grid__calculate--error {
    background-color: #FFEFED;
    color: var(--color-red);
    box-sizing: border-box;
    display: none;
}

.error-value {
    /* display: none; */
}

.explain {
    max-width: 16px;
    max-height: 16px;
    margin-left: 5px;
    position: relative;
    display: inline-flex;
    font-weight: 500;
}

.explain-details {
    position: absolute;
    width: 240px;
    bottom: 21px;
    left: 50%;
    transform: translateX(-50%);
    background: #F5F5F5;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 4px;
    font-size: 14px;
    padding: 4px;
    box-sizing: border-box;
    color: #000;
    display: none;
    z-index: 1;
}
.bb-2{border-bottom:2px solid #D4D4D4}
.explain-details::after {
    content: "";
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid #F5F5F5;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -5px;
}

.explain:hover .explain-details {
    display: block;
}

/*payment*/
.grid__calculate--payment {
    padding: 1rem 1rem;
    margin-bottom: 0rem;
}

.payment__flexbox {
    display: flex;
}


.payment__flexbox--info-item {
    display: flex;
    align-items: center;
    /* margin: 0.75rem 0; */
	margin: 1rem 0;
}

.payment__flexbox--info-item .txt-input {
    width: 80px;
}

span.payment-ratelabel::before {
    content: "$";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    left: 0.5rem;
    opacity: 0.8;
    color: #53565A;
}

#payment-rate {
    padding-left: 1.25rem;
}

.payment__flexbox--info-item select {
    height: 32px;
    background: var(--color-white);
    border: 1px solid #53565A;
    border-radius: 4px;
    padding: 0 0.5rem;
    font-size: 16px;
    box-sizing: border-box;
    width: 100%;
}

.payment--title {
    min-width: 130px;
}

.payment-explain {
    margin-left: 0.75rem;
    font-size: 1rem;
}

.txt-button {
    box-sizing: border-box;
    width: 120px;
    height: 38px;
    background: #F5F5F5;
    border: 1px solid #2e6f40;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    cursor: pointer;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    margin: 0.75rem auto;
    opacity: 0.9;
}
#reset{background-color: transparent;border-color: #dc3545;color: #dc3545;outline: none;}
#reset:hover{border-color: #ff0000;color: #ff0000;}
#print{background-color: transparent;border-color: #28a745;color: #28a745;outline: none;}
#print:hover{border-color: #16cb3f;color: #16cb3f;}
.txt-button#calculator {
    height: 52px;
    color: var(--color-white);
    background-color: #2e6f40;
    /* font-weight: 500; */
    font-size: 18px;
    margin-top: 0;
	outline: none;
}

.txt-button:hover {
    opacity: 1;
}

.payment__flexbox--info {
    width: 50%;
}

.payment__flexbox--control {
    width: 25%;
}

.payment__flexbox--results {
    width: 305px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-bottom: 0.75rem;
}

.payment__flexbox--results-item {
    display: flex;
    justify-content: space-between;
}

.results-item-pay {
    /* min-width: 94px; */
    /* padding: 0 1rem; */
    text-align: right;
}

/*end game_play*/
.site__description {
    
}

.site__description h1, .site__description h2, .site__description h3, .site__description h4, .site__description h5, .site__description h6 {
    color: #2e6f40;
    font-weight: 600;
    margin: revert;
}

.site__description h1 {
    font-size: var(--heading-size)
}

.site__description h2 {
    font-size: 26px
}
.site__description h3 {
    font-size: 20px
}
.site__description ol, .site__description ul {
    padding-left: 40px;
	margin-bottom:1rem;
}

.site__description li {
    list-style: disc;
	margin-bottom: 5px;
}

.site__description {
    font-size: 1rem;
}

/*print*/

.print__timecard {
    background-color: #fff;
    display: none;
}

page[size="A4"] {
    margin: 0;
    box-shadow: 0;
}

.page {
    width: 26cm;
    min-height: 29.7cm;
    padding: 1.5cm;
    margin: 1cm auto;
    margin: 0 auto;
    /* border: 1px #000 solid; */
    background: #fff;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
}

.page__heading--flex {
    display: flex;
    justify-content: space-between;
    margin-bottom: 1cm;
    align-items: center;
}

.page__heading--flex>*,
.page__result--flex {
    flex: 1;
}

.page__heading--flex h1 {
}

.domain {
    color: #000;
    font-size: 18px;
}

.page__table table {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    overflow: hidden;
}

.page table tr {
    border-bottom: 1px solid #B4B4B4;
}

.page table th {
    background-color: #F5F5F5;
    color: #212529;
}

.page table td {
    background-color: #fff;
}

.page table th,
.page table td {
    font-weight: 500;
}

.page table tr td:last-child {
    text-align: right;
}

.page table tr:last-child {
    border-bottom: 0;
}

.page__table {
    margin: 1cm 0;
}

.page table .page__table--result td {
    background-color: #D9D9D9;
}

.page__heading {
    padding: 0 1rem;
    box-sizing: border-box;
}

.page__result {
    display: flex;
    justify-content: space-between;
    line-height: 2;
    align-items: center;
}

.page__result--flex {
    flex: 1;
    padding: 1rem;
}

.page__result--info {
    border: 1px solid #B4B4B4;
}

.page__result--info>div>span {
    display: inline-block;
    min-width: 12px;
}

.page__result--money>div {
    display: flex;
    justify-content: space-between;
    max-width: 200px;
    margin-left: auto;
}

@page {
    size: A4;
    margin: 0;
}

/* 
header,
.header-control,
.grid__timecard,
footer {
    display: none;
}

.print__timecard {
    display: block;
} */

@media print {

    header,
    .header-control,
    .grid__timecard,
    footer, .no-print {
        display: none;
    }

    .print__timecard {
        display: block;
    }
	h1{font-size:33px !important;color:#000 !important;}
}
/*footer*/
footer {
    background-color: #2e6f40;
}

.footer__flexing {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1.5rem 0;
    box-sizing: border-box;
}

.footer__flexing .grid__menu--heading-logo {
    justify-content: center;
}

.footer__flexing .grid__menu--heading-logo-text {
    color: #fff;
}

.footer__flexing .logo-calculator {
    color: inherit;
}

.footer__links {
    /* text-align: left; */
}

.link {
    display: inline-block;
    padding: 1rem;
    color: var(--color-white)
}

:root {
    --bg-main: #fff;
    --color-black: #212529;
    --color-white: #ffffff;
    --color-red: #9D1911;
    --color-yellow: #FFB40D;
    --color-brown: #6E2D24;
    --line-width: 40px;
    --line-width-larger: 92px;
    --size-normal: 18px;
    --size-medium: 26px;
    --size-large: 32px;
    --margin-control: 225px;

}

.hidden-desktop {
    display: none;
}

@media (max-width:768px) {
	/* .grid__calculate {display: inline-block;} */
}
@media (max-width:767px) {
    table td, table th {
        padding: 10px;
    }

    body, .site__description {
        font-size: 1rem;
    }

    .link {
        display: block;
        text-align: center;
		padding: 0.5rem 0;
    }

    .explain {
        display: none;
    }

    .hidden-mobile {
        display: none;
    }

    .hidden-desktop {
        display: table-cell;
    }

    .txt-input, .payment__flexbox--info-item select {
        height: 40px;
    }

    th.total, td.total {
        display: none;
    }

    table td, table th {
        padding: 5px
    }

    .payment__flexbox {
        flex-direction: column;
    }

    .payment__flexbox--info, .payment__flexbox--control, .payment__flexbox--results {
        width: 100%;
    }

    .info__header--date {
        padding-left: 1rem;
    }

    .grid__calculate--payment {
        padding: 1rem 0;
        border-bottom: 0;
        margin-bottom: 0rem;
    }

    .payment__flexbox--control {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .txt-button {
        width: calc(50% - 0.5rem);
        height: 40px;
		margin: 1rem 0;
    }
	#reset.txt-button{
		margin-left:0;
	}

	#print.txt-button{
		margin-right:0;
	}
    .txt-button#calculator {
        width: 100%;
        height: 52px;
        margin-bottom: 0;
    }

    .result-mobile {
        display: table;
    }

    table.result-mobile td, table.result-mobile th {
        text-align: right;
        padding: 10px;
        font-weight: 500;
    }

    table.result-mobile tr td:first-child {
        text-align: left;
    }
}
.header-control{
	height: 50px;
}
@media (max-width:640px) {
	.payment__flexbox--info-item{
		margin:0.5rem 0;
	}
	.payment__flexbox--results{
		padding-bottom:1rem;
	}
	.payment__flexbox--control{
		order:1;
	}
	.grid__calculate--control tr td:first-child, .grid__calculate--control tr th:first-child {
		padding-left: 10px;
	}
	.header-control{
		height:45px!important;
	}
	.grid__menu--heading-logo img{
		/*width:32px;
		height:32px;*/
	}
	.grid__menu--heading-logo{
		justify-content: center;
	}
	.grid__menu--heading-logo-text{
		font-size: 20px;
		line-height: 1;
	}
    .grid__timecard--heading h1 {
        font-size: 32px;
    }
	.grid__menu{
		padding: 0.625rem 0;
	}
    td .txt-input {
        width: 90px;
        /* height: 40px; */
        font-size: 16px;
    }

    .weekdays-name {
        display: none;
    }

    .weekdays-name-mobile {
        display: inline;
    }

    .grid__calculate--error {
        display: none;
    }
	/* .container{
		padding: 0 10px;
	} */
	.grid__calculate--control #weekdays-0 td{
		padding-top: 0.625rem;
	}
	.grid__calculate--control #weekdays-6 td{
		padding-bottom: 0.625rem;
	}
}

@media (max-width:500px){
	.info__header{
		display:flex;
		flex-direction:column;
	}
	.info__header>span{
		padding-right:0;
	}
	.info__header .txt-input{
		width:170px;
	}
}

@media print {
    .grid__timecard--heading, .grid__calculate--error, .grid__calculate--payment, .site__description, footer {
        display: none;
    }
}