* { box-sizing: border-box; padding: 0; margin: 0; font-family: "Roboto", sans-serif; } :root { scroll-behavior: smooth; } body { --accent-color: #2237CD; --text-color: 17, 17, 17; --text-color-light: 85, 85, 85; --foreground-color: 255, 255, 255; --background-color: #e8e8e8; --dark-shade: #dadada; background: linear-gradient(rgba(var(--foreground-color), 0.1), rgba(var(--foreground-color), 0.3)), url(back.svg) no-repeat fixed; color: rgba(var(--text-color), 1); font-size: 16px; background-size: cover; } a { font-weight: 600; text-decoration: none; color: var(--accent-color); } .dark-text { color: #111; } h1 { font-size: 3.5rem; } h2 { font-size: 2rem; } h3 { font-size: 1.5rem; } h4 { font-size: 1rem; } h5 { font-size: 0.8rem; } h1, h2, h3, h4, h5 { font-family: "Poppins", sans-serif; font-weight: 600; } p { line-height: 1.5; max-width: 60ch; color: rgba(var(--text-color), 0.9); } strong { font-weight: 500; } button { position: relative; display: inline-flex; align-items: center; justify-content: center; text-transform: capitalize; padding: 0.6rem 1.2rem; font-weight: 600; cursor: pointer; border-radius: 0.3rem; color: var(--accent-color); transition: transform 0.3s; border: none; background: rgba(var(--text-color), 0.1); -webkit-tap-highlight-color: transparent; font-family: "Poppins", sans-serif; } button:focus { outline: thin solid rgba(var(--text-color-light), 0.4); } button:disabled { cursor: default; background: rgba(var(--text-color), 0.5); } button:disabled ~ .loader { opacity: 0; } input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; } input[type=text]::-ms-clear { display: none; width: 0; height: 0; } input[type=text]::-ms-reveal { display: none; width: 0; height: 0; } input[type=search]::-webkit-search-decoration, input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-results-button, input[type=search]::-webkit-search-results-decoration { display: none; } input[type=number] { -moz-appearance: textfield; } input:invalid { outline: none; box-shadow: none; } ::-moz-focus-inner { border: none; } .bottom-padding { padding-bottom: 1.5rem; } .top-padding { padding-top: 1em; } .bottom-margin { margin-bottom: 1.5rem; } .top-margin { margin-top: 1.5rem; } .flex { display: flex; } .grid { display: grid; } .grid-2 { grid-template-columns: auto auto; gap: 1em; } .align-center { align-items: center; } .direction-column { flex-direction: column; } .space-between { justify-content: space-between; } .label { margin-bottom: 0.4rem; } .light-text { opacity: 0.7; } .hide { opacity: 0; pointer-events: none; } .hide-completely { display: none !important; } .breakable { word-break: break-all; } .separator { padding: 0.1em; } .no-transformations { transform: none !important; } .loader { fill: none; stroke-width: 10; stroke: var(--accent-color); height: 2rem; width: 2rem; overflow: visible; stroke-dashoffset: 230; stroke-dasharray: 230; padding: 2px; justify-self: center; } @keyframes rotate { 100% { transform: rotate(360deg); } } @keyframes load { 50% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: -210; } } .action { position: relative; display: inline-flex; align-items: center; justify-content: center; padding: 0; background: none; } .action[disabled] .primary-btn { background: none; } .action h4 { padding: 0.5rem 1.2rem; font-size: 0.9rem; clip-path: circle(100%); transition: clip-path 0.3s; border-radius: 0.2rem; } .action .btn { z-index: 2; } .action .loader { position: absolute; z-index: 1; padding: 0.4em; } .clip { clip-path: circle(0) !important; } .animate-loader { animation: load 2.6s infinite, rotate 1s infinite linear; } .expand { width: 100%; } .fade-left { animation: fadeleft 0.3s; } .fade-right { animation: faderight 0.3s; } @keyframes faderight { from { opacity: 0; transform: translateX(-1em); } to { opacity: 1; transform: none; } } @keyframes fadeleft { from { opacity: 0; transform: translateX(1em); } to { opacity: 1; transform: none; } } #logo { display: inline-grid; align-items: center; grid-template-columns: auto 1fr; gap: 0.6rem 0.4rem; margin-right: 1rem; } #logo h4 { letter-spacing: 0.06rem; word-spacing: 0.12rem; } #logo h5 { font-weight: 400; } #logo #main_logo { height: 1.6rem; width: 1.6rem; fill: rgba(var(--text-color), 1); stroke: none; } textarea { width: 100%; max-width: 100%; background: rgba(var(--text-color), 0.1); border: none; border-radius: 0.2rem; resize: none; font-size: 1rem; line-height: 1.6; padding: 0.8rem; } *:empty + .empty-state { display: grid; } .empty-state { display: none; place-items: center; width: 100%; } .empty-state svg { stroke: rgba(var(--text-color), 0.8); height: 12em; width: 12em; } .container-header { display: flex; align-items: center; flex-direction: row; width: 100%; padding: 1rem 0; } .container-header h2 { flex: 1; } .container-header button { align-self: center; } .btn { background: var(--accent-color); color: rgba(var(--foreground-color), 1); padding: 0.4em 1em; } .back-arrow { stroke: rgba(var(--text-color), 1); stroke-width: 6; fill: none; height: 2rem; padding: 0.5rem 0.5rem 0.5rem 0; cursor: pointer; } .card { border-radius: 0.6rem; padding: 1.5em; background: rgba(var(--foreground-color), 1); } .solid-background { background: rgba(var(--foreground-color), 1) !important; } #confirmation, #prompt { flex-direction: column; } #confirmation p, #prompt p { margin: 1rem; } #confirmation h4, #prompt h4 { font-weight: 500; margin-bottom: 1.5rem; } #confirmation .flex sm-button:first-of-type, #prompt .flex sm-button:first-of-type { margin-right: 0.6em; margin-left: auto; } .refresh { margin-top: 0.6em; margin-bottom: 1em; } sm-popup .illustration { position: relative; height: 4rem; width: 4rem; padding: 1rem; stroke: var(--accent-color); margin-bottom: 1rem; border-radius: 5rem; background: rgba(var(--text-color), 0.06); } sm-popup sm-input:not(:last-of-type) { margin-bottom: 1rem; } sm-popup p { margin-block-end: 1rem; } sm-popup .action { margin-top: 1.5rem; } sm-popup .action h4 { padding: 0.8rem 1.6rem; } .popup-header { padding: 1.5rem; padding-bottom: 0; display: flex; align-items: center; width: 100%; } .popup-header .icon { margin-right: 1rem; padding: 0.2rem; stroke-width: 10; cursor: pointer; } .popup-header button { width: auto; margin-left: auto; } details, summary { margin-bottom: 1rem; } details p { border-radius: 0.2rem; padding: 0.5rem 1rem; background: rgba(var(--text-color), 0.06); margin-bottom: 0; } #sign_in_popup h3 { margin-top: 2rem; } #sign_in_popup h4 { font-weight: 500; margin-bottom: 3rem; } #sign_in_popup button { margin: 1rem 0; } #sign_in_popup p { margin-top: 1rem; margin-bottom: 0 !important; } .primary-btn { background: var(--accent-color); justify-content: center; color: rgba(var(--foreground-color), 1); } #main_header { align-items: center; padding: 1rem; justify-content: space-between; } .display-balance { gap: 1rem; grid-auto-flow: row; } .display-balance .balance { width: 100%; } .display-balance .icon { height: 1.4rem; width: 1.4rem; padding: 0.3rem; stroke-width: 10; cursor: pointer; } .icon { height: 1.2rem; width: 1.2rem; fill: none; stroke: rgba(var(--text-color), 0.8); stroke-width: 6; overflow: visible; stroke-linecap: round; stroke-linejoin: round; } #navbar { display: flex; flex-direction: row; align-items: center; justify-content: space-evenly; position: fixed; left: 0; right: 0; bottom: 0; top: auto; border-top: solid 1px rgba(var(--text-color), 0.2); border-right: none; z-index: 3; background: rgba(var(--foreground-color), 1); } #navbar .navbar-item { position: relative; text-align: center; cursor: pointer; padding: 0.3em; margin: 0.3em; border-radius: 0.4em; color: rgba(var(--text-color), 0.8); font-size: 0.8em; text-transform: capitalize; width: 100%; font-weight: 600; } #navbar .navbar-item h5 { margin-top: 0.4em; } #navbar .active { color: var(--accent-color); } #navbar .active .icon { stroke: var(--accent-color); } .banking { stroke-width: 4; } #home_page { padding: 1rem 0 4rem 0; } #home_page .left { padding: 1.5rem 0; width: auto; border-radius: 0.6rem; } #home_page .left h3, #home_page .left h4, #home_page .left p { padding: 0 1.5rem; } #home_page .left h3 { font-size: 2rem; margin-bottom: 1rem; } #home_page .user-panel { margin: 0 1.5rem; } .user-panel { position: relative; padding: 1.5rem; border-radius: 0.6rem; background: linear-gradient(135deg, var(--accent-color), #2F2B76); color: rgba(var(--foreground-color), 1); box-shadow: 0 0.1rem 0.1rem #00000010, 0 1rem 1rem -1rem #00000010; align-self: flex-start; } .user-panel .icon { stroke: rgba(var(--foreground-color), 1); } .user-panel .copy-row { margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: solid 1px rgba(var(--foreground-color), 0.3); } .user-panel sm-button { --text-color: rgba(var(--foreground-color), 1); background: rgba(var(--foreground-color), 0.2); border-radius: 2rem; } .user-panel .grid { gap: 1.5rem; grid-template-columns: 1fr 1fr; margin-top: 1rem; } .user-panel .grid h5 { font-weight: 500; } .user-panel .grid h4 { font-size: 1.2rem; } .user-panel .grid P { font-size: 0.8rem; opacity: 0.9; color: rgba(var(--foreground-color), 1); margin-bottom: 0 !important; max-width: 30ch; } .balance { display: grid; gap: 0 1rem; } .user-type { font-weight: 500; } .options-tab { margin: 1rem 0; } .options-tab > .grid { min-width: 100vw; padding: 0 1.5rem; grid-auto-flow: column; gap: 0.2rem; } .options-tab .option { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; border-radius: 0.4rem; margin-bottom: 1rem; width: 5rem; min-width: 5rem; text-transform: capitalize; transition: transform 0.3s; -webkit-tap-highlight-color: transparent; cursor: pointer; } .options-tab .option .icon { height: 3rem; width: 3rem; padding: 0.8rem; stroke: var(--accent-color); } .options-tab .option h4 { font-size: 0.9rem; font-weight: 500; } .options-tab .option:active { transform: scale(0.95); } .request-icon { transform: rotate(180deg); } .notification-dot::after { content: ""; position: absolute; z-index: 1; top: 0; right: 0; height: 0.6em; width: 0.6em; background-color: #E53935; border-radius: 0.4em; transition: transform 0.3s; } .shrink.notification-dot::after { transform: scale(0); } #deposit .container-header, #withdraw .container-header { background: linear-gradient(rgba(var(--foreground-color), 1) 90%, transparent); } sm-tab-header { position: sticky; top: 0; background: rgba(var(--foreground-color), 1); z-index: 2; margin-bottom: 1rem; border-bottom: solid 1px rgba(var(--text-color), 0.2); } sm-tab::part(tab) { padding: 0.8rem 0.4rem; text-transform: capitalize; } sm-panel { width: 100%; } .request { display: inline-flex; flex-direction: column; padding: 1.5em; border-radius: 0.4em; border: solid 1px rgba(var(--text-color), 0.2); } .request h5 { margin-bottom: 0.2rem; text-transform: capitalize; } .request h3, .request h4 { margin-bottom: 1.5rem; } .request h4:last-of-type { margin-bottom: 0; } .request .action { align-self: flex-end; } .request .amount { font-size: 1.4em; } .request button { width: auto; align-self: flex-end; margin-top: 1.5rem; margin-bottom: 0; } .request .copy-row { margin-bottom: 1.5rem; } .request .flex { align-items: center; justify-content: flex-end; margin-top: 1.5rem; } .request .flex h5 { margin: 0; } .request .flex button { margin: 0; } .deposited { color: #007732; } .deposited::before { content: "+ "; } .decline-request { margin-right: 0.5rem !important; } .withdrawn { color: #d43125; } .withdrawn::before { content: "- "; } .container { display: grid; gap: 1em; width: 100%; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); } .page { padding: 1rem 1.5rem; padding-bottom: 5rem; } .page .container-header { display: grid; grid-template-columns: 1fr auto; grid-template-areas: ". ." "search search"; gap: 1rem; top: 0; background: rgba(var(--foreground-color), 1); will-change: auto; z-index: 2; } .page .container-header .search { grid-area: search; } .page .container-header .search input { padding: 1em; border: none; width: 100%; background: var(--dark-shade); font-size: 1rem; font-weight: 500; color: rgba(var(--text-color), 1); border-radius: 0.2em; } .page .container-header .search input:focus { outline: none; background: rgba(var(--text-color-light), 0.2); } .copy-row { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 0.5rem; } .copy-row h4 { margin-bottom: 0; } .copy-row .icon { cursor: pointer; padding: 0.4rem; height: 1.8rem; width: 1.8rem; } .copy-row .copy { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .time { margin-bottom: 1.5rem !important; font-weight: 500; } #report_popup { width: 32rem; } #profile_page { display: flex; flex-direction: column; } #profile_page button { align-self: flex-start; } .complaint { display: grid; gap: 1.5rem 0; } .complaint .complaint-actions { align-items: center; margin: 1.5rem 0 0 0; } .complaint .processed { color: #007732; } .complaint .unprocessed { color: #d43125; } .complaint .processed, .complaint .unprocessed { margin-bottom: 1.5rem; } .complaint button .icon { padding: 0.2rem; margin-right: 0.5rem; stroke: var(--accent-color); stroke-width: 8; } .complaints-container { padding-top: 1.5rem; display: grid; align-items: flex-start; gap: 1.5rem; } #helpline_page sm-select { margin-bottom: 1.5rem; } .complaint-placeholder { animation: pulse infinite 0.6s alternate; } .complaint-placeholder h4, .complaint-placeholder h5 { border-radius: 0.2rem; } .complaint-placeholder h5 { background: rgba(var(--text-color), 0.1); padding: 0.5rem 0.6rem; } .complaint-placeholder h4 { background: rgba(var(--text-color), 0.2); padding: 0.8rem 0.8rem; } .complaint-placeholder .demo-btn { padding: 0.8rem 3rem; } @keyframes pulse { from { opacity: 0.4; } to { opacity: 1; } } #main_loader { text-align: center; place-content: center; height: 100vh; width: 100vw; position: fixed; left: 0; } #main_loader sm-button { margin-left: 0; margin-top: 1rem; } #main_loader svg { height: 2rem; width: 2rem; stroke: var(--accent-color); stroke-width: 6; fill: none; overflow: visible; stroke-linecap: round; stroke-dashoffset: 210; stroke-dasharray: 210; justify-self: center; align-self: center; margin-bottom: 2rem; } #main_loader h3 { width: 100%; font-weight: 400; word-spacing: 0.16em; } #upi_txId_section .copy-row { margin-bottom: 1.5rem; } #send_amount_to_deposit { margin-bottom: 0 !important; } @keyframes popup { 0% { stroke-dashoffset: 50; transform: translateY(4rem) scale(0.2, 0.6); } 40% { transform: translateY(0) scale(0.2); } 41% { transform: translateY(0) scale(0.2); } 50% { stroke-dashoffset: 50; transform: translateY(0) scale(1); } 100% { stroke-dashoffset: 0; } } #transaction_result { z-index: 12; } #transaction_result::part(popup) { background-image: url(card-back.svg); background-size: cover; background-position-y: -3rem; background-repeat: no-repeat; } #transaction_result .copy-row { grid-template-areas: "label label" ". ."; margin-top: 1rem; gap: 0 1rem; } #transaction_result .copy-row h4 { font-weight: 500; } #transaction_result h5 { grid-area: label; color: rgba(var(--text-color), 0.7); } #transaction_result h4, #transaction_result h5, #transaction_result p { text-align: center; } #transaction_result > h4 { font-size: 1.2rem; margin-top: 6rem; margin-bottom: 0.5rem; } #success_svg, #failure_svg { height: 5rem; width: 5rem; stroke-width: 4; align-self: center; stroke: none; stroke-dasharray: 50; fill: rgba(var(--foreground-color), 1); animation: popup 2s forwards cubic-bezier(0.175, 0.885, 0.32, 1.275); } #success_svg polyline { fill: none; stroke: #00C853; } #failure_svg line { stroke: #EF5350; } .rupee-symbol { height: 1rem; width: 1rem; fill: rgba(var(--text-color), 0.5); } #deposit_rupee .copy-row { margin-bottom: 1rem; } .activity { display: grid; background: rgba(var(--text-color), 0.06); border-radius: 0.6rem; padding: 1rem 1.2rem; gap: 0 1rem; grid-template-columns: auto 1fr auto; grid-template-areas: "icon type amount" "icon time time"; } .activity .icon { grid-area: icon; height: 3rem; width: 3rem; padding: 0.8rem; background: rgba(var(--text-color), 0.06); border-radius: 2rem; } .activity .activity-type { grid-area: type; } .activity .activity-amount { text-align: right; grid-area: amount; } .activity .activity-time { text-align: right; grid-area: time; color: rgba(var(--text-color), 0.7); font-weight: 500; } @media only screen and (max-width: 640px) { #home_page, #deposit { display: grid; gap: 1.5rem; grid-template-areas: "." "left"; grid-template-columns: minmax(0, 1fr); } #home_page .left, #deposit .left { grid-area: left; background: rgba(var(--text-color), 0.06); } sm-select { width: 100%; } } @media only screen and (min-width: 640px) { body { padding: 0 2rem; margin-left: 6rem; } sm-popup { background: rgba(var(--foreground-color), 1); } sm-popup::part(popup) { width: 24rem; } #confirmation { width: 24rem; } #navbar { justify-content: center; flex-direction: column; align-items: stretch; left: 0; bottom: 0; top: 0; right: auto; width: 6rem; border-top: none; border-right: solid 1px rgba(var(--text-color), 0.2); } #navbar .navbar-item { border-radius: 0.5rem; width: auto; padding: 0.5rem 0; margin: 0.5rem 0.6rem; } #navbar .navbar-item .icon { height: 1.4rem; width: 1.4rem; } #navbar .navbar-item:hover { background: rgba(var(--foreground-color), 0.2); } #navbar .navbar-item.active { background: rgba(var(--foreground-color), 1); color: var(--accent-color); } #navbar .navbar-item.active .icon { stroke: var(--accent-color); } .page { padding-bottom: 2rem; } #sign_in_popup { width: 24rem; } #profile_page .copy-row { display: inline-flex; } .options-tab > .grid { gap: 1rem; min-width: auto; } .options-tab .grid:first-of-type { padding-right: 0; } .options-tab .grid:last-of-type { padding-left: 0; } } @media only screen and (min-width: 800px) { .complaint { gap: 0 1.5rem; grid-template-columns: 1fr 1fr; grid-template-areas: ". . " "header header"; } .complaint .complaint-actions { grid-area: header; } .complaint .left { border-right: 1px solid rgba(var(--text-color), 0.2); } .complaint .left { padding-right: 1.5rem; } .complaint .right { display: flex; justify-content: center; flex-direction: column; } .user-panel { position: sticky; top: 1.5rem; } #home_page, #deposit { display: grid; gap: 1.5rem; grid-template-columns: minmax(0, 1fr) 24rem; } } @media only screen and (min-width: 1920px) { body { font-size: 24px; } } @media only screen and (min-width: 2048px) { body { font-size: 24px; } } @media only screen and (max-width: 320px) { body { font-size: 14px; } } @media (prefers-color-scheme: dark) { :root { --text-color: 238, 238, 238; --text-color-light: 170, 170, 170; --foreground-color: 26, 26, 26; --background-color: #111; --dark-shade: #1a1a1a; } } @media (prefers-color-scheme: light) { :root { --text-color: 17, 17, 17; --text-color-light: 85, 85, 85; --foreground-color: 255, 255, 255; --background-color: #e8e8e8; --dark-shade: #dadada; } } @media (prefers-color-scheme: no-preference) { :root { --text-color: 17, 17, 17; --text-color-light: 85, 85, 85; --foreground-color: 255, 255, 255; --background-color: #e8e8e8; --dark-shade: #dadada; } } @media (any-hover: hover) { .option:hover { background: rgba(var(--text-color), 0.1); } }