/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
:root,
:host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
    "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
    "Liberation Mono", "Courier New", monospace;
    --color-gray-300: oklch(87.2% 0.01 258.338);
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-sm: 24rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --leading-tight: 1.25;
    --leading-relaxed: 1.625;
    --radius-sm: 0.25rem;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
}
}
@layer base {
*,
::after,
::before,
::backdrop,
::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
}
html,
:host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(
    --default-font-family,
    ui-sans-serif,
    system-ui,
    sans-serif,
    "Apple Color Emoji",
    "Segoe UI Emoji",
    "Segoe UI Symbol",
    "Noto Color Emoji"
    );
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(
    --default-font-variation-settings,
    normal
    );
    -webkit-tap-highlight-color: transparent;
}
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;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
}
b,
strong {
    font-weight: bolder;
}
code,
kbd,
samp,
pre {
    font-family: var(
    --default-mono-font-family,
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    "Liberation Mono",
    "Courier New",
    monospace
    );
    font-feature-settings: var(
    --default-mono-font-feature-settings,
    normal
    );
    font-variation-settings: var(
    --default-mono-font-variation-settings,
    normal
    );
    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;
}
table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
}
:-moz-focusring {
    outline: auto;
}
progress {
    vertical-align: baseline;
}
summary {
    display: list-item;
}
ol,
ul,
menu {
    list-style: none;
}
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
    display: block;
    vertical-align: middle;
}
img,
video {
    max-width: 100%;
    height: auto;
}
button,
input,
select,
optgroup,
textarea,
::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
}
:where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
}
:where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
}
::file-selector-button {
    margin-inline-end: 4px;
}
::placeholder {
    opacity: 1;
}
@supports (not (-webkit-appearance: -apple-pay-button)) or
    (contain-intrinsic-size: 1px) {
    ::placeholder {
    color: currentcolor;
    @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
    }
    }
}
textarea {
    resize: vertical;
}
::-webkit-search-decoration {
    -webkit-appearance: none;
}
::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
}
::-webkit-datetime-edit {
    display: inline-flex;
}
::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
}
::-webkit-datetime-edit,
::-webkit-datetime-edit-year-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute-field,
::-webkit-datetime-edit-second-field,
::-webkit-datetime-edit-millisecond-field,
::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
}
::-webkit-calendar-picker-indicator {
    line-height: 1;
}
:-moz-ui-invalid {
    box-shadow: none;
}
button,
input:where([type="button"], [type="reset"], [type="submit"]),
::file-selector-button {
    appearance: button;
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto;
}
[hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
}
}
@layer utilities {
.visible {
    visibility: visible;
}
.relative {
    position: relative;
}
.mx-auto {
    margin-inline: auto;
}
.my-4 {
    margin-block: calc(var(--spacing) * 4);
}
.mt-1 {
    margin-top: calc(var(--spacing) * 1);
}
.mr-2 {
    margin-right: calc(var(--spacing) * 2);
}
.mr-3 {
    margin-right: calc(var(--spacing) * 3);
}
.mr-4 {
    margin-right: calc(var(--spacing) * 4);
}
.mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
}
.mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
}
.block {
    display: block;
}
.flex {
    display: flex;
}
.hidden {
    display: none;
}
.size-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
}
.size-12 {
    width: calc(var(--spacing) * 12);
    height: calc(var(--spacing) * 12);
}
.h-6 {
    height: calc(var(--spacing) * 6);
}
.h-90\.25 {
    height: calc(var(--spacing) * 90.25);
}
.h-\[2px\] {
    height: 2px;
}
.h-auto {
    height: auto;
}
.min-h-20\.25 {
    min-height: calc(var(--spacing) * 20.25);
}
.min-h-screen {
    min-height: 100vh;
}
.w-6 {
    width: calc(var(--spacing) * 6);
}
.w-full {
    width: 100%;
}
.max-w-\[575px\] {
    max-width: 575px;
}
.max-w-sm {
    max-width: var(--container-sm);
}
.min-w-25 {
    min-width: calc(var(--spacing) * 25);
}
.flex-1 {
    flex: 1;
}
.shrink-0 {
    flex-shrink: 0;
}
.transform {
    transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z)
    var(--tw-skew-x) var(--tw-skew-y);
}
.cursor-pointer {
    cursor: pointer;
}
.flex-col {
    flex-direction: column;
}
.items-center {
    align-items: center;
}
.items-start {
    align-items: flex-start;
}
.justify-between {
    justify-content: space-between;
}
.justify-center {
    justify-content: center;
}
.justify-end {
    justify-content: flex-end;
}
.gap-1 {
    gap: calc(var(--spacing) * 1);
}
.gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
}
.gap-3 {
    gap: calc(var(--spacing) * 3);
}
.rounded-full {
    border-radius: calc(infinity * 1px);
}
.rounded-sm {
    border-radius: var(--radius-sm);
}
.border {
    border-style: var(--tw-border-style);
    border-width: 1px;
}
.border-\[\#dedede\] {
    border-color: #dedede;
}
.border-gray-300 {
    border-color: var(--color-gray-300);
}
.bg-\[\#00000061\] {
    background-color: #00000061;
}
.bg-\[\#d3196a\] {
    background-color: #d3196a;
}
.bg-\[\#e1146d\] {
    background-color: #e1146d;
}
.bg-\[\#f2f2f2\] {
    background-color: #f2f2f2;
}
.bg-\[\#f7f7f7\] {
    background-color: #f7f7f7;
}
.bg-\[\#fff3eb\] {
    background-color: #fff3eb;
}
.bg-white {
    background-color: var(--color-white);
}
.p-0\.5 {
    padding: calc(var(--spacing) * 0.5);
}
.p-3 {
    padding: calc(var(--spacing) * 3);
}
.p-4 {
    padding: calc(var(--spacing) * 4);
}
.px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
}
.px-4 {
    padding-inline: calc(var(--spacing) * 4);
}
.px-8 {
    padding-inline: calc(var(--spacing) * 8);
}
.py-1 {
    padding-block: calc(var(--spacing) * 1);
}
.py-2 {
    padding-block: calc(var(--spacing) * 2);
}
.py-3 {
    padding-block: calc(var(--spacing) * 3);
}
.py-4 {
    padding-block: calc(var(--spacing) * 4);
}
.text-center {
    text-align: center;
}
.text-left {
    text-align: left;
}
.text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
}
.text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
}
.text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
}
.text-\[\.625rem\] {
    font-size: 0.625rem;
}
.text-\[1\.25rem\] {
    font-size: 1.25rem;
}
.leading-none {
    --tw-leading: 1;
    line-height: 1;
}
.leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
}
.leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
}
.font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
}
.font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
}
.text-\[\#454545\] {
    color: #454545;
}
.text-\[\#707070\] {
    color: #707070;
}
.text-\[\#e1146d\] {
    color: #e1146d;
}
.text-gray-300 {
    color: var(--color-gray-300);
}
.text-white {
    color: var(--color-white);
}
.underline {
    text-decoration-line: underline;
}
.transition-all {
    transition-property: all;
    transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
    );
    transition-duration: var(
    --tw-duration,
    var(--default-transition-duration)
    );
}
.transition-colors {
    transition-property: color, background-color, border-color,
    outline-color, text-decoration-color, fill, stroke,
    --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
    );
    transition-duration: var(
    --tw-duration,
    var(--default-transition-duration)
    );
}
.transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
    );
    transition-duration: var(
    --tw-duration,
    var(--default-transition-duration)
    );
}
.hover\:bg-\[\#d20f63\] {
    &:hover {
    @media (hover: hover) {
        background-color: #d20f63;
    }
    }
}
.hover\:bg-\[\#fdedf2\] {
    &:hover {
    @media (hover: hover) {
        background-color: #fdedf2;
    }
    }
}
.hover\:opacity-70 {
    &:hover {
    @media (hover: hover) {
        opacity: 70%;
    }
    }
}
.hover\:opacity-80 {
    &:hover {
    @media (hover: hover) {
        opacity: 80%;
    }
    }
}
.disabled\:cursor-not-allowed {
    &:disabled {
    cursor: not-allowed;
    }
}
.disabled\:bg-\[\#dedede\] {
    &:disabled {
    background-color: #dedede;
    }
}
.disabled\:text-\[\#999\] {
    &:disabled {
    color: #999;
    }
}
.disabled\:hover\:bg-\[\#dedede\] {
    &:disabled {
    &:hover {
        @media (hover: hover) {
        background-color: #dedede;
        }
    }
    }
}
}
@property --tw-rotate-x {
syntax: "*";
inherits: false;
}
@property --tw-rotate-y {
syntax: "*";
inherits: false;
}
@property --tw-rotate-z {
syntax: "*";
inherits: false;
}
@property --tw-skew-x {
syntax: "*";
inherits: false;
}
@property --tw-skew-y {
syntax: "*";
inherits: false;
}
@property --tw-border-style {
syntax: "*";
inherits: false;
initial-value: solid;
}
@property --tw-leading {
syntax: "*";
inherits: false;
}
@property --tw-font-weight {
syntax: "*";
inherits: false;
}
@layer properties {
@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or
    ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *,
    ::before,
    ::after,
    ::backdrop {
    --tw-rotate-x: initial;
    --tw-rotate-y: initial;
    --tw-rotate-z: initial;
    --tw-skew-x: initial;
    --tw-skew-y: initial;
    --tw-border-style: solid;
    --tw-leading: initial;
    --tw-font-weight: initial;
    }
}
}


/* Custom */
.bkash-logo {
    width: auto; 
    height: auto;
}

#merchant-name {
    font-size: 1rem;
}
#merchant-invoice {
    font-size: 0.75rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#merchant-amount {
    font-size: 1.5rem;
}
#input-label,
#pin-label,
#otp-label {
    font-size: 1.3rem;
}

#input-confirm-text {
    font-size: 1rem;
}

@media (max-width: 640px) {
    .bkash-logo {
        width: 5.5rem; 
        height: 2.5rem;
    }
    .merchant-logo-div {
        width: 2rem;
        height: 2rem;
    }

    #merchant-name {
        font-size: 0.75rem;
    }
    #merchant-invoice {
        font-size: 0.70rem;
        display: block; 
        inline-size: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    #merchant-amount {
        font-size: 1rem;
    }
    #input-label,
    #pin-label,
    #otp-label {
        font-size: 0.95rem;
    }
    #input-confirm-text {
        font-size: 0.85rem;
    }

    #app {
        padding: 16px;
        top: 16px;
        display: block;
    }
    #number-section,
    #otp-section,
    #pin-section {
        padding: 16px;
    }

    .processing-text {
        font-size: 1rem;
    }

    .bkash-input {
        font-size: 1rem;
    }

    #cancel-btn,
    #confirm-btn {
        font-size: 0.875rem;
        padding: 12px;
    }
}

.bkash-input:focus {
  outline: none !important;
  box-shadow: 0 0 0 4px rgba(255,255,255,.4) !important;

  --tw-ring-shadow: 0 0 #0000 !important;
  --tw-ring-offset-shadow: 0 0 #0000 !important;
}
.bkash-input {
  transition: box-shadow ease-in-out .3s;
}

.bkash-btn:focus {
  border-color: #fff;
  box-shadow: 0 0 0 3px #fff,0 0 5px 2px rgba(0,0,0,.15),0 0 10px 2px rgba(0,0,0,.1);
}
.bkash-btn {
  transition: background-color 30ms ease-in-out,box-shadow .3s ease-in-out;
}

.spinner {
  width: 20px;
  height: 20px;
  border: 3px solid rgba(255,255,255,0.3);
  border-radius: 50%;
  border-top-color: #fff;
  animation: spin 1s ease-in-out infinite;
  display: inline-block;
}

.section-spinner {
  width: 50px;
  height: 50px;
  border: 5px solid rgba(255,255,255,0.3);
  border-radius: 50%;
  border-top-color: #fff;
  animation: spin 1s ease-in-out infinite;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}