diff --git a/css/main.css b/css/main.css index 1b8de75..ce6da9a 100644 --- a/css/main.css +++ b/css/main.css @@ -26,16 +26,12 @@ body { } body[data-theme=dark] { - --accent-color:#d7b5ff; + --accent-color:#c64aff; --text-color: 240, 240, 240; --text-color-light: 170, 170, 170; --foreground-color: 20, 20, 20; --error-color: rgb(255, 106, 106); } -body[data-theme=dark] .contact-card { - margin: 0.2rem 0; - box-shadow: 0 0.1rem 0.5rem rgba(var(--text-color), 0.1); -} button { position: relative; @@ -57,6 +53,10 @@ sm-textarea { --border-radius: 0.5rem; } +ul { + list-style: none; +} + .flex { display: flex; } @@ -98,6 +98,13 @@ sm-textarea { transform: none !important; } +.overflow-ellipsis { + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; +} + .ripple { position: absolute; border-radius: 50%; @@ -162,8 +169,68 @@ sm-textarea { width: 2rem; } +.initial { + display: flex; + text-align: center; + user-select: none; + align-items: center; + justify-content: center; + background-color: rgba(var(--text-color), 0.1); +} + +#contact_popup { + --body-padding: 0; +} + +#contact_popup__initial { + align-self: center; + width: 5rem; + height: 5rem; + padding: 1rem; + margin: 4rem 0 1rem 0; + font-size: 2rem; + border-radius: 1.5rem; +} + +#contact_popup__name { + align-self: center; + font-weight: 700; + font-size: 1.2rem; +} + +.flo-id-grid { + gap: 0.5rem; + padding: 0 1.5rem; + grid-template-columns: 1fr auto; + margin-bottom: 1rem; +} + +.copy-button { + padding: 0.4rem; +} + +#contact_popup__options { + padding: 1rem 0; +} + +.contact__option { + font-size: 1rem; + padding: 0.8rem 1.5rem; + font-weight: 500; + color: rgba(var(--text-color), 0.8); +} + +.button__icon { + fill: rgba(var(--text-color), 0.7); +} + +.button__title { + margin-left: 1rem; +} + #main_card { height: 100%; + width: 100%; grid-row: 1/3; background: rgba(var(--foreground-color), 0.9); } @@ -214,6 +281,7 @@ sm-textarea { } .navbar__item { + position: relative; display: flex; align-items: center; padding: 0.8rem; @@ -258,6 +326,7 @@ sm-textarea { } #base_header { + position: relative; width: 100%; } @@ -267,13 +336,7 @@ sm-textarea { color: rgba(var(--text-color), 0.8); } -#send_flo_form { - padding: 0 1rem; - gap: 1rem; -} - -#search_contacts { - width: 14rem; +z #search_contacts { --padding: 0.5rem 0.6rem; --background: rgba(var(--text-color), 0.1); } @@ -282,8 +345,8 @@ sm-textarea { height: 1.2rem; } -#selected_contact_options { - list-style: none; +.expanding-search { + width: 14rem; } .contact-option:not(:last-of-type) { @@ -318,9 +381,8 @@ sm-textarea { display: flex; flex-wrap: wrap; height: 100%; - min-height: 0; overflow-y: auto; - list-style: none; + min-height: 0; align-content: flex-start; padding: 0 0 6rem 1rem; grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr)); @@ -331,17 +393,19 @@ sm-textarea { overflow: hidden; display: flex; width: calc(50% - 1rem); + aspect-ratio: 1/1; flex-direction: column; align-items: center; margin: 0 1rem 1rem 0; padding: 1.5rem 1rem; flex-shrink: 0; cursor: pointer; + user-select: none; align-self: flex-start; justify-content: center; border-radius: 0.5rem; - background: rgba(var(--foreground-color), 1); - box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.06); + background: rgba(var(--foreground-color), 0.6); + box-shadow: 0 0 0 1px rgba(var(--text-color), 0.2) inset; -webkit-tap-highlight-color: transparent; } @@ -360,23 +424,14 @@ sm-textarea { .contact-card__initial { width: 3rem; height: 3rem; - display: flex; padding: 1.5rem; font-size: 1.2rem; - text-align: center; - user-select: none; border-radius: 1rem; margin: 1.5rem 0; - align-items: center; - justify-content: center; - background-color: rgba(var(--text-color), 0.1); } .contact-card__name { text-align: center; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; font-weight: 500; font-size: 1rem; color: rgba(var(--text-color), 0.8); @@ -405,11 +460,49 @@ sm-textarea { font-size: 1.1rem; } +#send_flo_form { + padding: 0 1rem; + gap: 1rem; +} + +#balance_card { + width: min(22rem, calc(100% - 2rem)); + padding: 1rem; + margin: 1rem; + border-radius: 0.3rem; +} + +#balance_card__input { + margin-bottom: 1rem; +} + +.balance_card__title { + font-size: 1.1rem; + margin-bottom: 0.5rem; + color: rgba(var(--text-color), 0.8); +} + +.balance_card__description { + font-size: 0.9rem; + margin-bottom: 0.5rem; + color: rgba(var(--text-color), 0.8); +} + +#flo_balance { + font-size: 3rem; + margin: 2rem 0 1rem 0; +} + @media all and (max-width: 640px) { + .hide-on-mobile { + display: none; + } + #main_card { min-height: 100%; grid-template-rows: auto 1fr auto; grid-template-areas: "header" "page" "nav"; + background: rgba(var(--foreground-color), 1); } #main_navbar { @@ -428,6 +521,21 @@ sm-textarea { .navbar__item__icon { margin: 0 0 0.5rem 0; } + + #dashboard_page__header { + padding-top: 0; + } + + .expanding-search { + background-color: rgba(var(--foreground-color), 1); + position: absolute; + z-index: 1; + width: 100%; + } + + .back-button { + margin-right: 1rem; + } } @media all and (min-width: 640px) { body { @@ -441,6 +549,10 @@ sm-textarea { --width: 24rem; } + .hide-on-desktop { + display: none; + } + .popup__header { padding: 1rem 1.5rem 0 1rem; } @@ -502,15 +614,16 @@ sm-textarea { margin: 2rem; } } +@media all and (min-width: 1080px) { + .contact-card { + width: calc(33.33% - 1rem); + } +} @media all and (min-width: 1280px) { #main_card { width: 65vw; height: 85vh; } - - .contact-card { - width: calc(33.33% - 1rem); - } } @media all and (min-width: 1920px) { #main_card { diff --git a/css/main.min.css b/css/main.min.css index 605820d..2e72ab2 100644 --- a/css/main.min.css +++ b/css/main.min.css @@ -1 +1 @@ -.contact-card,.interact,button{cursor:pointer;-webkit-tap-highlight-color:transparent;overflow:hidden}*,::after,::before{padding:0;margin:0;box-sizing:border-box;font-family:Roboto,sans-serif}:root{height:100%;font-size:clamp(1rem,1.2vmax,3rem);--ease-in-overshhot:cubic-bezier(0.6, -0.28, 0.735, 0.045);--ease-out-overshhot:cubic-bezier(0.175, 0.885, 0.32, 1.275)}body{--accent-color:#6300d4;--text-color:17,17,17;--text-color-light:100,100,100;--foreground-color:255,255,255;--background-color:#efefef;--error-color:red;color:rgba(var(--text-color),1);height:calc(100%)}body[data-theme=dark]{--accent-color:#d7b5ff;--text-color:240,240,240;--text-color-light:170,170,170;--foreground-color:20,20,20;--error-color:rgb(255, 106, 106)}body[data-theme=dark] .contact-card{margin:.2rem 0;box-shadow:0 .1rem .5rem rgba(var(--text-color),.1)}button{position:relative;display:inline-flex;border:none;background:0 0;outline:0}button:focus-visible{outline:solid rgba(var(--text-color),1)}sm-input,sm-textarea{--border-radius:0.5rem}.flex{display:flex}.grid{display:grid}.align-center{align-items:center}#confirmation_popup,#prompt_popup,.direction-column{flex-direction:column}.justify-right{margin-left:auto}.space-between{justify-content:space-between}.full-width{width:100%}.hide{opacity:0;pointer-events:none}.hide-completely{display:none!important}.no-transformations{transform:none!important}.ripple{position:absolute;border-radius:50%;transform:scale(0);background:rgba(var(--text-color),.2);pointer-events:none}.interact,.page{position:relative}.icon{width:1.5rem;height:1.5rem;fill:rgba(var(--text-color),.7)}#confirmation_popup h4,#prompt_popup h4{font-weight:500;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}.popup__header{padding:.5rem 1.5rem 0 1rem;display:grid;grid-template-columns:auto 1fr;gap:.5rem;align-items:center;width:100%}.popup__header__close{padding:.5rem;cursor:pointer}.close-icon{height:2rem;width:2rem}#main_card{height:100%;grid-row:1/3;background:rgba(var(--foreground-color),.9)}#main_header{grid-area:header;height:max-content;gap:.2rem .5rem;padding:1rem .7rem 1rem 1rem;grid-template-columns:1fr auto;grid-template-areas:"company setting" "app setting"}#page_container{grid-area:page}.page{display:flex;flex-direction:column;height:100%;width:100%}.header__company-name{grid-area:company;font-weight:500;color:rgba(var(--text-color),.7);align-self:flex-end}.header__app-name{align-self:flex-start;line-height:1;grid-area:app;font-weight:700;color:rgba(var(--text-color),.9)}.header__settings-button{grid-area:setting;padding:.8rem}#main_navbar{grid-area:nav}.navbar__item{display:flex;align-items:center;padding:.8rem;border-radius:.5rem}.navbar__item--active .navbar__item__icon{fill:var(--accent-color)}.navbar__item--active .navbar__item__title{color:var(--accent-color)}.navbar__item__icon{margin-right:1rem;fill:rgba(var(--text-color),.7)}.navbar__item__title{font-size:.85rem;font-weight:500;color:rgba(var(--text-color),.7)}.fab{position:absolute;display:inline-flex;border-radius:5rem;aspect-ratio:1/1;padding:.7rem;background:#FF1F1F;box-shadow:0 .5rem .5rem rgba(0,0,0,.16)}.fab__icon{height:1.8rem;width:1.8rem;fill:#fff}#dashboard_page__header{height:7.5rem}#base_header{width:100%}.header__title{font-size:1.1rem;font-weight:700;color:rgba(var(--text-color),.8)}.contact-card__name,.contact-option__name{font-weight:500;color:rgba(var(--text-color),.8)}#send_flo_form{padding:0 1rem;gap:1rem}#search_contacts{width:14rem;--padding:0.5rem 0.6rem;--background:rgba(var(--text-color), 0.1)}.search__icon{height:1.2rem}#selected_contact_options{list-style:none}.contact-option:not(:last-of-type){margin-right:.5rem}.contact-option:first-of-type{padding-right:.6rem;margin-right:auto;margin-left:-.6rem}.contact-option__button{display:inline-flex;align-items:center;border-radius:.3rem;padding:.5rem .6rem}.contact-option__icon{height:1.2rem;width:1.2rem;margin-right:.5rem}.contact-option__name{font-size:.9rem}#contacts_container{display:flex;flex-wrap:wrap;height:100%;min-height:0;overflow-y:auto;list-style:none;align-content:flex-start;padding:0 0 6rem 1rem;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}.contact-card{position:relative;display:flex;width:calc(50% - 1rem);flex-direction:column;align-items:center;margin:0 1rem 1rem 0;padding:1.5rem 1rem;flex-shrink:0;align-self:flex-start;justify-content:center;border-radius:.5rem;background:rgba(var(--foreground-color),1);box-shadow:0 .2rem .4rem rgba(0,0,0,.06)}.contact-hidden-options{position:absolute;width:100%;top:0;padding:.5rem .8rem}.contact-card__checkbox{--border-radius:0.5rem;--border-color:rgba(var(--text-color), 0.6)}.contact-card__initial{width:3rem;height:3rem;display:flex;padding:1.5rem;font-size:1.2rem;text-align:center;user-select:none;border-radius:1rem;margin:1.5rem 0;align-items:center;justify-content:center;background-color:rgba(var(--text-color),.1)}.contact-card__name{text-align:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:1rem}.contact-card__more{padding:.4rem}.more-icon{height:1.2rem;width:1.2rem}#add_contact_button{right:0;bottom:0;margin:1.5rem}.page__header{padding:1rem 1rem 2rem}.page__title{font-size:1.1rem}@media all and (max-width:640px){#main_card{min-height:100%;grid-template-rows:auto 1fr auto;grid-template-areas:"header" "page" "nav"}#main_navbar{flex-direction:row}.navbar__item{flex:1;flex-direction:column}.navbar__item__icon{margin:0 0 .5rem}}@media all and (min-width:640px){body{align-items:center;justify-content:center;background:url(lighthouse.svg) center no-repeat;background-size:cover}sm-popup{--width:24rem}.popup__header{padding:1rem 1.5rem 0 1rem}#main_card{position:relative;width:80vw;height:80vh;border-radius:.5rem;overflow:hidden;backdrop-filter:blur(1rem);grid-template-columns:15rem 1fr;grid-template-rows:min-content 1fr;grid-template-areas:"header page" "nav page";box-shadow:0 1.5rem 1.5rem rgba(0,0,0,.16)}#main_header{padding:1.5rem 1.2rem 1.5rem 2rem}#main_navbar{flex-direction:column;height:100%;padding:0 1rem;align-content:flex-start}.navbar__item__title{font-size:.9rem}#page_container{position:relative;grid-row:1/3}#page_container::after{content:"";position:absolute;left:0;height:65%;width:1px;background:rgba(var(--text-color),.2);top:50%;transform:translateY(-50%)}.page__header{padding:1.5rem}#contacts_container{padding:0 1rem 8rem 2rem}#add_contact_button{right:0;bottom:0;margin:2rem}}@media all and (min-width:1280px){#main_card{width:65vw;height:85vh}.contact-card{width:calc(33.33% - 1rem)}}@media all and (min-width:1920px){#main_card{width:60vw;height:65vh}}@media (any-hover:hover){.contact-card__checkbox:not([checked]):not(:focus-within),.contact-card__more:not(:focus-within){opacity:0;transition:opacity .3s}.contact-card:hover .contact-card__checkbox,.contact-card:hover .contact-card__more{opacity:1}.contact-option__button{transition:background .3s}.contact-option__button:hover{background-color:rgba(var(--text-color),.1)}} \ No newline at end of file +.interact,.overflow-ellipsis,button{overflow:hidden}.contact-card,.interact,button{cursor:pointer;-webkit-tap-highlight-color:transparent}.button__icon,.icon{fill:rgba(var(--text-color),.7)}*,::after,::before{padding:0;margin:0;box-sizing:border-box;font-family:Roboto,sans-serif}:root{height:100%;font-size:clamp(1rem,1.2vmax,3rem);--ease-in-overshhot:cubic-bezier(0.6, -0.28, 0.735, 0.045);--ease-out-overshhot:cubic-bezier(0.175, 0.885, 0.32, 1.275)}body{--accent-color:#6300d4;--text-color:17,17,17;--text-color-light:100,100,100;--foreground-color:255,255,255;--background-color:#efefef;--error-color:red;color:rgba(var(--text-color),1);height:calc(100%)}body[data-theme=dark]{--accent-color:#c64aff;--text-color:240,240,240;--text-color-light:170,170,170;--foreground-color:20,20,20;--error-color:rgb(255, 106, 106)}button{position:relative;display:inline-flex;border:none;background:0 0;outline:0}button:focus-visible{outline:solid rgba(var(--text-color),1)}sm-input,sm-textarea{--border-radius:0.5rem}ul{list-style:none}.flex{display:flex}.grid{display:grid}.align-center{align-items:center}#confirmation_popup,#prompt_popup,.direction-column{flex-direction:column}.justify-right{margin-left:auto}.space-between{justify-content:space-between}.full-width{width:100%}.hide{opacity:0;pointer-events:none}.hide-completely{display:none!important}.no-transformations{transform:none!important}.overflow-ellipsis{width:100%;white-space:nowrap;text-overflow:ellipsis}.ripple{position:absolute;border-radius:50%;transform:scale(0);background:rgba(var(--text-color),.2);pointer-events:none}.interact,.navbar__item,.page{position:relative}.icon{width:1.5rem;height:1.5rem}#confirmation_popup h4,#prompt_popup h4{font-weight:500;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}.popup__header{padding:.5rem 1.5rem 0 1rem;display:grid;grid-template-columns:auto 1fr;gap:.5rem;align-items:center;width:100%}.popup__header__close{padding:.5rem;cursor:pointer}.close-icon{height:2rem;width:2rem}.initial{display:flex;text-align:center;user-select:none;align-items:center;justify-content:center;background-color:rgba(var(--text-color),.1)}#contact_popup{--body-padding:0}#contact_popup__initial{align-self:center;width:5rem;height:5rem;padding:1rem;margin:4rem 0 1rem;font-size:2rem;border-radius:1.5rem}#contact_popup__name{align-self:center;font-weight:700;font-size:1.2rem}.flo-id-grid{gap:.5rem;padding:0 1.5rem;grid-template-columns:1fr auto;margin-bottom:1rem}.copy-button{padding:.4rem}#contact_popup__options{padding:1rem 0}.contact__option{font-size:1rem;padding:.8rem 1.5rem;font-weight:500;color:rgba(var(--text-color),.8)}.button__title{margin-left:1rem}#main_card{height:100%;width:100%;grid-row:1/3;background:rgba(var(--foreground-color),.9)}#main_header{grid-area:header;height:max-content;gap:.2rem .5rem;padding:1rem .7rem 1rem 1rem;grid-template-columns:1fr auto;grid-template-areas:"company setting" "app setting"}#page_container{grid-area:page}.page{display:flex;flex-direction:column;height:100%;width:100%}.header__company-name{grid-area:company;font-weight:500;color:rgba(var(--text-color),.7);align-self:flex-end}.header__app-name{align-self:flex-start;line-height:1;grid-area:app;font-weight:700;color:rgba(var(--text-color),.9)}.header__settings-button{grid-area:setting;padding:.8rem}#main_navbar{grid-area:nav}.navbar__item{display:flex;align-items:center;padding:.8rem;border-radius:.5rem}.navbar__item--active .navbar__item__icon{fill:var(--accent-color)}.navbar__item--active .navbar__item__title{color:var(--accent-color)}.navbar__item__icon{margin-right:1rem;fill:rgba(var(--text-color),.7)}.navbar__item__title{font-size:.85rem;font-weight:500;color:rgba(var(--text-color),.7)}.fab{position:absolute;display:inline-flex;border-radius:5rem;aspect-ratio:1/1;padding:.7rem;background:#FF1F1F;box-shadow:0 .5rem .5rem rgba(0,0,0,.16)}.fab__icon{height:1.8rem;width:1.8rem;fill:#fff}#dashboard_page__header{height:7.5rem}#base_header{position:relative;width:100%}.header__title{font-size:1.1rem;font-weight:700;color:rgba(var(--text-color),.8)}.contact-card__name,.contact-option__name{font-weight:500;color:rgba(var(--text-color),.8)}z #search_contacts{--padding:0.5rem 0.6rem;--background:rgba(var(--text-color), 0.1)}.search__icon{height:1.2rem}.expanding-search{width:14rem}.contact-option:not(:last-of-type){margin-right:.5rem}.contact-option:first-of-type{padding-right:.6rem;margin-right:auto;margin-left:-.6rem}.contact-option__button{display:inline-flex;align-items:center;border-radius:.3rem;padding:.5rem .6rem}.contact-option__icon{height:1.2rem;width:1.2rem;margin-right:.5rem}.contact-option__name{font-size:.9rem}#contacts_container{display:flex;flex-wrap:wrap;height:100%;overflow-y:auto;min-height:0;align-content:flex-start;padding:0 0 6rem 1rem;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}.contact-card{position:relative;overflow:hidden;display:flex;width:calc(50% - 1rem);aspect-ratio:1/1;flex-direction:column;align-items:center;margin:0 1rem 1rem 0;padding:1.5rem 1rem;flex-shrink:0;user-select:none;align-self:flex-start;justify-content:center;border-radius:.5rem;background:rgba(var(--foreground-color),.6);box-shadow:0 0 0 1px rgba(var(--text-color),.2) inset}.contact-hidden-options{position:absolute;width:100%;top:0;padding:.5rem .8rem}.contact-card__checkbox{--border-radius:0.5rem;--border-color:rgba(var(--text-color), 0.6)}.contact-card__initial{width:3rem;height:3rem;padding:1.5rem;font-size:1.2rem;border-radius:1rem;margin:1.5rem 0}.contact-card__name{text-align:center;font-size:1rem}.balance_card__title,.page__title{font-size:1.1rem}.contact-card__more{padding:.4rem}.more-icon{height:1.2rem;width:1.2rem}#add_contact_button{right:0;bottom:0;margin:1.5rem}.page__header{padding:1rem 1rem 2rem}#send_flo_form{padding:0 1rem;gap:1rem}#balance_card{width:min(22rem,calc(100% - 2rem));padding:1rem;margin:1rem;border-radius:.3rem}#balance_card__input{margin-bottom:1rem}.balance_card__description,.balance_card__title{margin-bottom:.5rem;color:rgba(var(--text-color),.8)}.balance_card__description{font-size:.9rem}#flo_balance{font-size:3rem;margin:2rem 0 1rem}@media all and (max-width:640px){.hide-on-mobile{display:none}#main_card{min-height:100%;grid-template-rows:auto 1fr auto;grid-template-areas:"header" "page" "nav";background:rgba(var(--foreground-color),1)}#main_navbar{flex-direction:row}.navbar__item{flex:1;flex-direction:column}.navbar__item__icon{margin:0 0 .5rem}#dashboard_page__header{padding-top:0}.expanding-search{background-color:rgba(var(--foreground-color),1);position:absolute;z-index:1;width:100%}.back-button{margin-right:1rem}}@media all and (min-width:640px){body{align-items:center;justify-content:center;background:url(lighthouse.svg) center no-repeat;background-size:cover}sm-popup{--width:24rem}.hide-on-desktop{display:none}.popup__header{padding:1rem 1.5rem 0 1rem}#main_card{position:relative;width:80vw;height:80vh;border-radius:.5rem;overflow:hidden;backdrop-filter:blur(1rem);grid-template-columns:15rem 1fr;grid-template-rows:min-content 1fr;grid-template-areas:"header page" "nav page";box-shadow:0 1.5rem 1.5rem rgba(0,0,0,.16)}#main_header{padding:1.5rem 1.2rem 1.5rem 2rem}#main_navbar{flex-direction:column;height:100%;padding:0 1rem;align-content:flex-start}.navbar__item__title{font-size:.9rem}#page_container{position:relative;grid-row:1/3}#page_container::after{content:"";position:absolute;left:0;height:65%;width:1px;background:rgba(var(--text-color),.2);top:50%;transform:translateY(-50%)}.page__header{padding:1.5rem}#contacts_container{padding:0 1rem 8rem 2rem}#add_contact_button{right:0;bottom:0;margin:2rem}}@media all and (min-width:1080px){.contact-card{width:calc(33.33% - 1rem)}}@media all and (min-width:1280px){#main_card{width:65vw;height:85vh}}@media all and (min-width:1920px){#main_card{width:60vw;height:65vh}}@media (any-hover:hover){.contact-card__checkbox:not([checked]):not(:focus-within),.contact-card__more:not(:focus-within){opacity:0;transition:opacity .3s}.contact-card:hover .contact-card__checkbox,.contact-card:hover .contact-card__more{opacity:1}.contact-option__button{transition:background .3s}.contact-option__button:hover{background-color:rgba(var(--text-color),.1)}} \ No newline at end of file diff --git a/css/main.scss b/css/main.scss index afd6042..2f39e1f 100644 --- a/css/main.scss +++ b/css/main.scss @@ -23,15 +23,11 @@ body{ height: calc(100%); } body[data-theme='dark']{ - --accent-color:#d7b5ff; + --accent-color:#c64aff; --text-color: 240, 240, 240; --text-color-light: 170, 170, 170; --foreground-color: 20, 20, 20; --error-color: rgb(255, 106, 106); - .contact-card{ - margin: 0.2rem 0; - box-shadow: 0 0.1rem 0.5rem rgba(var(--text-color), 0.1); - } } button{ position: relative; @@ -50,6 +46,9 @@ sm-input, sm-textarea{ --border-radius: 0.5rem; } +ul{ + list-style: none; +} .flex{ display: flex; } @@ -81,6 +80,12 @@ sm-textarea{ .no-transformations{ transform: none !important; } +.overflow-ellipsis{ + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; +} .ripple{ position: absolute; border-radius: 50%; @@ -134,8 +139,63 @@ sm-textarea{ height: 2rem; width: 2rem; } +.initial{ + display: flex; + text-align: center; + user-select: none; + align-items: center; + justify-content: center; + background-color: rgba(var(--text-color), 0.1); +} + +#contact_popup{ + --body-padding: 0; +} +#contact_popup__initial{ + align-self: center; + width: 5rem; + height: 5rem; + padding: 1rem; + margin: 4rem 0 1rem 0; + font-size: 2rem; + border-radius: 1.5rem; +} +#contact_popup__name{ + align-self: center; + font-weight: 700; + font-size: 1.2rem; +} +.flo-id-grid{ + gap: 0.5rem; + padding: 0 1.5rem; + grid-template-columns: 1fr auto; + margin-bottom: 1rem; +} +#contact__flo_id{ +} +.copy-button{ + padding: 0.4rem; +} +#contact_popup__options{ + padding: 1rem 0; +} +.contact__option{ + font-size: 1rem; + padding: 0.8rem 1.5rem; + font-weight: 500; + color: rgba(var(--text-color), 0.8); +} +.button__icon{ + fill: rgba(var(--text-color), 0.7); +} +.button__title{ + margin-left: 1rem; +} + + #main_card{ height: 100%; + width: 100%; grid-row: 1/3; background: rgba(var(--foreground-color), 0.9); } @@ -178,6 +238,7 @@ sm-textarea{ grid-area: nav; } .navbar__item{ + position: relative; display: flex; align-items: center; padding: 0.8rem; @@ -221,6 +282,7 @@ sm-textarea{ height: 7.5rem; } #base_header{ + position: relative; width: 100%; } .header__title{ @@ -228,22 +290,22 @@ sm-textarea{ font-weight: 700; color: rgba(var(--text-color), 0.8); } -#send_flo_form{ - padding: 0 1rem; - gap: 1rem; -} + +z #search_contacts{ - width: 14rem; --padding: 0.5rem 0.6rem; --background: rgba(var(--text-color), 0.1); } .search__icon{ height: 1.2rem; } +.expanding-search{ + width: 14rem; +} #selected_contact_options{ - list-style: none; + } .contact-option{ &:not(:last-of-type){ @@ -276,9 +338,8 @@ sm-textarea{ display: flex; flex-wrap: wrap; height: 100%; - min-height: 0; overflow-y: auto; - list-style: none; + min-height: 0; align-content: flex-start; padding: 0 0 6rem 1rem; grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr)); @@ -288,17 +349,20 @@ sm-textarea{ overflow: hidden; display: flex; width: calc(50% - 1rem); + aspect-ratio: 1/1; flex-direction: column; align-items: center; margin: 0 1rem 1rem 0; padding: 1.5rem 1rem; flex-shrink: 0; cursor: pointer; + user-select: none; align-self: flex-start; justify-content: center; border-radius: 0.5rem; - background: rgba(var(--foreground-color), 1); - box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.06); + background: rgba(var(--foreground-color), 0.6); + // box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.06); + box-shadow: 0 0 0 1px rgba(var(--text-color), 0.2) inset; -webkit-tap-highlight-color: transparent; } .contact-hidden-options{ @@ -314,22 +378,13 @@ sm-textarea{ .contact-card__initial{ width: 3rem; height: 3rem; - display: flex; padding: 1.5rem; font-size: 1.2rem; - text-align: center; - user-select: none; border-radius: 1rem; margin: 1.5rem 0; - align-items: center; - justify-content: center; - background-color: rgba(var(--text-color), 0.1); } .contact-card__name{ text-align: center; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; font-weight: 500; font-size: 1rem; color: rgba(var(--text-color), 0.8); @@ -355,12 +410,47 @@ sm-textarea{ font-size: 1.1rem; } +#send_flo_form{ + padding: 0 1rem; + gap: 1rem; +} + + + +#balance_card{ + width: min(22rem, calc(100% - 2rem)); + padding: 1rem; + margin: 1rem; + border-radius: 0.3rem; +} +#balance_card__input{ + margin-bottom: 1rem; +} +.balance_card__title{ + font-size: 1.1rem; + margin-bottom: 0.5rem; + color: rgba(var(--text-color), 0.8); +} +.balance_card__description{ + font-size: 0.9rem; + margin-bottom: 0.5rem; + color: rgba(var(--text-color), 0.8); +} +#flo_balance{ + font-size: 3rem; + margin: 2rem 0 1rem 0; +} + // mobile only styles @media all and (max-width: 640px){ + .hide-on-mobile{ + display: none; + } #main_card{ min-height: 100%; grid-template-rows: auto 1fr auto; grid-template-areas: 'header' 'page' 'nav'; + background: rgba(var(--foreground-color), 1); } #main_navbar{ flex-direction: row; @@ -375,6 +465,18 @@ sm-textarea{ .navbar__item__icon{ margin: 0 0 0.5rem 0; } + #dashboard_page__header{ + padding-top: 0; + } + .expanding-search{ + background-color: rgba(var(--foreground-color), 1); + position: absolute; + z-index: 1; + width: 100%; + } + .back-button{ + margin-right: 1rem; + } } // desktop only styles @@ -388,6 +490,9 @@ sm-textarea{ sm-popup{ --width: 24rem; } + .hide-on-desktop{ + display: none; + } .popup__header{ padding: 1rem 1.5rem 0 1rem; } @@ -441,14 +546,16 @@ sm-textarea{ margin: 2rem; } } +@media all and (min-width: 1080px){ + .contact-card{ + width: calc(33.33% - 1rem); + } +} @media all and (min-width: 1280px){ #main_card{ width: 65vw; height: 85vh; } - .contact-card{ - width: calc(33.33% - 1rem); - } } @media all and (min-width: 1920px){ #main_card{ diff --git a/new.html b/new.html index e72bdde..73fd48e 100644 --- a/new.html +++ b/new.html @@ -36,10 +36,27 @@ -

S

-

Sairaj Mote

+

S

+ +
+

FFS5hFXG7DBtdgzrLwixZLpenAmsCKRddm

+ +
@@ -62,7 +79,7 @@ Send FLO - @@ -80,14 +97,16 @@ @@ -141,6 +154,17 @@ Send +
+
+

Balance

+

Enter FLO address and check your FLO crypto balance

+

0

+
+ + Check balance +
+
+
@@ -744,6 +768,31 @@ selectedContacts.clear() } + function searchBox(inputId, expand){ + const options = { + duration: 150, + fill: 'forwards', + easing: 'ease' + } + const triggerButtonID = getRef(inputId).dataset.trigger + if(expand){ + getRef(triggerButtonID).animate(slideOutLeft, options) + .onfinish = () => { + getRef(triggerButtonID).classList.add('hide-completely') + getRef(inputId).classList.remove('hide-on-mobile') + getRef(inputId).animate(slideInLeft, options) + } + } + else{ + getRef(inputId).animate(slideOutRight, options) + .onfinish = () => { + getRef(inputId).classList.add('hide-on-mobile') + getRef(triggerButtonID).classList.remove('hide-completely') + getRef(triggerButtonID).animate(slideInRight, options) + } + } + } +