/* Format CSS */
*,
:after,
:before {
    box-sizing: border-box;
    border: 0 solid #e5e7eb
}
html::-webkit-scrollbar {
    width: 3px;
    height: 5px;
}
html::-webkit-scrollbar-thumb {
    background-color: #005c4b;
    border-radius: 5px;
}
html {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    font-family: ui-sans-serif, system-ui, -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;
    color: #444444;
    background-color: #f1f6f7;
}
body {
    position: relative;
    width: 100%;
    margin: 0 auto;
    background-color: #f1f6f7;
}
hr {
    height: 0;
    color: inherit;
    border-top-width: 1px
}
abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: inherit;
    font-weight: inherit
}
a {
    color: inherit;
    text-decoration: inherit
}
b,
strong {
    font-weight: bolder
}
code,
kbd,
pre,
samp {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
    font-size: 1em
}
small {
    font-size: 80%
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: initial
}
sub {
    bottom: -.25em
}
sup {
    top: -.5em
}
table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse
}
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    color: inherit;
    margin: 0;
    padding: 0
}
button,
select {
    text-transform: none
}
[type=button],
[type=reset],
[type=submit],
button {
    appearance: button;
    -webkit-appearance: button;
    background-color: initial;
    background-image: none
}
:-moz-focusring {
    outline: auto
}
:-moz-ui-invalid {
    box-shadow: none
}
progress {
    vertical-align: initial
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto
}
[type=search] {
    appearance: textfield;
    -webkit-appearance: textfield;
    outline-offset: -2px
}
::-webkit-search-decoration {
    -webkit-appearance: none
}
::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}
summary {
    display: list-item
}
blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre {
    margin: 0
}
fieldset {
    margin: 0
}
fieldset,
legend {
    padding: 0
}
menu,
ol,
ul {
    list-style: none;
    margin: 0;
    padding: 0
}
textarea {
    resize: vertical
}
input::-moz-placeholder,
textarea::-moz-placeholder {
    opacity: 1;
    color: #9ca3af
}
input::placeholder,
textarea::placeholder {
    opacity: 1;
    color: #9ca3af
}
[role=button],
button {
    cursor: pointer
}
:disabled {
    cursor: default
}
audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
    display: block;
}
img,
video {
    max-width: 100%;
    height: auto
}
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    overflow-x: unset hidden
}
html,
img {
    image-rendering: -webkit-optimize-contrast
}
main {
    display: block
}
h1 {
    font-size: 2em;
    margin: .67em 0
}
hr {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
    overflow: visible
}
pre {
    font-family: monospace, monospace;
    font-size: 1em
}
a {
    background-color: #fff0
}
abbr[title] {
    border-bottom: 0;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}
b,
strong {
    font-weight: bolder
}
code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}
small {
    font-size: 80%
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}
sub {
    bottom: -.25em
}
sup {
    top: -.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
}
input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0
}
input[type="number"] {
    appearance: textfield;
    -moz-appearance: textfield
}
select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none
}
button,
select {
    text-transform: none
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
    appearance: button;
    -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
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
    position: relative;
    background-color: var(--main-bg-color);
    color: var(--main-text-color);
    width: fit-content;
    padding: .3rem .75rem;
    outline: none;
    border: none;
    border-radius: .5rem
}
button a,
[type="button"] a,
[type="reset"] a,
[type="submit"] a,
button a,
[type="button"] a:link,
[type="reset"] a:link,
[type="submit"] a:link {
    color: var(--main-text-color)
}
fieldset {
    padding: .35em .75em .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"] {
    appearance: textfield;
    -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
}
a[name='more'],
[hidden],
.hidden,
.no-items {
    display: none !important
}
table,
img {
    max-width: 100%;
    height: auto
}

table[border="1"] {
    border-collapse: collapse
}

table[border="1"] td {
    vertical-align: top;
    text-align: left;
    font-size: 14px;
    font-size: .875rem;
    padding: 3px 10px;
    border: 1px solid rgb(0 0 0 / .23)
}
table[border="1"] th {
    vertical-align: top;
    text-align: center;
    font-size: 14px;
    font-size: .875rem;
    font-weight: 700;
    padding: 5px 10px;
    border: 1px solid rgb(0 0 0 / .23)
}
tr,
td {
    transition: all 0.3s;
    -webkit-transition: all 0.3s
}
.table,
table {
    margin: 2rem 0
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%
}
table thead {
    background-color: #f0f0f0
}
thead tr {
    text-align: left
}
thead th {
    white-space: nowrap
}
th,
td {
    padding: .75rem;
    border: .01rem solid rgb(0 0 0 / .05)
}
.center {
    position: relative;
    margin: 0 auto;
    text-align: center
}

/* Header */
.header-hidden, .header-hidden h1 {
    visibility: hidden;
    opacity: 0;
    height: 0;
    overflow: hidden;
    text-indent: -9999px;
    margin: 0;
    padding: 0;
}

/* Main */
main {
    position: relative;
    display: block;
    width: calc(100% - 1.5rem);
    max-width: 800px;
    margin: 1.5rem auto;
    padding: .75rem;
    background-color: #ffffff;
    border-radius: .85rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}
.wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: #ffffff;
    width: 95%;
    max-width: 800px;
    padding: 0;
    margin: 1rem auto;
    gap: 1rem;
}
.transaction {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    gap: 1.2rem;
}
.transaction-wrap {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
}
.transaction img {
    position: relative;
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
}
.title-form {
    margin: 0 0 .6em;
    font-weight: 700;
    font-size: 110%;
}
.form-content {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: .75rem;
}
.dataform {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: .5rem;
}
.dataform label {
    visibility: hidden;
    opacity: 0;
    height: 0;
    overflow: hidden;
    text-indent: -9999px;
    margin: 0;
    padding: 0;
}
.status .dataform label {
    display: block;
    font-size: .95rem;
    font-weight: 500;
}
.dataform input, .dataform select, .dataform textarea {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
    width: 100%;
    padding: .75rem;
    border: 2px solid #edf2f7;
    outline: none;
    border-radius: .5rem;
    transition: all .75s ease-in-out;
}
.dataform textarea {
    min-height: 120px;
    resize: vertical;
}
.dataform input:focus, .dataform input:hover, .dataform input:active, .dataform select:focus, .dataform select:hover, .dataform select:active, .dataform textarea:focus, .dataform textarea:hover, .dataform textarea:active {
    border-color: #0cc2aa;
}
.dataform .show-password {
    position: absolute;
    bottom: 25%;
    z-index: 9;
    right: 10px;
    cursor: pointer;
}
.dataform span.show-password svg {
    width: 24px;
    height: 24px;
    fill: #444444;
}
.form-content button, .form-content .link {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    background-color: #0cc2aa;
    color: #ffffff;
    width: 100%;
    padding: .75rem 1rem;
    border-radius: .75rem;
    cursor: pointer;
    transition: all .75s ease-in-out;
    gap: .75rem;
}
.form-content button:hover, .form-content button:active, .form-content .link:hover, .form-content .link:active {
    background-color: #233bb4;
}
.form-content button svg, .form-content .link svg {
    width: 24px;
    height: 24px;
    fill: #ffffff;
}
.item-produk {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
}
.produk-container {
    position: relative;
}
.data-produk {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    gap: 1.2rem;
}
.image-produk {
    position: relative;
    width: 100%;
    margin: auto;
}
.image-produk .item-image {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: .75rem auto;
    padding: .75rem;
    border: 2px solid #0cc2aa;
    border-radius: .5rem;
}
.detail-produk {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    gap: .75rem;
}
.detail-produk h3 {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 700;
}
.tombol-button {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    gap: 1.2rem;
}
.tombol-button button {
    width: 46px;
    height: 46px;
}
.metode-pembayaran {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    width: 100%;
    margin: 1rem 0 1.2rem 0;
    gap: .75rem;
}
.metode-pembayaran button {
    width: auto;
    background-color: transparent;
    border: 1.5px solid #e5e7eb;
}
.metode-pembayaran button:hover, .metode-pembayaran button:active {
    background-color: transparent;
    border-color: #2196F3;
}
.metode-pembayaran button span {
    position: relative;
    height: 16px;
    width: 16px;
    background-color: #fff;
    border: 1px solid #2196F3;
    border-radius: 50%;
}
.metode-pembayaran button span:after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
}
.metode-pembayaran button.active span:after {
    background-color: #0095da;
}

/* Information Notif */
#information {
    display: none;
    position: fixed;
    z-index: 1000;
    bottom: 50%;
    left: 50%;
    transform: translateX(-50%);
    width: calc(85% - 40px);
    max-width: 420px;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 10px 20px;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    border: 0;
    border-radius: 16px;
    background-color: rgba(0, 0, 0, 0.87);
    color: #fff;
    font-weight: 500;
    font-size: 90%;
    text-align: center;
    box-shadow: 0 30px 40px rgba(0, 0, 0, 0.15);
}
#information .warning, .box-chart .warning {
    position: relative;
    display: block;
    margin: auto;
    margin-bottom: 5px;
    width: 100px;
}
#information .warning.failed, .box-chart .warning.failed {
    fill: #cf1b30;
}
#information .warning.success, .box-chart .warning.success {
    fill: #34bb80;
}
#information .warning svg, .box-chart .warning svg {
    width: 100px!important;
    height: 100px!important;
}

/* Loading */
.loading-process {
display: none;
align-items: center;
justify-content: center;
background-color: #ffffff54;
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
line-height: 0;
z-index: 1001;
}
.loading-process.active {
display: flex;
}
.loading-process svg {
width: 46px;
height: 46px;
}
.loading-process .circular {
width: 30px;
height: 30px;
-webkit-animation: rotate 1s linear infinite;
animation: rotate 1s linear infinite;
-webkit-transform-origin: center center;
-ms-transform-origin: center center;
transform-origin: center center;
}
.loading-process .path {
stroke-dasharray: 1, 200;
stroke-dashoffset: 0;
-webkit-animation: dash 1.5s ease-in-out infinite, color 2s ease-in-out infinite;
animation: dash 1.5s ease-in-out infinite, color 2s ease-in-out infinite;
stroke-linecap: round;
}
@-webkit-keyframes rotate {
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@keyframes rotate {
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@-webkit-keyframes dash {
0% {
stroke-dasharray: 1, 200;
stroke-dashoffset: 0;
}
50% {
stroke-dasharray: 89, 200;
stroke-dashoffset: -35px;
}
100% {
stroke-dasharray: 89, 200;
stroke-dashoffset: -124px;
}
}
@keyframes dash {
0% {
stroke-dasharray: 1, 200;
stroke-dashoffset: 0;
}
50% {
stroke-dasharray: 89, 200;
stroke-dashoffset: -35px;
}
100% {
stroke-dasharray: 89, 200;
stroke-dashoffset: -124px;
}
}
@-webkit-keyframes color {
0%,
100% {
stroke: #ff6060;
}
40% {
stroke: #fbaa39;
}
66% {
stroke: #2962ff;
}
80%,
90% {
stroke: #56b856;
}
}
@keyframes color {
0%,
100% {
stroke: #ff6060;
}
40% {
stroke: #fbaa39;
}
66% {
stroke: #2962ff;
}
80%,
90% {
stroke: #56b856;
}
}
