* { box-sizing: border-box; padding: 0; margin: 0; font-family: 'Roboto', sans-serif; } body { --accent-color: #4527A0; --text-color: 17, 17, 17; --text-color-light: 85, 85, 85; --foreground-color: 255, 255, 255; --background-color: rgba(var(--foreground-color), 1); --dark-shade: #f4f4f4; --error-color: #E53935; --hue: 255; --saturation: 61%; --lightness: 39%; color: rgba(var(--text-color), 1); font-size: 16px; background-size: cover; } body[data-theme="dark"]{ --accent-color: #a293d0; --text-color: 238, 238, 238; --text-color-light: 170, 170, 170; --foreground-color: 26, 26, 26; --background-color: #111; --dark-shade: #222; --hue: 255; --saturation: 39%; --lightness: 70%; background-color: var(--background-color); .flo-balance-card{ color: rgba(var(--text-color), 1); } #focus_illu{ opacity: 0.6; fill: rgba(var(--text-color), 0.5); } } a { font-weight: 500; 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; &:focus { outline: thin solid rgba(var(--text-color-light), .4); } &:disabled { cursor: default; background: rgba(var(--text-color), 0.4); } &:disabled~.loader { opacity: 0; } } ::-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; } .justify-right{ margin-left: auto; } .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: .1em; } .no-transformations { transform: none !important; } .capitalize{ text-transform: capitalize; } span.ripple{ position: absolute; border-radius: 50%; transform: scale(0); background: rgba(var(--text-color), 0.2); pointer-events: none; } sm-button[variant="outlined"]{ --accent-color: rgba(var(--text-color), 1); } .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; transition: opacity 0.3s; } @keyframes rotate { 100% { transform: rotate(360deg); } } @keyframes load { 50% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: -210; } } @keyframes load-btn-loader { 50% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: -220; } } #focus_illu{ pointer-events: none; height: 3rem; width: 3rem; position: absolute; left: 0; top: 0; z-index: 10; transition: transform 0.3s, opacity 0.3s; fill: var(--accent-color); path{ opacity: 0.3; } } #on_boarding{ position: absolute; left: 0; top: 0; border-radius: 0.8rem; box-shadow: 0.1em 0.2em 1em rgba(var(--text-color), 0.16); padding: 1.5rem; color: rgba(var(--foreground-color), 1); background: var(--accent-color); z-index: 10; transition: transform 0.3s, opacity 0.3s; &::after{ content: ''; position: absolute; left: 0; top: 1rem; width: 1.5rem; height: 2rem; background: inherit; } #total_tuts{ opacity: 0.8; font-size: 0.8rem; } h4{ margin-bottom: 0.5rem; font-size: 1.2rem; transition: transform 0.3s; } p{ color: inherit; margin-bottom: 1.5rem; transition: transform 0.3s; } .icon{ stroke: rgba(var(--foreground-color), 1); padding: 0.2rem; cursor: pointer; } } .action { position: relative; display: inline-flex; align-items: center; padding: 0; background: none; &:disabled{ .primary-btn { background: none; } } &:focus{ outline: none; } &.start-loading{ pointer-events: none; h4{ transform: translateX(0.6rem); background: inherit !important; color: rgba(var(--text-color), 0.9); } } h4 { padding: 0.5rem 1.2rem; font-size: 0.9rem; clip-path: circle(100%); transition: clip-path 0.3s; border-radius: 0.2rem; transition: 0.3s transform; } .btn { z-index: 2; } .loader { position: absolute; z-index: 1; height: 1.2rem; width: 1.2rem; stroke-dashoffset: 220; stroke-dasharray: 220; margin: 0 !important; left: 0; transition: opacity 0.3s; } .loader:not(.animate-loader){ opacity: 0; } .animate-loader { animation: load-btn-loader 2.6s infinite, rotate 1s infinite linear; } } .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: flex; align-items: center; h4{ font-weight: 500; font-size: clamp(1.1rem, 2vw, 1.2rem); } .main-logo { height: clamp(1.4rem, 2vw, 1.6rem); width: clamp(1.4rem, 2vw, 1.6rem); fill: rgba(var(--text-color), 1); stroke: none; margin-right: 0.2rem; } } textarea { width: 100%; max-width: 100%; background: rgba(var(--text-color), 0.1); color: inherit; 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%; svg { height: 12em; width: 12em; polyline, path, ellipse{ stroke-linecap: round; stroke-linejoin: round; stroke: rgba(var(--text-color), 0.7); fill: none; } } } .container-header { display: flex; align-items: center; flex-direction: row; width: 100%; padding: 1rem 0; h2 { flex: 1; } 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; h4 { font-weight: 500; margin-bottom: 1.5rem; } .flex { sm-button:first-of-type { margin-right: 0.6em; margin-left: auto; } } } #prompt{ .flex{ margin-top: 1rem; } } .refresh { margin-top: 0.6em; margin-bottom: 1em; } sm-popup{ sm-input:not(:last-of-type) { margin-bottom: 1rem; } p{ margin-block-end: 1rem; } .action{ h4{ padding: 0.5rem 1rem; font-weight: 500; } } .message{ margin-bottom: 0.2rem; } .message + .copy-row{ margin-bottom: 1.5rem; } h5:not(.tag){ font-family: 'Roboto', sans-serif; margin-bottom: 0.4rem; margin-top: 1rem; font-weight: 500; } } #reader{ overflow: hidden; } .my-qr-code{ background: #fff; border-radius: 0.5rem; padding: 1rem; max-width: max-content; } #qr_code_popup{ &::part(popup){ height: 80vh; max-height: 90vh; } &::part(popup-body){ padding: 0; } .popup-header{ padding-bottom: 1.5rem; } sm-tab-header{ margin: 0 auto; transform: translateX(-1rem); } sm-panel{ display: flex; flex-direction: column; align-items: center; text-align: center; } video{ width: 100% !important; object-fit: cover; } p{ margin-top: 1.5rem; opacity: 0.8; text-align: center; max-width: 30ch; } } sm-input[type="number"]{ font-size: 1.2rem; } .popup-header{ padding: 1.5rem; padding-bottom: 0; display: flex; align-items: center; width: 100%; .icon{ margin-right: 1rem; padding: 0.2rem; stroke-width: 10; cursor: pointer; } button{ width: auto; margin-left: auto; } } details, summary{ margin-bottom: 1rem; } summary{ cursor: pointer; } details{ h5{ line-height: 0.6; margin-bottom: 0; margin-top: 1.2rem !important; } p{ font-size: 0.9rem; line-height: 1.4; } } #sign_in_page { position: fixed; gap: 2rem; width: 100vw; height: 100vh; overflow-y: auto; left: 0; top: 0; align-items: center; justify-content: space-between; background: url(sign-in-bg.svg) center, rgba(var(--foreground-color), 1); background-size: cover; z-index: 5; padding: 0 6vw; .info{ align-items: center; h1{ line-height: 1.1em; font-weight: 800; font-size: clamp(1.5rem, 8vw, 4rem); margin-top: 1rem; } } .sign-in-box{ width: 100%; margin: 0 -2rem; z-index: 1; justify-self: center; padding: 1.5rem; border-radius: 0.5rem; background: rgba(var(--foreground-color), 1); sm-input{ text-align: left; } sm-panel{ width: 100%; } sm-tab-header{ margin: 0; background: none; align-self: flex-start; &::part(tab-header){ padding-bottom: 0.4rem; gap: 1.5rem; } } sm-tab::part(tab){ padding: 0.4rem 0; } sm-tab-panels{ margin-top: 3rem; } form{ width: 100%; } h2{ margin-bottom: 0.5rem; } h3{ font-weight: 500; } h4 { font-weight: 500; margin-bottom: 1.5rem; } h5{ opacity: 0.8; font-weight: 500; } .copy-row{ h4{ max-width: 34ch; } } .copy-row:not(:last-of-type){ margin-bottom: 1rem; } button { width: auto; margin-top: 1rem; padding: 0.6rem 1.6rem; } p { margin-bottom: 0.5rem; max-width: 35ch; margin-top: 0.5rem; margin-bottom: 1.5rem; } #credentials_section{ border-top: 1px rgba(var(--text-color), 0.2) solid; margin-top: 1rem; padding-top: 1.5rem; animation: slide-down 0.3s forwards; } } } @keyframes slide-down{ from{ transform: translateY(-1rem); } to{ transform: none; } } .primary-btn { padding: 0.6rem 1.2rem !important; background: var(--accent-color); justify-content: center; color: rgba(var(--foreground-color), 1); } #main_header { align-items: center; padding: clamp(1rem, 2vw, 2rem) 1rem; justify-content: space-between; } .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; z-index: 3; background: rgba(var(--foreground-color), 1); box-shadow: 0 -0.5rem 1rem #00000010; border-radius: 1rem 1rem 0 0; .navbar-item { position: relative; overflow: hidden; text-align: center; cursor: pointer; padding: 0.3rem; padding-top: 0.8rem; border-radius: 0.4em; opacity: 0.6; color: rgba(var(--text-color), 1); font-size: 0.8em; text-transform: capitalize; width: 100%; font-weight: 600; -webkit-tap-highlight-color: transparent; h5 { margin-top: 0.4em; } .icon{ stroke: rgba(var(--text-color), 1); } } .active{ opacity: 1; } } .banking { stroke-width: 4; } #home_page { padding: 0 0 4rem 0; .left { width: auto; border-radius: 0.6rem; h3, h4, p { padding: 0 1.5rem; } h3{ font-size: 2rem; margin-bottom: 1rem; } } } .user-panel { position: relative; padding: 1.5rem; padding-top: 1rem; align-self: flex-start; .icon{ stroke: rgba(var(--foreground-color), 1); } .action{ width: auto; justify-content: flex-end; h4{ border-radius: 2rem; background-color: rgba(var(--text-color), 0.1); color: rgba(var(--text-color), 1); width: auto ; } .clip{ clip-path: circle(0 at 100% 0) !important; } } } #deposit{ padding-top: 1.5rem; .flex{ sm-button{ margin-bottom: 1.5rem; } } .user-panel{ padding: 0 1rem; } .display-balance { grid-template-areas: 'rupee rupee' 'flo flo'; } sm-tab-header{ display: flex; } } .display-balance { grid-template-columns: 1fr 1fr; grid-template-areas: 'rupee .' 'flo flo'; gap: 0.8rem; margin-top: 1rem; .icon { height: 1.4rem; width: 1.4rem; padding: 0.3rem; stroke-width: 10; cursor: pointer; } } .balance{ height: 10rem; position: relative; display: flex; flex-direction: column; border-radius: 1rem; padding: 1rem; justify-content: flex-end; h4{ font-size: 2rem; font-family: 'Roboto', sans-serif; font-weight: 500; text-shadow: 1px 0.1rem 0.2rem #00000040; word-break: break-all; flex: 1; } h5{ opacity: 0.8; margin-bottom: 0.2rem; } .tooltip{ border-radius: 1rem; color: rgba(var(--text-color), 1); margin-left: auto; } } .rupee-balance-card{ grid-area: rupee; background: url("data:image/svg+xml,%3Csvg width='512' height='512' viewBox='0 0 512 512' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cg filter='url(%23filter0_d)'%3E%3Crect x='312' y='323' width='240' height='140' rx='18' transform='rotate(30 312 323)' fill='%231C783B'/%3E%3C/g%3E%3Cg filter='url(%23filter1_d)'%3E%3Crect x='431.283' y='302' width='240' height='140' rx='18' transform='rotate(50.0235 431.283 302)' fill='%232DBD5E'/%3E%3C/g%3E%3C/g%3E%3Cdefs%3E%3Cfilter id='filter0_d' x='225' y='320' width='301.846' height='265.244' filterUnits='userSpaceOnUse' color-interpolation-filters='sRGB'%3E%3CfeFlood flood-opacity='0' result='BackgroundImageFix'/%3E%3CfeColorMatrix in='SourceAlpha' type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0'/%3E%3CfeOffset dx='-5' dy='9'/%3E%3CfeGaussianBlur stdDeviation='6'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2 0'/%3E%3CfeBlend mode='normal' in2='BackgroundImageFix' result='effect1_dropShadow'/%3E%3CfeBlend mode='normal' in='SourceGraphic' in2='effect1_dropShadow' result='shape'/%3E%3C/filter%3E%3Cfilter id='filter1_d' x='307' y='299' width='285.477' height='297.86' filterUnits='userSpaceOnUse' color-interpolation-filters='sRGB'%3E%3CfeFlood flood-opacity='0' result='BackgroundImageFix'/%3E%3CfeColorMatrix in='SourceAlpha' type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0'/%3E%3CfeOffset dx='-5' dy='9'/%3E%3CfeGaussianBlur stdDeviation='6'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2 0'/%3E%3CfeBlend mode='normal' in2='BackgroundImageFix' result='effect1_dropShadow'/%3E%3CfeBlend mode='normal' in='SourceGraphic' in2='effect1_dropShadow' result='shape'/%3E%3C/filter%3E%3CclipPath id='clip0'%3E%3Crect width='512' height='512' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A") bottom right no-repeat, linear-gradient(200deg, rgba(var(--text-color), 0.1), rgba(var(--text-color), 0.2)); background-size: 9rem, cover; .tooltip{ box-shadow: 0 0 0 0.4rem rgba(var(--text-color), 0.1) inset; } } .in-process-balance{ background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1920' height='1080' viewBox='0 0 1920 1080'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:%231b1464;%7D.b%7Bfill:%2309083f;%7D.c%7Bfill:%2329abe2;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3Ebg-art1%3C/title%3E%3Cpolygon class='a' points='0 957.24 232 957.24 357 828 434 899 485 867 594 959 843 957 889 925 938 953 1301 953 1447 807 1555 915 1590 880 1623 913 1673 856 1744 957 1920 957.24 1920 1080 0 1080 0 957.24'/%3E%3Cpolygon class='b' points='495 959 594 959 485 867 434 899 495 959'/%3E%3Cpolygon class='c' points='232 957 357 828 247 957 232 957'/%3E%3Cpolygon class='c' points='1301 953 1447 807 1318.32 953 1301 953'/%3E%3C/svg%3E") left bottom, linear-gradient(135deg, #fd946a, #ff4857); background-size: cover; .tooltip{ box-shadow: 0 0 0 0.4rem #ff4857 inset; } } .flo-balance-card{ grid-area: flo; color: rgba(var(--foreground-color), 1); background: url("data:image/svg+xml,%3Csvg width='1920' height='1080' viewBox='0 0 1920 1080' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cg filter='url(%23filter0_d)'%3E%3Ccircle cx='1814.5' cy='977.5' r='437.5' fill='white'/%3E%3C/g%3E%3Cg filter='url(%23filter1_d)'%3E%3Ccircle cx='1814.5' cy='977.5' r='243.5' fill='%231B0980'/%3E%3C/g%3E%3C/g%3E%3Cdefs%3E%3Cfilter id='filter0_d' x='1344' y='515' width='913' height='913' filterUnits='userSpaceOnUse' color-interpolation-filters='sRGB'%3E%3CfeFlood flood-opacity='0' result='BackgroundImageFix'/%3E%3CfeColorMatrix in='SourceAlpha' type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0'/%3E%3CfeOffset dx='-14' dy='-6'/%3E%3CfeGaussianBlur stdDeviation='9.5'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2 0'/%3E%3CfeBlend mode='normal' in2='BackgroundImageFix' result='effect1_dropShadow'/%3E%3CfeBlend mode='normal' in='SourceGraphic' in2='effect1_dropShadow' result='shape'/%3E%3C/filter%3E%3Cfilter id='filter1_d' x='1538' y='709' width='525' height='525' filterUnits='userSpaceOnUse' color-interpolation-filters='sRGB'%3E%3CfeFlood flood-opacity='0' result='BackgroundImageFix'/%3E%3CfeColorMatrix in='SourceAlpha' type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0'/%3E%3CfeOffset dx='-14' dy='-6'/%3E%3CfeGaussianBlur stdDeviation='9.5'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2 0'/%3E%3CfeBlend mode='normal' in2='BackgroundImageFix' result='effect1_dropShadow'/%3E%3CfeBlend mode='normal' in='SourceGraphic' in2='effect1_dropShadow' result='shape'/%3E%3C/filter%3E%3CclipPath id='clip0'%3E%3Crect width='1920' height='1080' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A") center no-repeat, linear-gradient(270deg, #2f69e6, #1b0980); background-size: cover; .tooltip{ box-shadow: 0 0 0 0.4rem#1b0980 inset; } } .tooltip{ position: absolute; left: 0; right: 0; top: 0; bottom: 0; cursor: help; display: flex; flex-direction: column; background: rgba(var(--foreground-color), 1); z-index: 1; transition: clip-path 0.4s ease-out; clip-path: circle(0.8rem at calc(100% - 1.5rem) 1.4rem); scrollbar-width: thin; .tt-icon{ display: inline-flex; width: 3rem; height: 3rem; align-items: center; justify-content: center; margin-left: auto; font-weight: 600; } .tooltip-text{ padding: 1rem; padding-top: 0; line-height: 1.4; font-size: 0.9rem; font-weight: normal; overflow-y: auto; max-height: calc(100% - 3rem); max-width: 30ch; } &:hover{ clip-path: circle(100%); } } .user-type { font-weight: 500; } .options-tab { display: grid; grid-template-columns: repeat(4, 1fr); padding: 1.5rem; gap: 2rem 0.2rem; } .option { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; border-radius: 0.4rem; width: 5rem; text-transform: capitalize; -webkit-tap-highlight-color: transparent; cursor: pointer; overflow: hidden; .icon { height: 3rem; width: 3rem; background: rgba(var(--text-color), 0.06); border-radius: 2rem; padding: 0.8rem; margin-bottom: 0.6rem; } h4 { font-size: 0.85rem; opacity: 0.8; font-weight: 500; } } .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, #withdraw { .container-header { background: linear-gradient(rgba(var(--foreground-color), 1) 90%, transparent); } } sm-tab-header { position: sticky; top: 0; display: inline-flex; background-color: var(--dark-shade); z-index: 2; padding: 0.3rem; margin: 1rem 0; border-radius: 3rem; } sm-tab{ text-transform: capitalize; &::part(tab){ padding: 0.4rem 1.2rem; } } sm-panel{ width: 100%; } .request { display: grid; gap: 1rem; padding: 1.5em; border-radius: 0.6rem; background: rgba(var(--text-color), 0.06); h4{ font-weight: 400; font-size: 0.9rem; } h5 { text-transform: capitalize; font-weight: 400; opacity: 0.8; margin-bottom: 0.2rem; } .action { align-self: flex-end; } .amount { font-family: 'Roboto', sans-serif; } button { width: auto; } .flex { align-items: center; justify-content: flex-end; justify-self: flex-end; button { margin: 0; } } &.placeholder{ pointer-events: none; h4, h5{ padding: 0.5rem 0; background: rgba(var(--text-color), 0.06); } .btns{ display: grid; gap: 0.5rem; grid-auto-flow: column; justify-content: flex-end; h4{ width: 6rem; } } h5{ width: 50%; } .time{ width: 3rem; } animation: pulse infinite 0.6s alternate; &:nth-of-type(2){ animation-delay: 0.1s; } &:nth-of-type(3){ animation-delay: 0.2s; } &:nth-of-type(4){ animation-delay: 0.3s; } &:nth-of-type(5){ animation-delay: 0.4s; } &:nth-of-type(6){ animation-delay: 0.5s; } } } .deposited { color: #00C853; } .decline-request { margin-right: 0.5rem !important; } .withdrawn { color: #d43125; } .container { display: grid; gap: 1em; width: 100%; } @keyframes fade-in{ from{ opacity: 0; } to{ opacity: 1; } } .page { padding: 1rem 1.5rem; padding-bottom: 5rem; animation: fade-in 0.4s; .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; .search { grid-area: 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; &: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; width: auto; h4 { margin-bottom: 0; font-weight: 400; } .icon { cursor: pointer; padding: 0.4rem; height: 1.8rem; width: 1.8rem; } .copy { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } } .time { font-weight: 500; } #report_popup { width: 32rem; } #profile_page { display: flex; flex-direction: column; button { align-self: flex-start; } } .complaint { display: grid; gap: 1.5rem 0; .complaint-actions { align-items: center; margin: 1.5rem 0 0 0; } .processed { color: #007732; } .unprocessed { color: #d43125; } .processed, .unprocessed { margin-bottom: 1.5rem; } 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; h4, h5 { border-radius: 0.2rem; } h5 { background: rgba(var(--text-color), 0.1); padding: 0.5rem 0.6rem; } h4 { background: rgba(var(--text-color), 0.2); padding: 0.8rem 0.8rem; } .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; sm-button { margin-left: 0; margin-top: 1rem; } 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; } h3 { width: 100%; font-weight: 400; word-spacing: 0.16em; } } #upi_txId_section{ .copy-row{ margin-bottom: 1.5rem; } } @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_heading{ margin-bottom: 1rem; } .copy-row{ grid-template-areas: 'label label' '. .'; margin-top: 1rem; gap: 0 1rem; h4{ font-weight: 500; } } h5{ grid-area: label; color: rgba(var(--text-color), 0.7); } h4, h5, p{ text-align: center; } & > h4{ font-size: 1.2rem; margin-top: 2rem; margin-bottom: 0.5rem; } sm-button{ align-self: center; width: auto; } } #failure_svg{ height: 5rem; width: 5rem; stroke-width: 4; align-self: center; stroke: none; stroke-dasharray: 50; fill: rgba(var(--text-color), 0.1); animation: popup 2s forwards cubic-bezier(0.175, 0.885, 0.32, 1.275); } #success_art{ margin: 1rem 0; height: 14rem; width: 100%; align-self: center; circle{ transform-origin: center; transform: scale(0.4); animation: explode 1.6s forwards cubic-bezier(0.175, 0.885, 0.32, 1.275); } polygon{ transform-origin: center; transform: rotate(-20deg); animation: rotate-in-place 1s forwards cubic-bezier(0.175, 0.885, 0.32, 1.275); } polygon:nth-of-type(1){ animation-delay: 0.1s; } polygon:nth-of-type(2){ animation-delay: 0.2s; } polygon:nth-of-type(3){ animation-delay: 0.3s; } circle:nth-of-type(1){ animation-delay: 0.1s; } circle:nth-of-type(2){ animation-delay: 0.2s; } circle:nth-of-type(3){ animation-delay: 0.3s; } circle:nth-of-type(4){ animation-delay: 0.4s; } circle:nth-of-type(5){ animation-delay: 0.5s; } } #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-container{ display: grid; gap: 1rem; } .activity{ position: relative; overflow: hidden; 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 receiver time'; align-items: center; cursor: pointer; transition: transform 0.3s; .icon{ grid-area: icon; height: 3rem; width: 3rem; padding: 0.8rem; background: rgba(var(--text-color), 0.06); background-size: cover; border-radius: 2rem; } .activity-type{ grid-area: type; text-transform: capitalize; font-weight: 400; font-size: 0.8rem; } .activity-receiver{ grid-area: receiver; font-weight: 500; font-size: 0.9rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .activity-amount{ text-align: right; grid-area: amount; font-family: 'Roboto', sans-serif; white-space: nowrap; } .activity-time{ text-align: right; grid-area: time; color: rgba(var(--text-color), 0.7); font-weight: 500; white-space: nowrap; } .pending{ display: inline-flex; padding: 0.3rem 0.6rem; background: rgba(var(--text-color), 0.06); border-radius: 1rem; width: max-content; margin-left: 0.4rem; } &.placeholder{ pointer-events: none; animation: pulse infinite 0.6s alternate; .activity-type, .activity-receiver{ background: rgba(var(--text-color), 0.06); padding: 0.5rem 0; } .activity-type{ width: 50%; } &:nth-of-type(2){ animation-delay: 0.1s; } &:nth-of-type(3){ animation-delay: 0.2s; } &:nth-of-type(4){ animation-delay: 0.3s; } &:nth-of-type(5){ animation-delay: 0.4s; } &:nth-of-type(6){ animation-delay: 0.5s; } &:nth-of-type(7){ animation-delay: 0.6s; } &:nth-of-type(8){ animation-delay: 0.7s; } } } .back-arrow{ stroke-width: 10; margin-right: 0.5rem; padding: 0.2rem; } .select{ max-width: 50ch; position: relative; display: flex; width: 100%; border-radius: 0.3rem; background: rgba(var(--text-color), 0.06); align-items: center; &:first-of-type:not(:last-of-type){ border-radius: 0.3rem 0.3rem 0 0; } & + &{ margin-top: 0; border-radius: 0 0 0.3rem 0.3rem; border-top: solid 1px rgba(var(--text-color), 0.16); } label{ display: flex; align-items: center; cursor: pointer; flex: 1; padding: 0.8rem 1rem; } input[type="radio"]{ display: none; } input:checked ~ .radio .outer-ring{ stroke: var(--accent-color); } input:checked ~ .radio .inner-disc{ transform: none; } .radio{ width: 1.2rem; height: 1.2rem; fill: none; overflow: visible; margin-right: 0.6rem; .outer-ring{ stroke-width: 8; stroke: rgba(var(--text-color), 0.5); } .inner-disc{ transform-origin: center; fill: var(--accent-color); transform: scale(0); transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); } } .remove{ width: 3rem; height: 2rem; padding: 0.7rem; cursor: pointer; stroke-width: 10; } .tag{ grid-area: tag; opacity: 0.6; font-weight: 500; border: solid 1px rgba(var(--text-color), 0.4); padding: 0.2rem 0.4rem; border-radius: 0.3rem; margin-right: 0.5rem; } h4{ font-weight: 400; } } .add-upi{ margin-top: 0.4rem; justify-self: flex-start; width: max-content; } #transaction_page{ header{ padding: 0.5rem 0; .back-arrow{ grid-area: back; } h4{ text-transform: capitalize; } } h5{ font-weight: 400; font-family: 'Roboto', sans-serif; opacity: 0.8; margin-bottom: 0.4rem; text-transform: capitalize; } p:last-of-type{ margin: 2rem 0 1rem 0; font-size: 0.9rem; opacity: 0.8; } #transaction_details{ position: relative; padding: .5rem; //background-color: rgba(var(--text-color), 0.06); max-width: 50ch; border-radius: 0.5rem; .icon{ height: 4rem; width: 4rem; padding: 1.2rem; border-radius: 4rem; margin-top: 1rem; margin-bottom: 2rem; background: rgba(var(--text-color), 0.06); } .success{ background: #00C853; stroke-width: 8; stroke: var(--background-color); } .flex{ margin-bottom: 1.5rem; align-items: baseline; } strong{ font-weight: 500; &:not(:last-of-type) + sm-button{ margin-bottom: 1.5rem; margin-top: -0.4rem; } } strong:not(:last-of-type){ margin-bottom: 1rem; } sm-button{ width: max-content; margin-top: 0.6rem; } } .transaction-amount{ font-size: 2rem; font-weight: 400; } #transaction_time{ right: 0; position: absolute; margin: 1.5rem; } } @keyframes explode{ 0%{ transform: scale(0.4); } 80%{ transform: scale(1); } 100%{ transform: scale(0.9); } } @keyframes rotate-in-place{ 0%{ transform: rotate(-20deg); } 100%{ transform: none; } } #people_container{ display: grid; grid-template-columns: repeat(4, 1fr); padding: 1.5rem; gap: 2rem 0.2rem; } #add_person_btn{ cursor: pointer; display: flex; flex-direction: column; width: 5rem; text-align: center; transition: transform 0.3s; font-size: 0.85rem; opacity: 0.8; font-weight: 500; &:active{ transform: scale(0.95); } .icon{ height: 3rem; width: 3rem; border-radius: 2rem; stroke-width: 10; padding: 1rem; background: rgba(var(--text-color), 0.06); align-self: center; margin-bottom: 0.6rem; } } .person{ position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; cursor: pointer; transition: transform 0.3s; width: 5rem; -webkit-tap-highlight-color: transparent; } .person-initials, #person_initials{ display: flex; justify-content: center; height: 3rem; width: 3rem; font-size: 1.2rem !important; font-weight: 500; align-items: center; border-radius: 2rem; margin-bottom: 0.6rem !important; text-transform: uppercase; color: rgba(var(--foreground-color), 1); } .person-name{ font-size: 0.85rem; opacity: 0.8; font-weight: 500; text-align: center; } #person_popup{ & > .flex:first-of-type{ margin: 1rem 0; .flex{ margin-top: 0.5rem; .icon{ height: 2.6rem; width: 2.6rem; padding: 0.8rem; cursor: pointer; stroke-width: 8; &:hover{ background: rgba(var(--text-color), 0.06); } } } } h3{ text-transform: capitalize; } h5{ font-weight: 500; opacity: 0.8; } .copy-row{ margin-bottom: 1.5rem; } #show_person_name{ padding: 0.5rem 1rem; border-radius: 0.4rem; max-width: 30ch; &:focus{ outline: none; background: rgba(var(--text-color), 0.1); } } } #activity_page, #request_page, #settings_page{ .empty-state{ justify-content: left; } } #settings_page{ h4{ margin-top: 2rem; margin-bottom: 0.6rem; } .copy-row h4{ margin: 0; } p{ color: rgba(var(--text-color), 0.7); } sm-button{ margin-top: 0.8rem; } .flex{ max-width: 60ch; } .my-qr-code{ margin-bottom: 1.5rem; height: 14rem; img{ height: 100%; } } } @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); .left { grid-area: left; } } sm-select { width: 100%; } .hide-on-mobile{ display: none !important; } #transaction_page{ padding-top: 0; header{ padding: 1.5rem 0; } } #deposit{ .user-panel{ padding: 0; } } video{ height: 100vw; } } @media only screen and (min-width: 640px) { .hide-on-desktop{ display: none !important; } body { padding: 0 2rem; margin-left: 4rem; } #sign_in_page{ grid-auto-flow: column; .sign-in-box{ align-self: auto; width: 26rem; padding: 2rem; min-height: 80vh; min-width: 26rem; box-shadow: 0 0 0.3rem #00000016, 0 6rem 2rem -2rem #00000016; } } sm-popup{ background: rgba(var(--foreground-color), 1); } sm-popup::part(popup){ width: 24rem; } #confirmation { width: 24rem; } #on_boarding{ width: 26rem; &::before{ content: ''; position: absolute; transform: rotate(45deg); top: 1rem; left: -0.5rem; width: 1rem; height: 1rem; background: inherit; box-shadow: -0.1em 0 1em rgba(var(--text-color), 0.16); } } #navbar { justify-content: flex-start; flex-direction: column; align-items: stretch; left: 0; bottom: 0; top: 0; right: auto; border-top: none; border-radius: 0; background: rgba(var(--text-color), 0.06); box-shadow: -0.5rem 0 0.5rem #00000008 inset; .navbar-item { display: flex; width: auto; padding: 0.8rem 1.2rem; .icon { height: 1.2rem; width: 1.2rem; } h5{ display: none; } &:hover { opacity: 1; } } .logo{ margin: 1.5rem 1rem; h4{ display: none; } .main-logo{ height: 1.2rem; width: 1.2rem; } } .active{ background: rgba(var(--text-color), 0.06); } } .page { padding-bottom: 2rem; } #home_page { padding-top: 0.5rem; .left { margin-top: 1rem; } } .options-tab, #people_container{ grid-template-columns: repeat(auto-fill, minmax(5rem, 1fr)); gap: 2rem 0.8rem; } .display-balance{ .balance{ height: 9rem; } } .request{ grid-template-columns: minmax(0, auto) auto; grid-template-areas: 'time time' ' . .' ' . .'; .time{ grid-area: time; margin-bottom: 0 !important; } button{ width: max-content; margin-left: auto; } .breakable{ white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } } #deposit{ .user-panel{ padding-right: 0; } } #settings_page{ .copy-row{ display: inline-grid; } } } @media only screen and (min-width: 800px) { body { margin-left: 11rem; } .complaint { gap: 0 1.5rem; grid-template-columns: 1fr 1fr; grid-template-areas: '. . ''header header'; .complaint-actions { grid-area: header; } .left { border-right: 1px solid rgba(var(--text-color), 0.2); padding-right: 1.5rem; } .right { display: flex; justify-content: center; flex-direction: column; } } #navbar{ .navbar-item { h5{ font-size: 0.9rem; margin: 0; display: block; } } .icon{ margin-right: 0.8rem; } .logo{ h4{ display: block; font-size: 1rem; } } } .user-panel{ position: sticky; top: 1.5rem; padding-top: 1.5rem; } #home_page, #deposit { display: grid; gap: 1.5rem; grid-template-columns: minmax(0, 1fr) 22rem; } #deposit{ grid-template-columns: minmax(0, 1fr) 18rem; .user-panel{ padding-right: 0; } } .activity{ width: 60ch; } .request{ grid-template-columns: minmax(0, auto) auto; grid-template-areas: 'time time' ' . .' ' . .'; } } @media only screen and (min-width: 1280px) { .request{ grid-template-areas: 'time time time' '. . .'; } #deposit{ grid-template-columns: minmax(0, 1fr) 20rem; .request{ grid-template-areas: 'time time time time' '. . . .'; } #unconfirmed_requests_container .request{ display: flex; flex-direction: column; } } } @media only screen and (max-width: 320px) { body { font-size: 14px; } } @media (any-hover: hover) { .navbar-item:hover{ background: rgba(var(--text-color), 0.06); } .remove{ opacity: 0.6; } .remove:hover{ opacity: 1; } }