Send.request
@@ -73,7 +77,49 @@
Sign In
Welcome back, glad to see you again
@@ -87,7 +133,7 @@diff --git a/css/bg-art-5.svg b/css/bg-art-5.svg new file mode 100644 index 0000000..c71d67d --- /dev/null +++ b/css/bg-art-5.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/css/main.css b/css/main.css index 6738365..5ed4206 100644 --- a/css/main.css +++ b/css/main.css @@ -96,14 +96,12 @@ a.button { button { -webkit-user-select: none; -moz-user-select: none; - -ms-user-select: none; user-select: none; position: relative; display: inline-flex; border: none; background-color: transparent; overflow: hidden; - color: inherit; -webkit-tap-highlight-color: transparent; align-items: center; font-size: 0.9rem; @@ -112,6 +110,7 @@ button { padding: 0.8rem; border-radius: 0.3rem; justify-content: center; + color: inherit; } button:focus-visible { outline: var(--accent-color) solid medium; @@ -121,8 +120,12 @@ button:not(:disabled) { } .button { + color: var(--accent-color); background-color: rgba(var(--text-color), 0.06); } +.button .icon { + fill: var(--accent-color); +} .button--primary, .button--danger { color: rgba(var(--background-color), 1) !important; } @@ -179,7 +182,6 @@ details summary { display: flex; -webkit-user-select: none; -moz-user-select: none; - -ms-user-select: none; user-select: none; cursor: pointer; align-items: center; @@ -249,7 +251,6 @@ strip-option { --border-radius: 0.2rem; -webkit-user-select: none; -moz-user-select: none; - -ms-user-select: none; user-select: none; } @@ -305,12 +306,11 @@ ol li::before { text-overflow: ellipsis; } -.breakable { +.wrap-around { overflow-wrap: break-word; word-wrap: break-word; word-break: break-word; -webkit-hyphens: auto; - -ms-hyphens: auto; hyphens: auto; } @@ -504,6 +504,10 @@ ol li::before { background-color: var(--accent-color); } +.margin-right-0-3 { + margin-right: 0.3rem; +} + .margin-right-0-5 { margin-right: 0.5rem; } @@ -531,26 +535,15 @@ ol li::before { display: flex; justify-content: space-between; margin-bottom: 1.5rem; - min-height: 8rem; + min-height: 5rem; } .page__header .grid { margin-top: auto; } .page__header h1 { - margin-top: auto; font-size: 2rem; } -.page-layout { - display: grid; - gap: 1.5rem 0; - grid-template-columns: 1.5rem minmax(0, 1fr) 1.5rem; - align-content: flex-start; -} -.page-layout > * { - grid-column: 2/3; -} - #confirmation_popup, #prompt_popup { flex-direction: column; @@ -622,19 +615,34 @@ ol li::before { #sign_in, #sign_up { - justify-items: center; - align-content: center; -} -#sign_in section, -#sign_up section { - margin-top: -8rem; - width: min(24rem, 100%); + justify-content: center; + align-items: center; } #sign_in sm-form, #sign_up sm-form { margin: 2rem 0; } +#sign_in { + display: grid; + padding-top: 0; + align-items: center; + align-content: center; + padding-bottom: 0; +} +#sign_in .illustration { + width: 100%; + height: auto; + background-color: #4d77ff; + border-radius: 1rem; +} +#sign_in section { + background-color: rgba(var(--foreground-color), 1); + padding: 2rem; + border-radius: 0.5rem; + margin-top: -2.3rem; +} + #sign_up .h2 { margin-bottom: 0.5rem; } @@ -660,27 +668,44 @@ ol li::before { } #main_header { - padding: 1.5rem; + display: grid; + gap: 1.5rem; + padding: 1rem 1rem; + align-items: center; + grid-template-columns: minmax(0, 1fr) auto; + min-height: 4rem; +} + +.logged-in-user-id { + background-color: rgba(var(--text-color), 0.06); + max-width: -webkit-fit-content; + max-width: -moz-fit-content; + max-width: fit-content; + padding: 0.4rem 0.8rem 0.4rem 0.5rem; + border-radius: 2rem; + font-weight: 500; } #main_card { - display: grid; - grid-template-columns: minmax(0, 1fr); - grid-template-rows: auto 1fr; + position: relative; + display: flex; + flex-direction: column; height: 100%; width: 100%; transition: background-color 0.3s; - background-color: rgba(var(--foreground-color), 1); + background-color: rgba(var(--background-color), 1); } #main_navbar { + position: fixed; display: flex; - background: rgba(var(--text-color), 0.03); -} -#main_navbar.hide-away { - position: absolute; + justify-self: center; + margin: 0.5rem; } #main_navbar ul { + border-radius: 1rem; + background-color: rgba(var(--foreground-color), 1); + box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.15); display: flex; height: 100%; width: 100%; @@ -700,7 +725,7 @@ ol li::before { padding: 0.5rem 0.3rem; color: var(--text-color); font-size: 0.8rem; - border-radius: 0.3rem; + border-radius: 0.7rem; font-weight: 500; } .nav-item .icon { @@ -750,10 +775,12 @@ ol li::before { } .inner-page { - padding: 0 1.5rem; + display: flex; + flex-direction: column; + padding: 0 1rem; flex: 1; - overflow-y: auto; align-content: start; + overflow-y: auto; } .password-field label { @@ -799,55 +826,46 @@ ol li::before { } #wallet_cards_wrapper { - display: flex; - overflow-x: auto; - -ms-scroll-snap-type: x proximity; - scroll-snap-type: x proximity; + display: grid; + gap: 0.5rem; + grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr)); } .balance-card { - scroll-snap-align: start; - padding: 1.5rem; - border-radius: 1rem; - width: min(16rem, 90%); - flex-shrink: 0; - color: rgba(0, 0, 0, 0.8); + display: grid; + gap: 1.5rem; + border-radius: 0.5rem; + padding: 1rem; + background-color: rgba(var(--foreground-color), 1); } -.balance-card:not(:last-of-type) { - margin-right: 0.5rem; -} -.balance-card:nth-of-type(1) { - background: url("bg-art2.svg") no-repeat bottom right, #c2ffd7; - background-size: contain; -} -.balance-card:nth-of-type(1) .icon { - background-color: rgba(102, 255, 156, 0.5); -} -.balance-card:nth-of-type(2) { - background: url("back.svg") no-repeat bottom right, #fcffa8; - background-size: contain; -} -.balance-card:nth-of-type(2) .icon { - background-color: rgba(255, 234, 0, 0.5); -} -.balance-card > .flex { - margin-bottom: 0.3rem; -} -.balance-card > .flex .icon { - height: 2rem; - width: 2rem; - padding: 0.4rem; - border-radius: 0.3rem; +.balance-card .asset-icon { + position: relative; + height: 2.5rem; + width: 2.5rem; + padding: 0.6rem; + border-radius: 1.1rem; fill: rgba(0, 0, 0, 0.8); - margin-right: 0.5rem; + margin-right: 0.8rem; +} +.balance-card.rupee-card .asset-icon { + background-color: hsl(141deg, 100%, 70%); +} +.balance-card.flo-card .asset-icon { + fill: white; + background-color: #4d77ff; +} +.balance-card.btc-card .asset-icon { + background-color: rgb(255, 173, 8); } #rupee_balance span:first-of-type, -#flo_balance span:first-of-type { - font-size: 2rem; +#flo_balance span:first-of-type, +#btc_balance span:first-of-type { + font-size: 1.5rem; } -#rupee_balance span:last-of-type, -#flo_balance span:last-of-type { +#rupee_balance span:nth-of-type(2), +#flo_balance span:nth-of-type(2), +#btc_balance span:nth-of-type(2) { font-size: 1rem; } @@ -865,9 +883,9 @@ ol li::before { } .wallet-action .icon:first-of-type, .integrated-action-button .icon:first-of-type { - height: 2.5rem; - width: 2.5rem; - padding: 0.6rem; + height: 2.3rem; + width: 2.3rem; + padding: 0.5rem; fill: rgba(var(--foreground-color), 1); background-color: var(--accent-color); border-radius: 2rem; @@ -885,14 +903,15 @@ ol li::before { font-weight: 500; font-size: 0.8rem; white-space: initial; + padding: 0.8rem; } .wallet-action .icon { margin-bottom: 0.8rem; } .integrated-action-button { - padding: 0.8rem 0; - justify-content: initial; + padding: 0; + justify-content: flex-start; } .integrated-action-button .icon:first-of-type { margin-right: 1rem; @@ -936,29 +955,40 @@ ol li::before { fill: rgba(0, 0, 0, 0.8); } +.remove-card-wrapper { + min-height: 2rem; +} + +.receiver-card { + display: grid; + gap: 0.5rem; + padding: 0.5rem 0; + border: none; +} +.receiver-card:not(:last-of-type) { + border-bottom: solid thin rgba(var(--text-color), 0.3); +} + #contacts { position: relative; - padding: 0; -} -#contacts .scrolling-wrapper { - padding: 0 1.5rem; } #saved_ids_list { display: grid; + gap: 0.5rem; grid-template-columns: minmax(0, 1fr); - padding-bottom: 5rem; + margin-bottom: 1.5rem; } .saved-id { grid-template-columns: auto 1fr; gap: 0 0.8rem; - border-radius: 0.3rem; - padding: 0.8rem 0; + border-radius: 0.5rem; + padding: 0.5rem; -webkit-user-select: none; -moz-user-select: none; - -ms-user-select: none; user-select: none; + background-color: rgba(var(--foreground-color), 1); } .saved-id.highlight { box-shadow: 0 0 0.1rem 0.1rem var(--accent-color) inset; @@ -1002,6 +1032,12 @@ ol li::before { font-size: 0.8rem; } +#saved_ids_tip { + background-color: rgba(var(--text-color), 0.03); + border-radius: 2rem; + padding: 0.5rem 0.8rem 0.5rem 0.5rem; +} + .card { background-color: rgba(var(--foreground-color), 1); border-radius: 0.5rem; @@ -1084,7 +1120,7 @@ ol li::before { position: sticky; top: 0; padding: 0.2rem 0 0.5rem 0; - background-color: rgba(var(--foreground-color), 1); + background-color: rgba(var(--background-color), 1); z-index: 1; transition: background-color 0.3s; } @@ -1153,7 +1189,7 @@ ol li::before { #payments_history { display: grid; gap: 2rem; - padding-bottom: 4rem; + margin-top: 1.5rem; } .transaction { @@ -1205,6 +1241,76 @@ ol li::before { grid-area: 1/3/3/4; } +.btc-tx { + grid-template-columns: auto 1fr auto; + gap: 0.5rem 1rem; + align-items: center; + grid-template-areas: "icon time amount" "icon receiver receiver" "icon txid txid"; +} +.btc-tx:not(:last-of-type) { + padding-bottom: 1rem; +} +.btc-tx__amount { + white-space: nowrap; +} +.btc-tx.out .icon { + fill: var(--danger-color); +} +.btc-tx.out .btc-tx__amount { + color: var(--danger-color); +} +.btc-tx.out .btc-tx__amount::before { + content: "- "; +} +.btc-tx.in .icon { + fill: var(--green); +} +.btc-tx.in .btc-tx__amount { + color: var(--green); +} +.btc-tx.in .btc-tx__amount::before { + content: "+ "; +} +.btc-tx.unconfirmed-tx { + grid-template-areas: "icon time amount" "icon receiver receiver" "icon txid txid" "icon unconfirmed unconfirmed"; +} +.btc-tx.unconfirmed-tx .icon { + fill: var(--yellow); +} +.btc-tx__icon { + grid-area: icon; + display: flex; + align-items: center; + justify-content: center; + width: 2.5rem; + height: 2.5rem; + background-color: rgba(var(--text-color), 0.03); + border-radius: 2rem; +} +.btc-tx__receiver { + grid-area: receiver; + font-weight: 500; +} +.btc-tx__time { + grid-area: time; + font-size: 0.9rem; + color: rgba(var(--text-color), 0.8); +} +.btc-tx__amount { + grid-area: amount; + font-size: 1rem; + font-weight: 700; +} +.btc-tx__id { + grid-area: txid; + font-size: 0.9rem; + color: rgba(var(--text-color), 0.8); +} +.btc-tx .unconfirmed-wrapper { + grid-area: unconfirmed; + padding: 0.5rem 0; +} + .fab { position: absolute; right: 0; @@ -1221,11 +1327,8 @@ ol li::before { #add_address_button { border-radius: 0.5rem; - color: rgba(var(--background-color), 1); - background-color: var(--accent-color); -} -#add_address_button .icon { - fill: rgba(var(--background-color), 1); + background-color: transparent; + border: solid 0.1rem var(--accent-color); } .user-action-result__icon { @@ -1291,7 +1394,7 @@ ol li::before { display: flex; gap: 1rem; align-items: center; - padding: 0.8rem 0; + padding: 1rem; border-radius: 0.3rem; background-color: rgba(var(--foreground-color), 1); } @@ -1463,12 +1566,31 @@ ol li::before { } @media screen and (max-width: 40rem) { + .inner-page { + padding-bottom: 7rem; + } + #main_navbar { + bottom: 0.5rem; + justify-self: center; + margin: 0 auto; + left: 0; + right: 0; + width: -webkit-max-content; + width: -moz-max-content; + width: max-content; + background-color: rgba(var(--foreground-color), 0.9); + -webkit-backdrop-filter: blur(0.5rem); + backdrop-filter: blur(0.5rem); + } #main_navbar.hide-away { bottom: 0; left: 0; right: 0; } - + .nav-item { + aspect-ratio: 1/1; + width: 4.5rem; + } .integrated-action-button .icon:last-of-type { margin-left: auto; } @@ -1477,58 +1599,32 @@ ol li::before { sm-popup { --width: 24rem; } - - .page-layout { - grid-template-columns: 1fr 90vw 1fr; - } - .popup__header { grid-column: 1/-1; padding: 1rem 1.5rem 0 1.5rem; } - body { align-items: center; justify-content: center; } - - #main_card { - height: calc(100vh - 2rem); - width: calc(100vw - 2rem); - grid-template-areas: "header" "."; - position: relative; - border-radius: 0.8rem; - overflow: hidden; - box-shadow: 0 0.1rem 0.2rem rgba(0, 0, 0, 0.05), 0 1rem 3rem rgba(0, 0, 0, 0.2); - } - #main_card:not(.nav-hidden) { - grid-template-columns: auto 1fr; - grid-template-rows: auto 1fr; - grid-template-areas: "nav header" "nav ."; - } - #main_header { - grid-area: header; + padding: 1rem 4vw; + background-color: rgba(var(--foreground-color), 1); } - #main_navbar { - grid-area: nav; - border-top: none; - flex-direction: column; - height: calc(100% - 1rem); - margin: 0.5rem; - border-radius: 0.5rem; - background-color: rgba(37, 110, 255, 0.03); + margin: 1rem; + left: 0; + top: 0; + bottom: 0; + justify-content: center; } #main_navbar ul { flex-direction: column; gap: 0.5rem; padding: 0.3rem; + align-self: center; + height: auto; } - #main_navbar ul li:last-of-type { - margin-top: auto; - } - .nav-item { aspect-ratio: 1/1; } @@ -1539,24 +1635,24 @@ ol li::before { border-radius: 0 1rem 1rem 0; bottom: auto; } - .card { padding: 1.5rem; } - + .balance-card { + padding: 1.5rem; + border-radius: 1rem; + } + #contact > * { + padding: 1rem 12vw; + } + #contact > :last-child { + padding: 0.5rem 12vw; + } #saved_ids_list { - gap: 1rem; grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); } - - body[data-theme=dark] #main_navbar { - background-color: rgba(0, 0, 0, 0.2); - } -} -@media screen and (min-width: 56rem) { - #main_card { - width: 56rem; - height: min(90vh, 48rem); + .inner-page { + padding: 1.5rem 18vw; } } @media (any-hover: hover) { @@ -1564,7 +1660,6 @@ ol li::before { width: 0.5rem; height: 0.5rem; } - ::-webkit-scrollbar-thumb { background: rgba(var(--text-color), 0.3); border-radius: 1rem; @@ -1572,14 +1667,12 @@ ol li::before { ::-webkit-scrollbar-thumb:hover { background: rgba(var(--text-color), 0.5); } - .interact:not([disabled]) { transition: background-color 0.3s; } .interact:not([disabled]):hover { background-color: rgba(var(--text-color), 0.06); } - button:not([disabled]), .button:not([disabled]) { transition: background-color 0.3s, filter 0.3s; diff --git a/css/main.min.css b/css/main.min.css index ec23079..90932fc 100644 --- a/css/main.min.css +++ b/css/main.min.css @@ -1 +1 @@ -*{padding:0;margin:0;box-sizing:border-box;font-family:"Roboto",sans-serif}:root{font-size:clamp(1rem,1.2vmax,1.2rem)}html,body{height:100%}body{--accent-color: #4d77ff;--text-color: 20, 20, 20;--foreground-color: 252, 253, 255;--background-color: 241, 243, 248;--danger-color: rgb(255, 75, 75);--green: #1cad59;--yellow: rgb(220, 165, 0);scrollbar-width:thin;scrollbar-gutter:stable;color:rgba(var(--text-color), 1);background-color:rgba(var(--background-color), 1);transition:background-color .3s;position:relative;display:flex;flex-direction:column}body[data-theme=dark]{--accent-color: #a0b6ff;--text-color: 220, 220, 220;--foreground-color: 27, 28, 29;--background-color: 21, 22, 22;--danger-color: rgb(255, 106, 106);--green: #00e676;--yellow: rgb(255, 213, 5)}body[data-theme=dark] sm-popup::part(popup){background-color:rgba(var(--foreground-color), 1)}h1,h1>*,h2,h2>*,h3,h3>*,h4,h4>*,h5,h5>*,h6,h6>*{font-weight:400;font-family:"Calistoga",cursive}p,strong{font-size:.9rem;max-width:65ch;line-height:1.7;color:rgba(var(--text-color), 0.9)}.warning{line-height:normal;padding:1rem;background-color:khaki;border-radius:.5rem;font-weight:500;color:rgba(0,0,0,.7)}a{text-decoration:none;color:var(--accent-color)}a:focus-visible{box-shadow:0 0 0 .1rem rgba(var(--text-color), 1) inset}a.button{padding:.4rem .6rem;border-radius:.3rem;font-size:.9rem;font-weight:500;color:inherit}button{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;display:inline-flex;border:none;background-color:transparent;overflow:hidden;color:inherit;-webkit-tap-highlight-color:transparent;align-items:center;font-size:.9rem;font-weight:500;white-space:nowrap;padding:.8rem;border-radius:.3rem;justify-content:center}button:focus-visible{outline:var(--accent-color) solid medium}button:not(:disabled){cursor:pointer}.button{background-color:rgba(var(--text-color), 0.06)}.button--primary,.button--danger{color:rgba(var(--background-color), 1) !important}.button--primary .icon,.button--danger .icon{fill:rgba(var(--background-color), 1)}.button--primary{background-color:var(--accent-color)}.button--danger{background-color:var(--danger-color)}.button--small{padding:.4rem .6rem}.cta{text-transform:uppercase;font-size:.8rem;font-weight:700;letter-spacing:.05em;padding:.8rem 1rem}.icon{width:1.2rem;height:1.2rem;fill:rgba(var(--text-color), 0.8);flex-shrink:0}.icon-only{padding:.5rem;border-radius:.3rem}button:disabled{opacity:.5}a:-webkit-any-link:focus-visible{outline:rgba(var(--text-color), 1) .1rem solid}a:-moz-any-link:focus-visible{outline:rgba(var(--text-color), 1) .1rem solid}a:any-link:focus-visible{outline:rgba(var(--text-color), 1) .1rem solid}details summary{display:flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;align-items:center;justify-content:space-between;color:var(--accent-color)}details[open] summary{margin-bottom:1rem}details[open]>summary .down-arrow{transform:rotate(180deg)}sm-input,sm-textarea{font-size:.9rem;--border-radius: 0.3rem;--background-color: rgba(var(--foreground-color), 1)}sm-input button .icon,sm-textarea button .icon{fill:var(--accent-color)}sm-button{--padding: 0.8rem}sm-button[variant=primary] .icon{fill:rgba(var(--background-color), 1)}sm-button[disabled] .icon{fill:rgba(var(--text-color), 0.6)}sm-button.danger{--background: var(--danger-color);color:rgba(var(--background-color), 1)}sm-spinner{--size: 1rem;--stroke-width: 0.1rem}sm-form{--gap: 1rem}sm-select{--padding: 0.8rem;font-size:.9rem}sm-option{font-size:.9rem}strip-select{--gap: 0;background-color:rgba(var(--text-color), 0.06);border-radius:.3rem;padding:.3rem}strip-option{font-size:.8rem;--border-radius: 0.2rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}ul,ol{list-style:none}ol{counter-reset:item}ol li{position:relative;display:flex;align-items:flex-start;counter-increment:item}ol li:not(:last-of-type){padding-bottom:1.5rem}ol li:not(:last-of-type)::after{content:"";position:absolute;width:.1rem;height:calc(100% - 2.2rem);background:var(--accent-color);margin-left:.7rem;margin-top:2rem}ol li::before{content:counter(item);display:flex;align-items:center;justify-content:center;text-align:center;font-size:.8rem;font-weight:500;margin-top:.15rem;margin-right:1rem;line-height:1;width:1.5rem;height:1.5rem;border-radius:100%;flex-shrink:0;color:rgba(var(--text-color), 0.8);background:rgba(var(--text-color), 0.1)}.overflow-ellipsis{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.breakable{overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.full-bleed{grid-column:1/-1}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.sticky{position:-webkit-sticky;position:sticky}.top-0{top:0}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.grid{display:grid}.flow-column{grid-auto-flow:column}.gap-0-3{gap:.3rem}.gap-0-5{gap:.5rem}.gap-1{gap:1rem}.gap-1-5{gap:1.5rem}.gap-2{gap:2rem}.gap-3{gap:3rem}.text-align-right{text-align:right}.align-start{align-content:flex-start}.align-center{align-items:center}.align-end{align-items:flex-end}.text-center{text-align:center}.justify-start{justify-items:start}.justify-center{justify-content:center}.justify-right{margin-left:auto}.align-self-center{align-self:center}.align-self-end{align-self:end}.justify-self-center{justify-self:center}.justify-self-start{justify-self:start}.justify-self-end{justify-self:end}.flex-direction-column{flex-direction:column}.space-between{justify-content:space-between}.w-100{width:100%}.h-100{height:100%}.label{font-size:.8rem;color:rgba(var(--text-color), 0.8);font-weight:500;margin-bottom:.2rem}.button--primary .ripple,.button--danger .ripple{background:radial-gradient(circle, rgba(var(--background-color), 0.3) 0%, rgba(0, 0, 0, 0) 50%)}.ripple{height:8rem;width:8rem;position:absolute;border-radius:50%;transform:scale(0);background:radial-gradient(circle, rgba(var(--text-color), 0.3) 0%, rgba(0, 0, 0, 0) 50%);pointer-events:none}.interact{position:relative;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent}.empty-state{display:grid;width:100%;padding:1.5rem 0}.observe-empty-state:empty{display:none !important}.observe-empty-state:not(:empty)+.empty-state{display:none !important}.bullet-point{display:flex;align-items:center;justify-content:center;margin:0 .8ch}.bullet-point::after{content:"";height:.4ch;width:.4ch;border-radius:.5em;background-color:var(--accent-color)}.margin-right-0-5{margin-right:.5rem}.margin-left-0-5{margin-left:.5rem}.icon-button{padding:.6rem;border-radius:.8rem;background-color:rgba(var(--text-color), 0.1);height:-webkit-max-content;height:-moz-max-content;height:max-content}.icon-button .icon{fill:var(--accent-color)}.page{height:100%}.page__header{display:flex;justify-content:space-between;margin-bottom:1.5rem;min-height:8rem}.page__header .grid{margin-top:auto}.page__header h1{margin-top:auto;font-size:2rem}.page-layout{display:grid;gap:1.5rem 0;grid-template-columns:1.5rem minmax(0, 1fr) 1.5rem;align-content:flex-start}.page-layout>*{grid-column:2/3}#confirmation_popup,#prompt_popup{flex-direction:column}#confirmation_popup h4,#prompt_popup h4{margin-bottom:.5rem}#confirmation_popup sm-button,#prompt_popup sm-button{margin:0}#confirmation_popup .flex,#prompt_popup .flex{padding:0;margin-top:1rem}#confirmation_popup .flex sm-button:first-of-type,#prompt_popup .flex sm-button:first-of-type{margin-right:.6rem;margin-left:auto}#prompt_message{margin-bottom:1.5rem}.popup__header{display:grid;gap:.5rem;width:100%;padding:0 1.5rem;align-items:center}.popup__header__close{padding:.5rem;margin-left:-0.5rem}.flo-icon{margin-right:.3rem;height:1.5rem;width:1.5rem}#secondary_pages{display:flex;flex-direction:column;width:100%}#secondary_pages header{padding:1.5rem}#secondary_pages .inner-page{height:100%}#landing>section{justify-content:center;justify-items:center;align-items:center;text-align:center;padding:8vw 0}#landing h1{font-size:clamp(2rem,5vw,5rem)}#sign_in,#sign_up{justify-items:center;align-content:center}#sign_in section,#sign_up section{margin-top:-8rem;width:min(24rem,100%)}#sign_in sm-form,#sign_up sm-form{margin:2rem 0}#sign_up .h2{margin-bottom:.5rem}#sign_up .card{margin:1.5rem 0}#sign_up h5{color:rgba(var(--text-color), 0.8)}#flo_id_warning{padding-bottom:1.5rem;border-bottom:thin solid rgba(var(--text-color), 0.3)}#flo_id_warning .icon{height:4rem;width:4rem;padding:1rem;background-color:#ffc107;border-radius:3rem;fill:rgba(0,0,0,.8);margin-bottom:1.5rem}#main_header{padding:1.5rem}#main_card{display:grid;grid-template-columns:minmax(0, 1fr);grid-template-rows:auto 1fr;height:100%;width:100%;transition:background-color .3s;background-color:rgba(var(--foreground-color), 1)}#main_navbar{display:flex;background:rgba(var(--text-color), 0.03)}#main_navbar.hide-away{position:absolute}#main_navbar ul{display:flex;height:100%;width:100%}#main_navbar ul li{width:100%}.nav-item{position:relative;display:flex;flex:1;width:100%;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .3rem;color:var(--text-color);font-size:.8rem;border-radius:.3rem;font-weight:500}.nav-item .icon{transition:transform .2s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.nav-item__title{margin-top:.3rem;transition:opacity .2s,transform .2s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.nav-item--active{color:var(--accent-color)}.nav-item--active .icon{fill:var(--accent-color);transform:translateY(50%)}.nav-item--active .nav-item__title{transform:translateY(100%);opacity:0}.nav-item__indicator{position:absolute;bottom:0;width:2rem;height:.3rem;background:var(--accent-color);border-radius:1rem 1rem 0 0;z-index:1}.badge{display:flex;align-items:center;justify-content:center;content:attr(data-notifications);position:absolute;top:0;right:0;font-size:.8rem;padding:.3rem;background:var(--danger-color);color:rgba(var(--background-color), 1);aspect-ratio:1/1;font-weight:700;border-radius:.3rem;margin:.3rem}.inner-page{padding:0 1.5rem;flex:1;overflow-y:auto;align-content:start}.password-field label{display:flex}.password-field label input:checked~.visible{display:none}.password-field label input:not(:checked)~.invisible{display:none}.multi-state-button{display:grid;text-align:center;align-items:center}.multi-state-button>*{grid-area:1/1/2/2}.multi-state-button button{z-index:1}.scrolling-wrapper{overflow-y:auto}#home{display:flex;flex-direction:column;position:relative}#home>*{margin-bottom:2rem}#user,#cashier{position:relative;padding-bottom:1rem;align-content:flex-start}#wallet_cards_wrapper{display:flex;overflow-x:auto;-ms-scroll-snap-type:x proximity;scroll-snap-type:x proximity}.balance-card{scroll-snap-align:start;padding:1.5rem;border-radius:1rem;width:min(16rem,90%);flex-shrink:0;color:rgba(0,0,0,.8)}.balance-card:not(:last-of-type){margin-right:.5rem}.balance-card:nth-of-type(1){background:url("bg-art2.svg") no-repeat bottom right,#c2ffd7;background-size:contain}.balance-card:nth-of-type(1) .icon{background-color:rgba(102,255,156,.5)}.balance-card:nth-of-type(2){background:url("back.svg") no-repeat bottom right,#fcffa8;background-size:contain}.balance-card:nth-of-type(2) .icon{background-color:rgba(255,234,0,.5)}.balance-card>.flex{margin-bottom:.3rem}.balance-card>.flex .icon{height:2rem;width:2rem;padding:.4rem;border-radius:.3rem;fill:rgba(0,0,0,.8);margin-right:.5rem}#rupee_balance span:first-of-type,#flo_balance span:first-of-type{font-size:2rem}#rupee_balance span:last-of-type,#flo_balance span:last-of-type{font-size:1rem}.actions-wrapper{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill, minmax(4rem, 1fr))}.wallet-action,.integrated-action-button{position:relative;color:inherit;font-weight:500}.wallet-action .icon:first-of-type,.integrated-action-button .icon:first-of-type{height:2.5rem;width:2.5rem;padding:.6rem;fill:rgba(var(--foreground-color), 1);background-color:var(--accent-color);border-radius:2rem}.wallet-action .badge,.integrated-action-button .badge{left:0;right:auto}.wallet-action{flex-direction:column;text-align:center;align-items:center;font-weight:500;font-size:.8rem;white-space:initial}.wallet-action .icon{margin-bottom:.8rem}.integrated-action-button{padding:.8rem 0;justify-content:initial}.integrated-action-button .icon:first-of-type{margin-right:1rem}.integrated-action-button .icon:last-of-type{margin-left:.5rem}.cashier-status{font-size:.9rem;padding:1rem 1.2rem;border-radius:1rem;background-color:rgba(240,230,140,.8);color:rgba(0,0,0,.8)}.cashier-status .icon{fill:rgba(0,0,0,.8)}#topup_wallet__qr_code{background-color:rgba(var(--text-color), 0.03);border-radius:.5rem;height:10rem;justify-self:flex-start;width:10rem}#topup_wallet__qr_code svg{width:100%;height:100%;fill:rgba(var(--text-color), 1)}#cashier_status{font-size:.9rem;padding:1rem 1.2rem;border-radius:1rem;background-color:rgba(240,230,140,.8);color:rgba(0,0,0,.8)}#cashier_status .icon{fill:rgba(0,0,0,.8)}#contacts{position:relative;padding:0}#contacts .scrolling-wrapper{padding:0 1.5rem}#saved_ids_list{display:grid;grid-template-columns:minmax(0, 1fr);padding-bottom:5rem}.saved-id{grid-template-columns:auto 1fr;gap:0 .8rem;border-radius:.3rem;padding:.8rem 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.saved-id.highlight{box-shadow:0 0 .1rem .1rem var(--accent-color) inset}.saved-id .edit-saved{grid-area:1/1/3/2;padding:.3rem;position:relative}.saved-id .edit-saved .icon{position:absolute;right:0;bottom:0;border-radius:.5rem;padding:.2rem;background-color:rgba(var(--background-color), 1)}.saved-id__initials{display:flex;align-items:center;justify-content:center;height:2.4rem;width:2.4rem;font-size:1.2rem;text-transform:uppercase;color:rgba(var(--background-color), 1);font-weight:700;line-height:1;background-color:var(--accent-color);justify-self:flex-start;border-radius:2rem}.saved-id__title{align-self:flex-end;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.saved-id__flo-id{font-size:.8rem}.card{background-color:rgba(var(--foreground-color), 1);border-radius:.5rem;padding:1rem}#contact{display:grid;grid-template-rows:auto 1fr auto;padding:0;height:100%}#contact>*{padding:1rem 1.5rem}#contact>:first-child{padding-top:0}#contact>:last-child{padding:.5rem 1.5rem;border-top:solid thin rgba(var(--text-color), 0.2)}#contact>:last-child button{padding:.8rem 2rem;border-radius:1rem;color:var(--accent-color);background-color:rgba(var(--text-color), 0.03)}#contact__transactions{position:relative;display:grid;gap:.5rem;overflow-y:auto;flex:1;padding:0 max(1rem,8vw) 1rem max(1rem,8vw);align-content:flex-start}#contact__transactions sm-spinner{position:absolute;justify-self:center;align-self:center}.transaction-message{background-color:rgba(var(--text-color), 0.06);padding:1rem;border-radius:.5rem;justify-self:flex-start;border-radius:0 1rem 1rem 1rem;gap:.5rem}.transaction-message.received{background-color:var(--accent-color);color:rgba(var(--background-color), 1)}.transaction-message.received+.transaction-message.received{border-radius:1rem}.transaction-message.sent{margin-left:auto;justify-self:flex-end;border-radius:1rem 1rem 0 1rem;text-align:right}.transaction-message__amount{font-size:1.2rem}.transaction-message__time{opacity:.8;font-size:.8rem}#history .page__header{margin-bottom:0}#history_applied_filters_wrapper{position:-webkit-sticky;position:sticky;top:0;padding:.2rem 0 .5rem 0;background-color:rgba(var(--foreground-color), 1);z-index:1;transition:background-color .3s}.applied-filter{display:flex;align-items:center;padding:.5rem .6rem .5rem .8rem;border-radius:1rem;border:solid thin rgba(var(--text-color), 0.2);text-transform:uppercase;font-size:.8rem;font-weight:500;letter-spacing:.08em}.applied-filter button{padding:.6rem}.applied-filter .icon{margin-left:.3rem}.category-chip{display:inline-flex;align-items:center;justify-content:center;padding:.3rem .5rem;border-radius:.3rem;font-size:.8rem;border:solid thin rgba(var(--text-color), 0.2);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.category-chip:focus{outline:solid var(--accent-color)}.category-chip input{display:none}.category-chip span{transition:transform .2s;transform:translateX(-0.8rem)}.category-chip .icon{opacity:0;transition:opacity .2s,transform .2s;margin-right:.3rem;fill:var(--accent-color);transform:translateX(0.5rem)}.category-chip input:checked~.icon{opacity:1;transform:translateX(0)}.category-chip input:checked~span{color:var(--accent-color);transform:translateX(0)}#wallet_history_wrapper{margin-top:1.5rem;padding-bottom:3rem}#payments_history{display:grid;gap:2rem;padding-bottom:4rem}.transaction{grid-template-columns:auto 1fr auto;gap:.5rem 1rem;align-items:center}.transaction__amount{white-space:nowrap}.transaction.sent .icon{fill:rgba(var(--text-color), 0.8)}.transaction.sent .transaction__amount{color:rgba(var(--text-color), 0.8)}.transaction.sent .transaction__amount::before{content:"- "}.transaction.received .icon{fill:var(--green)}.transaction.received .transaction__amount{color:var(--green)}.transaction.received .transaction__amount::before{content:"+ "}.transaction__icon{display:flex;align-items:center;justify-content:center;grid-area:1/1/3/2;width:2.5rem;height:2.5rem;background-color:rgba(var(--text-color), 0.03);border-radius:2rem}.transaction__receiver{font-weight:500}.transaction__time{font-size:.8rem;color:rgba(var(--text-color), 0.8)}.transaction__amount{font-size:1rem;font-weight:700;grid-area:1/3/3/4}.fab{position:absolute;right:0;bottom:0;margin:1.5rem;box-shadow:0 .5rem 1rem rgba(0,0,0,.2);z-index:2}#scroll_to_top{border-radius:3rem;background-color:rgba(var(--foreground-color), 1)}#add_address_button{border-radius:.5rem;color:rgba(var(--background-color), 1);background-color:var(--accent-color)}#add_address_button .icon{fill:rgba(var(--background-color), 1)}.user-action-result__icon{justify-self:center;height:4rem;width:4rem;border-radius:5rem;margin-bottom:2rem;-webkit-animation:popup 1s;animation:popup 1s}.user-action-result__icon.success{fill:rgba(var(--background-color), 1);padding:1rem;background-color:#0bbe56}.user-action-result__icon.failed{background-color:rgba(var(--text-color), 0.03);fill:var(--danger-color)}@-webkit-keyframes popup{0%{opacity:0;transform:scale(0.2) translateY(600%)}10%{transform:scale(0.2) translateY(5rem);opacity:1}40%{transform:scale(0.2) translateY(0)}80%{transform:scale(1.1) translateY(0)}100%{transform:scale(1) translateY(0)}}@keyframes popup{0%{opacity:0;transform:scale(0.2) translateY(600%)}10%{transform:scale(0.2) translateY(5rem);opacity:1}40%{transform:scale(0.2) translateY(0)}80%{transform:scale(1.1) translateY(0)}100%{transform:scale(1) translateY(0)}}.cashier-request,.payment-request{display:flex;gap:1rem;align-items:center;padding:.8rem 0;border-radius:.3rem;background-color:rgba(var(--foreground-color), 1)}.cashier-request:not(:last-of-type),.payment-request:not(:last-of-type){margin-bottom:.5rem}.cashier-request__mode,.payment-request__mode{text-align:center;width:2rem;font-size:.8rem}.cashier-request__time,.payment-request__time{font-size:.8rem}.cashier-request{display:grid;gap:.5rem 1rem;grid-template-columns:auto 1fr auto;grid-template-areas:"mode details status" "mode . status"}.cashier-request__mode{grid-area:mode}.cashier-request__details{grid-area:details;font-weight:700}.cashier-request__status,.cashier-request__requestor{font-size:.8rem}.cashier-request__status{grid-area:status;grid-column:3/4;grid-row:1/3}#payment_request_history{padding-bottom:3rem}.payment-request{display:grid;gap:.5rem 1rem;grid-template-columns:1fr auto;color:rgba(var(--text-color), 1)}.payment-request__requestor{font-weight:500}.payment-request__amount{font-weight:700;text-align:right}.payment-request__status{display:flex;align-items:center;font-size:.8rem;text-transform:capitalize}.payment-request__status .icon{height:1rem;width:1rem;margin-left:.3rem}.payment-request .icon.paid{fill:var(--green)}.payment-request .icon.declined{fill:var(--danger-color)}.payment-request .button{background-color:transparent;padding:.6rem .8rem;color:var(--accent-color);background-color:rgba(var(--foreground-color), 1)}.wallet-request{display:grid;gap:.5rem 1rem;padding:.5rem 0;border-radius:.5rem;grid-template-columns:auto 1fr}.wallet-request:not(.rejected,.pending).withdrawn .wallet-request__amount::before{content:"- "}.wallet-request:not(.rejected,.pending).added .wallet-request__amount{color:var(--green)}.wallet-request:not(.rejected,.pending).added .wallet-request__amount::before{content:"+ "}.wallet-request .icon.pending{fill:var(--yellow)}.wallet-request .icon.failed{fill:var(--danger-color)}.wallet-request__icon{display:flex;align-items:center;justify-content:center;grid-area:1/1/3/2;width:2.5rem;height:2.5rem;border-radius:2rem;background-color:rgba(var(--text-color), 0.06)}.wallet-request__icon .icon{fill:var(--accent-color)}.wallet-request__details{font-weight:500}.wallet-request__details,.wallet-request__amount{color:rgba(var(--text-color), 1)}.wallet-request__amount{font-weight:700}.wallet-request__time,.wallet-request__status{font-size:.8rem;color:rgba(var(--text-color), 0.8)}.wallet-request__status{text-align:right}.wallet-request__status .icon{margin-left:.3rem}#transaction__amount{font-size:2.5rem;font-weight:700}#transaction__remark,#transaction__note{line-height:1.6;justify-self:flex-start;background-color:rgba(var(--text-color), 0.06);border-radius:.5rem;padding:.8rem}#transaction__note .icon{fill:var(--danger-color);margin-right:.5rem}#saved_upi_ids_list{display:grid;gap:.5rem;width:min(24rem,100%)}.saved-upi{display:flex;justify-content:space-between;align-items:center;padding:.4rem .4rem .4rem 1rem;border-radius:.5rem;background-color:rgba(var(--text-color), 0.03)}@media screen and (max-width: 40rem){#main_navbar.hide-away{bottom:0;left:0;right:0}.integrated-action-button .icon:last-of-type{margin-left:auto}}@media screen and (min-width: 40rem){sm-popup{--width: 24rem}.page-layout{grid-template-columns:1fr 90vw 1fr}.popup__header{grid-column:1/-1;padding:1rem 1.5rem 0 1.5rem}body{align-items:center;justify-content:center}#main_card{height:calc(100vh - 2rem);width:calc(100vw - 2rem);grid-template-areas:"header" ".";position:relative;border-radius:.8rem;overflow:hidden;box-shadow:0 .1rem .2rem rgba(0,0,0,.05),0 1rem 3rem rgba(0,0,0,.2)}#main_card:not(.nav-hidden){grid-template-columns:auto 1fr;grid-template-rows:auto 1fr;grid-template-areas:"nav header" "nav ."}#main_header{grid-area:header}#main_navbar{grid-area:nav;border-top:none;flex-direction:column;height:calc(100% - 1rem);margin:.5rem;border-radius:.5rem;background-color:rgba(37,110,255,.03)}#main_navbar ul{flex-direction:column;gap:.5rem;padding:.3rem}#main_navbar ul li:last-of-type{margin-top:auto}.nav-item{aspect-ratio:1/1}.nav-item__indicator{width:.25rem;height:50%;left:0;border-radius:0 1rem 1rem 0;bottom:auto}.card{padding:1.5rem}#saved_ids_list{gap:1rem;grid-template-columns:repeat(auto-fill, minmax(14rem, 1fr))}body[data-theme=dark] #main_navbar{background-color:rgba(0,0,0,.2)}}@media screen and (min-width: 56rem){#main_card{width:56rem;height:min(90vh,48rem)}}@media(any-hover: hover){::-webkit-scrollbar{width:.5rem;height:.5rem}::-webkit-scrollbar-thumb{background:rgba(var(--text-color), 0.3);border-radius:1rem}::-webkit-scrollbar-thumb:hover{background:rgba(var(--text-color), 0.5)}.interact:not([disabled]){transition:background-color .3s}.interact:not([disabled]):hover{background-color:rgba(var(--text-color), 0.06)}button:not([disabled]),.button:not([disabled]){transition:background-color .3s,filter .3s}button:not([disabled]):hover,.button:not([disabled]):hover{filter:contrast(2)}}@supports(overflow: overlay){body{overflow:overlay}}.hide{display:none !important} \ No newline at end of file +*{padding:0;margin:0;box-sizing:border-box;font-family:"Roboto",sans-serif}:root{font-size:clamp(1rem,1.2vmax,1.2rem)}html,body{height:100%}body{--accent-color: #4d77ff;--text-color: 20, 20, 20;--foreground-color: 252, 253, 255;--background-color: 241, 243, 248;--danger-color: rgb(255, 75, 75);--green: #1cad59;--yellow: rgb(220, 165, 0);scrollbar-width:thin;scrollbar-gutter:stable;color:rgba(var(--text-color), 1);background-color:rgba(var(--background-color), 1);transition:background-color .3s;position:relative;display:flex;flex-direction:column}body[data-theme=dark]{--accent-color: #a0b6ff;--text-color: 220, 220, 220;--foreground-color: 27, 28, 29;--background-color: 21, 22, 22;--danger-color: rgb(255, 106, 106);--green: #00e676;--yellow: rgb(255, 213, 5)}body[data-theme=dark] sm-popup::part(popup){background-color:rgba(var(--foreground-color), 1)}h1,h1>*,h2,h2>*,h3,h3>*,h4,h4>*,h5,h5>*,h6,h6>*{font-weight:400;font-family:"Calistoga",cursive}p,strong{font-size:.9rem;max-width:65ch;line-height:1.7;color:rgba(var(--text-color), 0.9)}.warning{line-height:normal;padding:1rem;background-color:khaki;border-radius:.5rem;font-weight:500;color:rgba(0,0,0,.7)}a{text-decoration:none;color:var(--accent-color)}a:focus-visible{box-shadow:0 0 0 .1rem rgba(var(--text-color), 1) inset}a.button{padding:.4rem .6rem;border-radius:.3rem;font-size:.9rem;font-weight:500;color:inherit}button{-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;display:inline-flex;border:none;background-color:rgba(0,0,0,0);overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;font-size:.9rem;font-weight:500;white-space:nowrap;padding:.8rem;border-radius:.3rem;justify-content:center;color:inherit}button:focus-visible{outline:var(--accent-color) solid medium}button:not(:disabled){cursor:pointer}.button{color:var(--accent-color);background-color:rgba(var(--text-color), 0.06)}.button .icon{fill:var(--accent-color)}.button--primary,.button--danger{color:rgba(var(--background-color), 1) !important}.button--primary .icon,.button--danger .icon{fill:rgba(var(--background-color), 1)}.button--primary{background-color:var(--accent-color)}.button--danger{background-color:var(--danger-color)}.button--small{padding:.4rem .6rem}.cta{text-transform:uppercase;font-size:.8rem;font-weight:700;letter-spacing:.05em;padding:.8rem 1rem}.icon{width:1.2rem;height:1.2rem;fill:rgba(var(--text-color), 0.8);flex-shrink:0}.icon-only{padding:.5rem;border-radius:.3rem}button:disabled{opacity:.5}a:-webkit-any-link:focus-visible{outline:rgba(var(--text-color), 1) .1rem solid}a:-moz-any-link:focus-visible{outline:rgba(var(--text-color), 1) .1rem solid}a:any-link:focus-visible{outline:rgba(var(--text-color), 1) .1rem solid}details summary{display:flex;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;align-items:center;justify-content:space-between;color:var(--accent-color)}details[open] summary{margin-bottom:1rem}details[open]>summary .down-arrow{transform:rotate(180deg)}sm-input,sm-textarea{font-size:.9rem;--border-radius: 0.3rem;--background-color: rgba(var(--foreground-color), 1)}sm-input button .icon,sm-textarea button .icon{fill:var(--accent-color)}sm-button{--padding: 0.8rem}sm-button[variant=primary] .icon{fill:rgba(var(--background-color), 1)}sm-button[disabled] .icon{fill:rgba(var(--text-color), 0.6)}sm-button.danger{--background: var(--danger-color);color:rgba(var(--background-color), 1)}sm-spinner{--size: 1rem;--stroke-width: 0.1rem}sm-form{--gap: 1rem}sm-select{--padding: 0.8rem;font-size:.9rem}sm-option{font-size:.9rem}strip-select{--gap: 0;background-color:rgba(var(--text-color), 0.06);border-radius:.3rem;padding:.3rem}strip-option{font-size:.8rem;--border-radius: 0.2rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}ul,ol{list-style:none}ol{counter-reset:item}ol li{position:relative;display:flex;align-items:flex-start;counter-increment:item}ol li:not(:last-of-type){padding-bottom:1.5rem}ol li:not(:last-of-type)::after{content:"";position:absolute;width:.1rem;height:calc(100% - 2.2rem);background:var(--accent-color);margin-left:.7rem;margin-top:2rem}ol li::before{content:counter(item);display:flex;align-items:center;justify-content:center;text-align:center;font-size:.8rem;font-weight:500;margin-top:.15rem;margin-right:1rem;line-height:1;width:1.5rem;height:1.5rem;border-radius:100%;flex-shrink:0;color:rgba(var(--text-color), 0.8);background:rgba(var(--text-color), 0.1)}.overflow-ellipsis{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.wrap-around{overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.full-bleed{grid-column:1/-1}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.sticky{position:-webkit-sticky;position:sticky}.top-0{top:0}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.grid{display:grid}.flow-column{grid-auto-flow:column}.gap-0-3{gap:.3rem}.gap-0-5{gap:.5rem}.gap-1{gap:1rem}.gap-1-5{gap:1.5rem}.gap-2{gap:2rem}.gap-3{gap:3rem}.text-align-right{text-align:right}.align-start{align-content:flex-start}.align-center{align-items:center}.align-end{align-items:flex-end}.text-center{text-align:center}.justify-start{justify-items:start}.justify-center{justify-content:center}.justify-right{margin-left:auto}.align-self-center{align-self:center}.align-self-end{align-self:end}.justify-self-center{justify-self:center}.justify-self-start{justify-self:start}.justify-self-end{justify-self:end}.flex-direction-column{flex-direction:column}.space-between{justify-content:space-between}.w-100{width:100%}.h-100{height:100%}.label{font-size:.8rem;color:rgba(var(--text-color), 0.8);font-weight:500;margin-bottom:.2rem}.button--primary .ripple,.button--danger .ripple{background:radial-gradient(circle, rgba(var(--background-color), 0.3) 0%, rgba(0, 0, 0, 0) 50%)}.ripple{height:8rem;width:8rem;position:absolute;border-radius:50%;transform:scale(0);background:radial-gradient(circle, rgba(var(--text-color), 0.3) 0%, rgba(0, 0, 0, 0) 50%);pointer-events:none}.interact{position:relative;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0)}.empty-state{display:grid;width:100%;padding:1.5rem 0}.observe-empty-state:empty{display:none !important}.observe-empty-state:not(:empty)+.empty-state{display:none !important}.bullet-point{display:flex;align-items:center;justify-content:center;margin:0 .8ch}.bullet-point::after{content:"";height:.4ch;width:.4ch;border-radius:.5em;background-color:var(--accent-color)}.margin-right-0-3{margin-right:.3rem}.margin-right-0-5{margin-right:.5rem}.margin-left-0-5{margin-left:.5rem}.icon-button{padding:.6rem;border-radius:.8rem;background-color:rgba(var(--text-color), 0.1);height:-webkit-max-content;height:-moz-max-content;height:max-content}.icon-button .icon{fill:var(--accent-color)}.page{height:100%}.page__header{display:flex;justify-content:space-between;margin-bottom:1.5rem;min-height:5rem}.page__header .grid{margin-top:auto}.page__header h1{font-size:2rem}#confirmation_popup,#prompt_popup{flex-direction:column}#confirmation_popup h4,#prompt_popup h4{margin-bottom:.5rem}#confirmation_popup sm-button,#prompt_popup sm-button{margin:0}#confirmation_popup .flex,#prompt_popup .flex{padding:0;margin-top:1rem}#confirmation_popup .flex sm-button:first-of-type,#prompt_popup .flex sm-button:first-of-type{margin-right:.6rem;margin-left:auto}#prompt_message{margin-bottom:1.5rem}.popup__header{display:grid;gap:.5rem;width:100%;padding:0 1.5rem;align-items:center}.popup__header__close{padding:.5rem;margin-left:-0.5rem}.flo-icon{margin-right:.3rem;height:1.5rem;width:1.5rem}#secondary_pages{display:flex;flex-direction:column;width:100%}#secondary_pages header{padding:1.5rem}#secondary_pages .inner-page{height:100%}#landing>section{justify-content:center;justify-items:center;align-items:center;text-align:center;padding:8vw 0}#landing h1{font-size:clamp(2rem,5vw,5rem)}#sign_in,#sign_up{justify-content:center;align-items:center}#sign_in sm-form,#sign_up sm-form{margin:2rem 0}#sign_in{display:grid;padding-top:0;align-items:center;align-content:center;padding-bottom:0}#sign_in .illustration{width:100%;height:auto;background-color:#4d77ff;border-radius:1rem}#sign_in section{background-color:rgba(var(--foreground-color), 1);padding:2rem;border-radius:.5rem;margin-top:-2.3rem}#sign_up .h2{margin-bottom:.5rem}#sign_up .card{margin:1.5rem 0}#sign_up h5{color:rgba(var(--text-color), 0.8)}#flo_id_warning{padding-bottom:1.5rem;border-bottom:thin solid rgba(var(--text-color), 0.3)}#flo_id_warning .icon{height:4rem;width:4rem;padding:1rem;background-color:#ffc107;border-radius:3rem;fill:rgba(0,0,0,.8);margin-bottom:1.5rem}#main_header{display:grid;gap:1.5rem;padding:1rem 1rem;align-items:center;grid-template-columns:minmax(0, 1fr) auto;min-height:4rem}.logged-in-user-id{background-color:rgba(var(--text-color), 0.06);max-width:-webkit-fit-content;max-width:-moz-fit-content;max-width:fit-content;padding:.4rem .8rem .4rem .5rem;border-radius:2rem;font-weight:500}#main_card{position:relative;display:flex;flex-direction:column;height:100%;width:100%;transition:background-color .3s;background-color:rgba(var(--background-color), 1)}#main_navbar{position:fixed;display:flex;justify-self:center;margin:.5rem}#main_navbar ul{border-radius:1rem;background-color:rgba(var(--foreground-color), 1);box-shadow:0 .8rem 3rem rgba(0,0,0,.15);display:flex;height:100%;width:100%}#main_navbar ul li{width:100%}.nav-item{position:relative;display:flex;flex:1;width:100%;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .3rem;color:var(--text-color);font-size:.8rem;border-radius:.7rem;font-weight:500}.nav-item .icon{transition:transform .2s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.nav-item__title{margin-top:.3rem;transition:opacity .2s,transform .2s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.nav-item--active{color:var(--accent-color)}.nav-item--active .icon{fill:var(--accent-color);transform:translateY(50%)}.nav-item--active .nav-item__title{transform:translateY(100%);opacity:0}.nav-item__indicator{position:absolute;bottom:0;width:2rem;height:.3rem;background:var(--accent-color);border-radius:1rem 1rem 0 0;z-index:1}.badge{display:flex;align-items:center;justify-content:center;content:attr(data-notifications);position:absolute;top:0;right:0;font-size:.8rem;padding:.3rem;background:var(--danger-color);color:rgba(var(--background-color), 1);aspect-ratio:1/1;font-weight:700;border-radius:.3rem;margin:.3rem}.inner-page{display:flex;flex-direction:column;padding:0 1rem;flex:1;align-content:start;overflow-y:auto}.password-field label{display:flex}.password-field label input:checked~.visible{display:none}.password-field label input:not(:checked)~.invisible{display:none}.multi-state-button{display:grid;text-align:center;align-items:center}.multi-state-button>*{grid-area:1/1/2/2}.multi-state-button button{z-index:1}.scrolling-wrapper{overflow-y:auto}#home{display:flex;flex-direction:column;position:relative}#home>*{margin-bottom:2rem}#user,#cashier{position:relative;padding-bottom:1rem;align-content:flex-start}#wallet_cards_wrapper{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit, minmax(20rem, 1fr))}.balance-card{display:grid;gap:1.5rem;border-radius:.5rem;padding:1rem;background-color:rgba(var(--foreground-color), 1)}.balance-card .asset-icon{position:relative;height:2.5rem;width:2.5rem;padding:.6rem;border-radius:1.1rem;fill:rgba(0,0,0,.8);margin-right:.8rem}.balance-card.rupee-card .asset-icon{background-color:#66ff9c}.balance-card.flo-card .asset-icon{fill:#fff;background-color:#4d77ff}.balance-card.btc-card .asset-icon{background-color:#ffad08}#rupee_balance span:first-of-type,#flo_balance span:first-of-type,#btc_balance span:first-of-type{font-size:1.5rem}#rupee_balance span:nth-of-type(2),#flo_balance span:nth-of-type(2),#btc_balance span:nth-of-type(2){font-size:1rem}.actions-wrapper{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill, minmax(4rem, 1fr))}.wallet-action,.integrated-action-button{position:relative;color:inherit;font-weight:500}.wallet-action .icon:first-of-type,.integrated-action-button .icon:first-of-type{height:2.3rem;width:2.3rem;padding:.5rem;fill:rgba(var(--foreground-color), 1);background-color:var(--accent-color);border-radius:2rem}.wallet-action .badge,.integrated-action-button .badge{left:0;right:auto}.wallet-action{flex-direction:column;text-align:center;align-items:center;font-weight:500;font-size:.8rem;white-space:initial;padding:.8rem}.wallet-action .icon{margin-bottom:.8rem}.integrated-action-button{padding:0;justify-content:flex-start}.integrated-action-button .icon:first-of-type{margin-right:1rem}.integrated-action-button .icon:last-of-type{margin-left:.5rem}.cashier-status{font-size:.9rem;padding:1rem 1.2rem;border-radius:1rem;background-color:rgba(240,230,140,.8);color:rgba(0,0,0,.8)}.cashier-status .icon{fill:rgba(0,0,0,.8)}#topup_wallet__qr_code{background-color:rgba(var(--text-color), 0.03);border-radius:.5rem;height:10rem;justify-self:flex-start;width:10rem}#topup_wallet__qr_code svg{width:100%;height:100%;fill:rgba(var(--text-color), 1)}#cashier_status{font-size:.9rem;padding:1rem 1.2rem;border-radius:1rem;background-color:rgba(240,230,140,.8);color:rgba(0,0,0,.8)}#cashier_status .icon{fill:rgba(0,0,0,.8)}.remove-card-wrapper{min-height:2rem}.receiver-card{display:grid;gap:.5rem;padding:.5rem 0;border:none}.receiver-card:not(:last-of-type){border-bottom:solid thin rgba(var(--text-color), 0.3)}#contacts{position:relative}#saved_ids_list{display:grid;gap:.5rem;grid-template-columns:minmax(0, 1fr);margin-bottom:1.5rem}.saved-id{grid-template-columns:auto 1fr;gap:0 .8rem;border-radius:.5rem;padding:.5rem;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:rgba(var(--foreground-color), 1)}.saved-id.highlight{box-shadow:0 0 .1rem .1rem var(--accent-color) inset}.saved-id .edit-saved{grid-area:1/1/3/2;padding:.3rem;position:relative}.saved-id .edit-saved .icon{position:absolute;right:0;bottom:0;border-radius:.5rem;padding:.2rem;background-color:rgba(var(--background-color), 1)}.saved-id__initials{display:flex;align-items:center;justify-content:center;height:2.4rem;width:2.4rem;font-size:1.2rem;text-transform:uppercase;color:rgba(var(--background-color), 1);font-weight:700;line-height:1;background-color:var(--accent-color);justify-self:flex-start;border-radius:2rem}.saved-id__title{align-self:flex-end;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.saved-id__flo-id{font-size:.8rem}#saved_ids_tip{background-color:rgba(var(--text-color), 0.03);border-radius:2rem;padding:.5rem .8rem .5rem .5rem}.card{background-color:rgba(var(--foreground-color), 1);border-radius:.5rem;padding:1rem}#contact{display:grid;grid-template-rows:auto 1fr auto;padding:0;height:100%}#contact>*{padding:1rem 1.5rem}#contact>:first-child{padding-top:0}#contact>:last-child{padding:.5rem 1.5rem;border-top:solid thin rgba(var(--text-color), 0.2)}#contact>:last-child button{padding:.8rem 2rem;border-radius:1rem;color:var(--accent-color);background-color:rgba(var(--text-color), 0.03)}#contact__transactions{position:relative;display:grid;gap:.5rem;overflow-y:auto;flex:1;padding:0 max(1rem,8vw) 1rem max(1rem,8vw);align-content:flex-start}#contact__transactions sm-spinner{position:absolute;justify-self:center;align-self:center}.transaction-message{background-color:rgba(var(--text-color), 0.06);padding:1rem;border-radius:.5rem;justify-self:flex-start;border-radius:0 1rem 1rem 1rem;gap:.5rem}.transaction-message.received{background-color:var(--accent-color);color:rgba(var(--background-color), 1)}.transaction-message.received+.transaction-message.received{border-radius:1rem}.transaction-message.sent{margin-left:auto;justify-self:flex-end;border-radius:1rem 1rem 0 1rem;text-align:right}.transaction-message__amount{font-size:1.2rem}.transaction-message__time{opacity:.8;font-size:.8rem}#history .page__header{margin-bottom:0}#history_applied_filters_wrapper{position:-webkit-sticky;position:sticky;top:0;padding:.2rem 0 .5rem 0;background-color:rgba(var(--background-color), 1);z-index:1;transition:background-color .3s}.applied-filter{display:flex;align-items:center;padding:.5rem .6rem .5rem .8rem;border-radius:1rem;border:solid thin rgba(var(--text-color), 0.2);text-transform:uppercase;font-size:.8rem;font-weight:500;letter-spacing:.08em}.applied-filter button{padding:.6rem}.applied-filter .icon{margin-left:.3rem}.category-chip{display:inline-flex;align-items:center;justify-content:center;padding:.3rem .5rem;border-radius:.3rem;font-size:.8rem;border:solid thin rgba(var(--text-color), 0.2);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.category-chip:focus{outline:solid var(--accent-color)}.category-chip input{display:none}.category-chip span{transition:transform .2s;transform:translateX(-0.8rem)}.category-chip .icon{opacity:0;transition:opacity .2s,transform .2s;margin-right:.3rem;fill:var(--accent-color);transform:translateX(0.5rem)}.category-chip input:checked~.icon{opacity:1;transform:translateX(0)}.category-chip input:checked~span{color:var(--accent-color);transform:translateX(0)}#wallet_history_wrapper{margin-top:1.5rem;padding-bottom:3rem}#payments_history{display:grid;gap:2rem;margin-top:1.5rem}.transaction{grid-template-columns:auto 1fr auto;gap:.5rem 1rem;align-items:center}.transaction__amount{white-space:nowrap}.transaction.sent .icon{fill:rgba(var(--text-color), 0.8)}.transaction.sent .transaction__amount{color:rgba(var(--text-color), 0.8)}.transaction.sent .transaction__amount::before{content:"- "}.transaction.received .icon{fill:var(--green)}.transaction.received .transaction__amount{color:var(--green)}.transaction.received .transaction__amount::before{content:"+ "}.transaction__icon{display:flex;align-items:center;justify-content:center;grid-area:1/1/3/2;width:2.5rem;height:2.5rem;background-color:rgba(var(--text-color), 0.03);border-radius:2rem}.transaction__receiver{font-weight:500}.transaction__time{font-size:.8rem;color:rgba(var(--text-color), 0.8)}.transaction__amount{font-size:1rem;font-weight:700;grid-area:1/3/3/4}.btc-tx{grid-template-columns:auto 1fr auto;gap:.5rem 1rem;align-items:center;grid-template-areas:"icon time amount" "icon receiver receiver" "icon txid txid"}.btc-tx:not(:last-of-type){padding-bottom:1rem}.btc-tx__amount{white-space:nowrap}.btc-tx.out .icon{fill:var(--danger-color)}.btc-tx.out .btc-tx__amount{color:var(--danger-color)}.btc-tx.out .btc-tx__amount::before{content:"- "}.btc-tx.in .icon{fill:var(--green)}.btc-tx.in .btc-tx__amount{color:var(--green)}.btc-tx.in .btc-tx__amount::before{content:"+ "}.btc-tx.unconfirmed-tx{grid-template-areas:"icon time amount" "icon receiver receiver" "icon txid txid" "icon unconfirmed unconfirmed"}.btc-tx.unconfirmed-tx .icon{fill:var(--yellow)}.btc-tx__icon{grid-area:icon;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background-color:rgba(var(--text-color), 0.03);border-radius:2rem}.btc-tx__receiver{grid-area:receiver;font-weight:500}.btc-tx__time{grid-area:time;font-size:.9rem;color:rgba(var(--text-color), 0.8)}.btc-tx__amount{grid-area:amount;font-size:1rem;font-weight:700}.btc-tx__id{grid-area:txid;font-size:.9rem;color:rgba(var(--text-color), 0.8)}.btc-tx .unconfirmed-wrapper{grid-area:unconfirmed;padding:.5rem 0}.fab{position:absolute;right:0;bottom:0;margin:1.5rem;box-shadow:0 .5rem 1rem rgba(0,0,0,.2);z-index:2}#scroll_to_top{border-radius:3rem;background-color:rgba(var(--foreground-color), 1)}#add_address_button{border-radius:.5rem;background-color:rgba(0,0,0,0);border:solid .1rem var(--accent-color)}.user-action-result__icon{justify-self:center;height:4rem;width:4rem;border-radius:5rem;margin-bottom:2rem;-webkit-animation:popup 1s;animation:popup 1s}.user-action-result__icon.success{fill:rgba(var(--background-color), 1);padding:1rem;background-color:#0bbe56}.user-action-result__icon.failed{background-color:rgba(var(--text-color), 0.03);fill:var(--danger-color)}@-webkit-keyframes popup{0%{opacity:0;transform:scale(0.2) translateY(600%)}10%{transform:scale(0.2) translateY(5rem);opacity:1}40%{transform:scale(0.2) translateY(0)}80%{transform:scale(1.1) translateY(0)}100%{transform:scale(1) translateY(0)}}@keyframes popup{0%{opacity:0;transform:scale(0.2) translateY(600%)}10%{transform:scale(0.2) translateY(5rem);opacity:1}40%{transform:scale(0.2) translateY(0)}80%{transform:scale(1.1) translateY(0)}100%{transform:scale(1) translateY(0)}}.cashier-request,.payment-request{display:flex;gap:1rem;align-items:center;padding:1rem;border-radius:.3rem;background-color:rgba(var(--foreground-color), 1)}.cashier-request:not(:last-of-type),.payment-request:not(:last-of-type){margin-bottom:.5rem}.cashier-request__mode,.payment-request__mode{text-align:center;width:2rem;font-size:.8rem}.cashier-request__time,.payment-request__time{font-size:.8rem}.cashier-request{display:grid;gap:.5rem 1rem;grid-template-columns:auto 1fr auto;grid-template-areas:"mode details status" "mode . status"}.cashier-request__mode{grid-area:mode}.cashier-request__details{grid-area:details;font-weight:700}.cashier-request__status,.cashier-request__requestor{font-size:.8rem}.cashier-request__status{grid-area:status;grid-column:3/4;grid-row:1/3}#payment_request_history{padding-bottom:3rem}.payment-request{display:grid;gap:.5rem 1rem;grid-template-columns:1fr auto;color:rgba(var(--text-color), 1)}.payment-request__requestor{font-weight:500}.payment-request__amount{font-weight:700;text-align:right}.payment-request__status{display:flex;align-items:center;font-size:.8rem;text-transform:capitalize}.payment-request__status .icon{height:1rem;width:1rem;margin-left:.3rem}.payment-request .icon.paid{fill:var(--green)}.payment-request .icon.declined{fill:var(--danger-color)}.payment-request .button{background-color:rgba(0,0,0,0);padding:.6rem .8rem;color:var(--accent-color);background-color:rgba(var(--foreground-color), 1)}.wallet-request{display:grid;gap:.5rem 1rem;padding:.5rem 0;border-radius:.5rem;grid-template-columns:auto 1fr}.wallet-request:not(.rejected,.pending).withdrawn .wallet-request__amount::before{content:"- "}.wallet-request:not(.rejected,.pending).added .wallet-request__amount{color:var(--green)}.wallet-request:not(.rejected,.pending).added .wallet-request__amount::before{content:"+ "}.wallet-request .icon.pending{fill:var(--yellow)}.wallet-request .icon.failed{fill:var(--danger-color)}.wallet-request__icon{display:flex;align-items:center;justify-content:center;grid-area:1/1/3/2;width:2.5rem;height:2.5rem;border-radius:2rem;background-color:rgba(var(--text-color), 0.06)}.wallet-request__icon .icon{fill:var(--accent-color)}.wallet-request__details{font-weight:500}.wallet-request__details,.wallet-request__amount{color:rgba(var(--text-color), 1)}.wallet-request__amount{font-weight:700}.wallet-request__time,.wallet-request__status{font-size:.8rem;color:rgba(var(--text-color), 0.8)}.wallet-request__status{text-align:right}.wallet-request__status .icon{margin-left:.3rem}#transaction__amount{font-size:2.5rem;font-weight:700}#transaction__remark,#transaction__note{line-height:1.6;justify-self:flex-start;background-color:rgba(var(--text-color), 0.06);border-radius:.5rem;padding:.8rem}#transaction__note .icon{fill:var(--danger-color);margin-right:.5rem}#saved_upi_ids_list{display:grid;gap:.5rem;width:min(24rem,100%)}.saved-upi{display:flex;justify-content:space-between;align-items:center;padding:.4rem .4rem .4rem 1rem;border-radius:.5rem;background-color:rgba(var(--text-color), 0.03)}@media screen and (max-width: 40rem){.inner-page{padding-bottom:7rem}#main_navbar{bottom:.5rem;justify-self:center;margin:0 auto;left:0;right:0;width:-webkit-max-content;width:-moz-max-content;width:max-content;background-color:rgba(var(--foreground-color), 0.9);-webkit-backdrop-filter:blur(0.5rem);backdrop-filter:blur(0.5rem)}#main_navbar.hide-away{bottom:0;left:0;right:0}.nav-item{aspect-ratio:1/1;width:4.5rem}.integrated-action-button .icon:last-of-type{margin-left:auto}}@media screen and (min-width: 40rem){sm-popup{--width: 24rem}.popup__header{grid-column:1/-1;padding:1rem 1.5rem 0 1.5rem}body{align-items:center;justify-content:center}#main_header{padding:1rem 4vw;background-color:rgba(var(--foreground-color), 1)}#main_navbar{margin:1rem;left:0;top:0;bottom:0;justify-content:center}#main_navbar ul{flex-direction:column;gap:.5rem;padding:.3rem;align-self:center;height:auto}.nav-item{aspect-ratio:1/1}.nav-item__indicator{width:.25rem;height:50%;left:0;border-radius:0 1rem 1rem 0;bottom:auto}.card{padding:1.5rem}.balance-card{padding:1.5rem;border-radius:1rem}#contact>*{padding:1rem 12vw}#contact>:last-child{padding:.5rem 12vw}#saved_ids_list{grid-template-columns:repeat(auto-fill, minmax(14rem, 1fr))}.inner-page{padding:1.5rem 18vw}}@media(any-hover: hover){::-webkit-scrollbar{width:.5rem;height:.5rem}::-webkit-scrollbar-thumb{background:rgba(var(--text-color), 0.3);border-radius:1rem}::-webkit-scrollbar-thumb:hover{background:rgba(var(--text-color), 0.5)}.interact:not([disabled]){transition:background-color .3s}.interact:not([disabled]):hover{background-color:rgba(var(--text-color), 0.06)}button:not([disabled]),.button:not([disabled]){transition:background-color .3s,filter .3s}button:not([disabled]):hover,.button:not([disabled]):hover{filter:contrast(2)}}@supports(overflow: overlay){body{overflow:overlay}}.hide{display:none !important} \ No newline at end of file diff --git a/css/main.scss b/css/main.scss index 89869f2..210e01e 100644 --- a/css/main.scss +++ b/css/main.scss @@ -94,7 +94,6 @@ button { border: none; background-color: transparent; overflow: hidden; - color: inherit; -webkit-tap-highlight-color: transparent; align-items: center; font-size: 0.9rem; @@ -103,6 +102,7 @@ button { padding: 0.8rem; border-radius: 0.3rem; justify-content: center; + color: inherit; &:focus-visible { outline: var(--accent-color) solid medium; } @@ -111,7 +111,11 @@ button { } } .button { + color: var(--accent-color); background-color: rgba(var(--text-color), 0.06); + .icon { + fill: var(--accent-color); + } &--primary, &--danger { color: rgba(var(--background-color), 1) !important; @@ -278,7 +282,7 @@ ol { text-overflow: ellipsis; } -.breakable { +.wrap-around { overflow-wrap: break-word; word-wrap: break-word; word-break: break-word; @@ -470,6 +474,9 @@ ol { background-color: var(--accent-color); } } +.margin-right-0-3 { + margin-right: 0.3rem; +} .margin-right-0-5 { margin-right: 0.5rem; } @@ -493,25 +500,15 @@ ol { display: flex; justify-content: space-between; margin-bottom: 1.5rem; - min-height: 8rem; + min-height: 5rem; .grid { margin-top: auto; } h1 { - margin-top: auto; font-size: 2rem; } } } -.page-layout { - display: grid; - gap: 1.5rem 0; - grid-template-columns: 1.5rem minmax(0, 1fr) 1.5rem; - align-content: flex-start; - & > * { - grid-column: 2/3; - } -} #confirmation_popup, #prompt_popup { flex-direction: column; @@ -577,16 +574,31 @@ ol { #sign_in, #sign_up { - justify-items: center; - align-content: center; - section { - margin-top: -8rem; - width: min(24rem, 100%); - } + justify-content: center; + align-items: center; sm-form { margin: 2rem 0; } } +#sign_in { + display: grid; + padding-top: 0; + align-items: center; + align-content: center; + padding-bottom: 0; + .illustration { + width: 100%; + height: auto; + background-color: #4d77ff; + border-radius: 1rem; + } + section { + background-color: rgba(var(--foreground-color), 1); + padding: 2rem; + border-radius: 0.5rem; + margin-top: -2.3rem; + } +} #sign_up { .h2 { margin-bottom: 0.5rem; @@ -612,25 +624,39 @@ ol { } } #main_header { - padding: 1.5rem; + display: grid; + gap: 1.5rem; + padding: 1rem 1rem; + align-items: center; + grid-template-columns: minmax(0, 1fr) auto; + min-height: 4rem; +} +.logged-in-user-id { + background-color: rgba(var(--text-color), 0.06); + max-width: fit-content; + padding: 0.4rem 0.8rem 0.4rem 0.5rem; + border-radius: 2rem; + font-weight: 500; } #main_card { - display: grid; - grid-template-columns: minmax(0, 1fr); - grid-template-rows: auto 1fr; + position: relative; + display: flex; + flex-direction: column; height: 100%; width: 100%; transition: background-color 0.3s; - background-color: rgba(var(--foreground-color), 1); + background-color: rgba(var(--background-color), 1); } #main_navbar { + position: fixed; display: flex; - background: rgba(var(--text-color), 0.03); - &.hide-away { - position: absolute; - } + justify-self: center; + margin: 0.5rem; ul { + border-radius: 1rem; + background-color: rgba(var(--foreground-color), 1); + box-shadow: 0 0.8rem 3rem rgba(0 0 0/ 0.15); display: flex; height: 100%; width: 100%; @@ -650,7 +676,7 @@ ol { padding: 0.5rem 0.3rem; color: var(--text-color); font-size: 0.8rem; - border-radius: 0.3rem; + border-radius: 0.7rem; font-weight: 500; .icon { transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275); @@ -699,10 +725,12 @@ ol { margin: 0.3rem; } .inner-page { - padding: 0 1.5rem; + display: flex; + flex-direction: column; + padding: 0 1rem; flex: 1; - overflow-y: auto; align-content: start; + overflow-y: auto; } .password-field { @@ -745,52 +773,49 @@ ol { align-content: flex-start; } #wallet_cards_wrapper { - display: flex; - overflow-x: auto; - scroll-snap-type: x proximity; + display: grid; + gap: 0.5rem; + grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr)); } .balance-card { - scroll-snap-align: start; - padding: 1.5rem; - border-radius: 1rem; - width: min(16rem, 90%); - flex-shrink: 0; - color: rgba(0, 0, 0, 0.8); - &:not(:last-of-type) { - margin-right: 0.5rem; + display: grid; + gap: 1.5rem; + border-radius: 0.5rem; + padding: 1rem; + background-color: rgba(var(--foreground-color), 1); + .asset-icon { + position: relative; + height: 2.5rem; + width: 2.5rem; + padding: 0.6rem; + border-radius: 1.1rem; + fill: rgba(0, 0, 0, 0.8); + margin-right: 0.8rem; } - &:nth-of-type(1) { - background: url("bg-art2.svg") no-repeat bottom right, hsl(141, 100%, 88%); - background-size: contain; - .icon { - background-color: hsla(141, 100%, 70%, 0.5); + &.rupee-card { + .asset-icon { + background-color: hsla(141, 100%, 70%); } } - &:nth-of-type(2) { - background: url("back.svg") no-repeat bottom right, hsl(62, 100%, 83%); - background-size: contain; - .icon { - background-color: hsla(55, 100%, 50%, 0.5); + &.flo-card { + .asset-icon { + fill: white; + background-color: #4d77ff; } } - & > .flex { - margin-bottom: 0.3rem; - .icon { - height: 2rem; - width: 2rem; - padding: 0.4rem; - border-radius: 0.3rem; - fill: rgba(0, 0, 0, 0.8); - margin-right: 0.5rem; + &.btc-card { + .asset-icon { + background-color: rgba(255, 173, 8); } } } #rupee_balance, -#flo_balance { +#flo_balance, +#btc_balance { span:first-of-type { - font-size: 2rem; + font-size: 1.5rem; } - span:last-of-type { + span:nth-of-type(2) { font-size: 1rem; } } @@ -805,9 +830,9 @@ ol { color: inherit; font-weight: 500; .icon:first-of-type { - height: 2.5rem; - width: 2.5rem; - padding: 0.6rem; + height: 2.3rem; + width: 2.3rem; + padding: 0.5rem; fill: rgba(var(--foreground-color), 1); background-color: var(--accent-color); border-radius: 2rem; @@ -824,13 +849,14 @@ ol { font-weight: 500; font-size: 0.8rem; white-space: initial; + padding: 0.8rem; .icon { margin-bottom: 0.8rem; } } .integrated-action-button { - padding: 0.8rem 0; - justify-content: initial; + padding: 0; + justify-content: flex-start; .icon:first-of-type { margin-right: 1rem; } @@ -870,25 +896,35 @@ ol { fill: rgba(0, 0, 0, 0.8); } } +.remove-card-wrapper { + min-height: 2rem; +} +.receiver-card { + display: grid; + gap: 0.5rem; + padding: 0.5rem 0; + border: none; + &:not(:last-of-type) { + border-bottom: solid thin rgba(var(--text-color), 0.3); + } +} #contacts { position: relative; - padding: 0; - .scrolling-wrapper { - padding: 0 1.5rem; - } } #saved_ids_list { display: grid; + gap: 0.5rem; grid-template-columns: minmax(0, 1fr); - padding-bottom: 5rem; + margin-bottom: 1.5rem; } .saved-id { grid-template-columns: auto 1fr; gap: 0 0.8rem; - border-radius: 0.3rem; - padding: 0.8rem 0; + border-radius: 0.5rem; + padding: 0.5rem; user-select: none; + background-color: rgba(var(--foreground-color), 1); &.highlight { box-shadow: 0 0 0.1rem 0.1rem var(--accent-color) inset; } @@ -931,6 +967,11 @@ ol { font-size: 0.8rem; } } +#saved_ids_tip { + background-color: rgba(var(--text-color), 0.03); + border-radius: 2rem; + padding: 0.5rem 0.8rem 0.5rem 0.5rem; +} .card { background-color: rgba(var(--foreground-color), 1); @@ -1012,7 +1053,7 @@ ol { position: sticky; top: 0; padding: 0.2rem 0 0.5rem 0; - background-color: rgba(var(--foreground-color), 1); + background-color: rgba(var(--background-color), 1); z-index: 1; transition: background-color 0.3s; } @@ -1078,7 +1119,7 @@ ol { #payments_history { display: grid; gap: 2rem; - padding-bottom: 4rem; + margin-top: 1.5rem; } .transaction { grid-template-columns: auto 1fr auto; @@ -1132,6 +1173,79 @@ ol { grid-area: 1/3/3/4; } } +.btc-tx { + grid-template-columns: auto 1fr auto; + gap: 0.5rem 1rem; + align-items: center; + grid-template-areas: "icon time amount" "icon receiver receiver" "icon txid txid"; + &:not(:last-of-type) { + padding-bottom: 1rem; + } + &__amount { + white-space: nowrap; + } + &.out { + .icon { + fill: var(--danger-color); + } + .btc-tx__amount { + color: var(--danger-color); + &::before { + content: "- "; + } + } + } + &.in { + .icon { + fill: var(--green); + } + .btc-tx__amount { + color: var(--green); + &::before { + content: "+ "; + } + } + } + &.unconfirmed-tx { + grid-template-areas: "icon time amount" "icon receiver receiver" "icon txid txid" "icon unconfirmed unconfirmed"; + .icon { + fill: var(--yellow); + } + } + &__icon { + grid-area: icon; + display: flex; + align-items: center; + justify-content: center; + width: 2.5rem; + height: 2.5rem; + background-color: rgba(var(--text-color), 0.03); + border-radius: 2rem; + } + &__receiver { + grid-area: receiver; + font-weight: 500; + } + &__time { + grid-area: time; + font-size: 0.9rem; + color: rgba(var(--text-color), 0.8); + } + &__amount { + grid-area: amount; + font-size: 1rem; + font-weight: 700; + } + &__id { + grid-area: txid; + font-size: 0.9rem; + color: rgba(var(--text-color), 0.8); + } + .unconfirmed-wrapper { + grid-area: unconfirmed; + padding: 0.5rem 0; + } +} .fab { position: absolute; right: 0; @@ -1146,11 +1260,8 @@ ol { } #add_address_button { border-radius: 0.5rem; - color: rgba(var(--background-color), 1); - background-color: var(--accent-color); - .icon { - fill: rgba(var(--background-color), 1); - } + background-color: transparent; + border: solid 0.1rem var(--accent-color); } .user-action-result__icon { justify-self: center; @@ -1194,7 +1305,7 @@ ol { display: flex; gap: 1rem; align-items: center; - padding: 0.8rem 0; + padding: 1rem; border-radius: 0.3rem; background-color: rgba(var(--foreground-color), 1); &:not(:last-of-type) { @@ -1366,13 +1477,28 @@ ol { background-color: rgba(var(--text-color), 0.03); } @media screen and (max-width: 40rem) { + .inner-page { + padding-bottom: 7rem; + } #main_navbar { + bottom: 0.5rem; + justify-self: center; + margin: 0 auto; + left: 0; + right: 0; + width: max-content; + background-color: rgba(var(--foreground-color), 0.9); + backdrop-filter: blur(0.5rem); &.hide-away { bottom: 0; left: 0; right: 0; } } + .nav-item { + aspect-ratio: 1/1; + width: 4.5rem; + } .integrated-action-button { .icon:last-of-type { margin-left: auto; @@ -1383,9 +1509,6 @@ ol { sm-popup { --width: 24rem; } - .page-layout { - grid-template-columns: 1fr 90vw 1fr; - } .popup__header { grid-column: 1/-1; padding: 1rem 1.5rem 0 1.5rem; @@ -1394,40 +1517,22 @@ ol { align-items: center; justify-content: center; } - - #main_card { - height: calc(100vh - 2rem); - width: calc(100vw - 2rem); - grid-template-areas: "header" "."; - &:not(.nav-hidden) { - grid-template-columns: auto 1fr; - grid-template-rows: auto 1fr; - grid-template-areas: "nav header" "nav ."; - } - position: relative; - border-radius: 0.8rem; - overflow: hidden; - box-shadow: 0 0.1rem 0.2rem rgba(0, 0, 0, 0.05), - 0 1rem 3rem rgba(0, 0, 0, 0.2); - } #main_header { - grid-area: header; + padding: 1rem 4vw; + background-color: rgba(var(--foreground-color), 1); } #main_navbar { - grid-area: nav; - border-top: none; - flex-direction: column; - height: calc(100% - 1rem); - margin: 0.5rem; - border-radius: 0.5rem; - background-color: rgba(37 110 255/ 0.03); + margin: 1rem; + left: 0; + top: 0; + bottom: 0; + justify-content: center; ul { flex-direction: column; gap: 0.5rem; padding: 0.3rem; - li:last-of-type { - margin-top: auto; - } + align-self: center; + height: auto; } } .nav-item { @@ -1443,20 +1548,23 @@ ol { .card { padding: 1.5rem; } - #saved_ids_list { - gap: 1rem; - grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); + .balance-card { + padding: 1.5rem; + border-radius: 1rem; } - body[data-theme="dark"] { - #main_navbar { - background-color: rgba(0 0 0/ 0.2); + #contact { + & > * { + padding: 1rem 12vw; + } + & > :last-child { + padding: 0.5rem 12vw; } } -} -@media screen and (min-width: 56rem) { - #main_card { - width: 56rem; - height: min(90vh, 48rem); + #saved_ids_list { + grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); + } + .inner-page { + padding: 1.5rem 18vw; } } @media (any-hover: hover) { @@ -1468,7 +1576,6 @@ ol { ::-webkit-scrollbar-thumb { background: rgba(var(--text-color), 0.3); border-radius: 1rem; - &:hover { background: rgba(var(--text-color), 0.5); } diff --git a/index.html b/index.html index 948f1c7..6544e36 100644 --- a/index.html +++ b/index.html @@ -7,6 +7,8 @@ + + @@ -21,6 +23,8 @@ } +
@@ -64,7 +68,7 @@