From abe11e314a2576408ec32d220beb2c974711f29a Mon Sep 17 00:00:00 2001 From: sairaj mote Date: Tue, 29 Aug 2023 03:37:10 +0530 Subject: [PATCH] Adding collateral request UI --- css/main.css | 131 +++++++++++++--- css/main.min.css | 2 +- css/main.scss | 130 ++++++++++++--- index.html | 331 +++++++++++++++++++++++++++++---------- scripts/neverland.min.js | 2 + 5 files changed, 459 insertions(+), 137 deletions(-) create mode 100644 scripts/neverland.min.js diff --git a/css/main.css b/css/main.css index b749ff3..1e91e4e 100644 --- a/css/main.css +++ b/css/main.css @@ -230,10 +230,6 @@ sm-chip { -moz-user-select: none; user-select: none; } -sm-chip[selected] { - --background: var(--accent-color); - color: rgba(var(--background-color), 1); -} sm-select::part(options) { max-height: 40vh; @@ -475,7 +471,7 @@ h3 { background: radial-gradient(circle, rgba(var(--background-color), 0.3) 0%, rgba(0, 0, 0, 0) 50%); } -.interact { +.interact:not([disabled=true]) { position: relative; overflow: hidden; cursor: pointer; @@ -535,12 +531,6 @@ h3 { display: none; } -#app_body { - display: block; - height: 100%; - width: 100%; -} - #confirmation_popup, #prompt_popup { flex-direction: column; @@ -576,6 +566,69 @@ h3 { grid-column: 1; } +#app_body { + display: block; + height: 100%; + width: 100%; +} +#app_body.has-navbar { + display: grid; + grid-template-rows: auto 1fr auto; + grid-template-areas: "header" "main" "navbar"; +} + +#main_header { + grid-area: header; + background-color: rgba(var(--foreground-color), 1); +} + +#main_navbar { + display: flex; + grid-area: navbar; + background-color: rgba(var(--foreground-color), 1); +} +#main_navbar ul { + display: flex; + flex: 1; + justify-content: center; + align-items: center; +} +#main_navbar .nav-item { + display: flex; + align-items: center; + gap: 0.5rem; + padding: 1rem; + transition: background-color 0.3s; + color: rgba(var(--text-color), 0.7); + font-weight: 500; + font-size: 0.9rem; +} +#main_navbar .nav-item .icon { + fill: rgba(var(--text-color), 0.7); +} +#main_navbar .nav-item--active { + position: relative; + color: var(--accent-color); + background-color: rgba(62, 111, 255, 0.1); +} +#main_navbar .nav-item--active::before { + content: ""; + position: absolute; + top: 0; + left: 0; + height: 100%; + width: 0.2rem; + background-color: var(--accent-color); +} +#main_navbar .nav-item--active .icon { + fill: var(--accent-color); +} + +#sub_page_container { + grid-area: main; + padding: max(1rem, 1.5vw); +} + #loading { position: fixed; display: grid; @@ -636,7 +689,7 @@ h3 { #main_header { display: flex; gap: 1rem; - padding: max(1rem, 1.5vw); + padding: 1rem max(1rem, 1.5vw); width: 100%; align-items: center; } @@ -665,18 +718,6 @@ h3 { overflow: hidden; } -#home_page { - display: flex; - flex-direction: column; - gap: 1rem; -} -#home_page > section { - display: grid; - width: min(100% - 2rem, 64rem); - margin: 0 auto; - margin-bottom: 1rem; -} - .card { padding: 1.5rem; border-radius: 0.5rem; @@ -685,6 +726,17 @@ h3 { transition: box-shadow 0.2s, background-color 0.2s; } +#main_page { + display: grid; + grid-template-columns: minmax(0, 1fr); +} + +#policy_list { + display: grid; + gap: 0.5rem; + grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); +} + .policy { display: grid; grid-template-columns: 1fr 1fr; @@ -700,7 +752,7 @@ h3 { color: rgba(var(--text-color), 0.8); } .policy > div p { - font-size: 1.2rem; + font-size: 1.1rem; font-weight: 500; } .policy button { @@ -708,6 +760,16 @@ h3 { margin-left: auto; } +#request_loan_form label { + display: flex; + align-items: center; + gap: 0.5rem; +} +#request_loan_form label input { + height: 1.2em; + width: 1.2em; +} + @media screen and (max-width: 40rem) { theme-toggle { order: 2; @@ -730,6 +792,25 @@ h3 { .popup__header { padding: 1.5rem 1.5rem 0 0.75rem; } + #app_body.has-navbar { + grid-template-rows: auto 1fr; + grid-template-columns: auto 1fr; + grid-template-areas: "header header" "navbar main"; + } + #main_navbar ul { + flex-direction: column; + justify-content: flex-start; + } + #main_navbar .nav-item { + padding: 0.8rem 1rem; + min-width: 10rem; + } + #main_page { + grid-template-columns: 1fr 24rem; + } + #request_loan_popup { + --width: 32rem; + } } @media (any-hover: hover) { ::-webkit-scrollbar { diff --git a/css/main.min.css b/css/main.min.css index 503f902..5edb9bc 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.5rem)}html,body{height:100%}body{--accent-color: #365eff;--text-color: 30, 30, 30;--background-color: 248, 248, 248;--foreground-color: 255, 255, 255;--danger-color: rgb(255, 75, 75);--green: #1cad59;scrollbar-width:thin;scrollbar-gutter:stable;color:rgba(var(--text-color), 1);background-color:rgba(var(--background-color), 1);transition:background-color .3s}body[data-theme=dark]{--accent-color: #86afff;--text-color: 220, 220, 220;--background-color: 10, 10, 10;--foreground-color: 24, 24, 24;--danger-color: rgb(255, 106, 106);--green: #00e676}body[data-theme=dark] sm-popup::part(popup){background-color:rgba(var(--foreground-color), 1)}body[data-theme=dark] ::-webkit-calendar-picker-indicator{filter:invert(1)}p,strong{font-size:.9rem;max-width:65ch;line-height:1.7;color:rgba(var(--text-color), 0.9)}p:not(:last-of-type),strong:not(:last-of-type){margin-bottom:1.5rem}a{text-decoration:none;color:var(--accent-color)}a:focus-visible{box-shadow:0 0 0 .1rem rgba(var(--text-color), 1) inset}button,.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;color:inherit;-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;font-size:inherit;font-weight:500;white-space:nowrap;padding:.6rem .9rem;border-radius:.3rem;justify-content:center}button:focus-visible,.button:focus-visible{outline:var(--accent-color) solid medium}button:not(:disabled),.button:not(:disabled){cursor:pointer}.button{background-color:rgba(var(--text-color), 0.02);border:solid thin rgba(var(--text-color), 0.06)}.button--primary{color:rgba(var(--background-color), 1);background-color:var(--accent-color)}.button--primary .icon{fill:rgba(var(--background-color), 1)}.button--colored{color:var(--accent-color)}.button--colored .icon{fill:var(--accent-color)}.button--danger{background-color:rgba(255,115,115,.062745098);color:var(--danger-color)}.button--danger .icon{fill:var(--danger-color)}.button--small{padding:.4rem .6rem}.button--outlined{border:solid rgba(var(--text-color), 0.3) .1rem;background-color:rgba(var(--foreground-color), 1)}.button--transparent{background-color:rgba(0,0,0,0)}button:disabled{opacity:.4;cursor:not-allowed;filter:saturate(0)}.cta{text-transform:uppercase;font-size:.9rem;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}.icon--big{width:3rem;height:3rem}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{padding:1rem 0}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.5rem;--background-color: rgba(var(--foreground-color), 1)}sm-input button .icon,sm-textarea button .icon{fill:var(--accent-color)}sm-textarea{--max-height: auto}sm-spinner{--size: 1rem;--stroke-width: 0.1rem}sm-form{--gap: 1rem}sm-chips{--gap: 0.3rem}sm-chip{position:relative;font-size:.9rem;--border-radius: 0.5rem;--padding: 0.5rem 0.8rem;--background: rgba(var(--text-color), 0.06);-webkit-user-select:none;-moz-user-select:none;user-select:none}sm-chip[selected]{--background: var(--accent-color);color:rgba(var(--background-color), 1)}sm-select::part(options){max-height:40vh}sm-option{flex-shrink:0}sm-option::part(option){grid-template-columns:none}ul{list-style:none}fieldset{display:grid;gap:.5rem;padding:1rem;border-radius:.5rem;border:solid 1px rgba(var(--text-color), 0.3)}fieldset legend{font-size:.9rem;font-weight:500}input[type=radio]{height:1.1em;width:1.1em;margin-right:.5rem;accent-color:var(--accent-color)}.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}.full-bleed{grid-column:1/-1}.h1{font-size:1.5rem}.h2{font-size:1.2rem}h3{font-size:1.2rem;line-height:1.3}.h4{font-size:.9rem}.h5{font-size:.75rem}.uppercase{text-transform:uppercase}.capitalize::first-letter{text-transform:uppercase}.sticky{position:-webkit-sticky;position:sticky}.top-0{top:0}.flex{display:flex}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.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}.align-content-center{align-content:center}.text-center{text-align:center}.justify-start{justify-content:start}.justify-content-center{justify-content:center}.justify-items-center{justify-items:center}.justify-right{margin-left:auto}.justify-items-center{justify-items:center}.align-self-center{align-self:center}.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%}.margin-left-0-5{margin-left:.5rem}.margin-left-auto{margin-left:auto}.margin-right-0-5{margin-right:.5rem}.margin-right-auto{margin-right:auto}.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}.button--primary .ripple,.button--danger .ripple{background:radial-gradient(circle, rgba(var(--background-color), 0.3) 0%, rgba(0, 0, 0, 0) 50%)}.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}.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)}.multi-state-button{display:grid;text-align:center;align-items:center;justify-items:center}.multi-state-button>*{grid-area:1/1/2/2}.multi-state-button button{z-index:1;width:100%}.password-field label{display:flex;justify-content:center}.password-field label input:checked~.visible{display:none}.password-field label input:not(:checked)~.invisible{display:none}#app_body{display:block;height:100%;width:100%}#confirmation_popup,#prompt_popup{flex-direction:column}#confirmation_popup h4,#prompt_popup h4{margin-bottom:.5rem}#confirmation_popup .flex,#prompt_popup .flex{margin-top:1rem}.popup__header{position:relative;display:grid;gap:.5rem;width:100%;padding:0 1.5rem 0 .5rem;align-items:center;grid-template-columns:auto 1fr}.popup__header>*{grid-row:1}.popup__header h3,.popup__header h4{grid-column:1/-1;justify-self:center;align-self:center}.popup__header__close{grid-column:1}#loading{position:fixed;display:grid;top:0;left:0;bottom:0;right:0;place-content:center;justify-items:center;background:rgba(var(--foreground-color), 1);z-index:10}#loading h4{margin-top:1.5rem;font-weight:500}#loading sm-spinner{--size: 1.5rem}#sign_in,#sign_up{display:grid;width:100%;height:100%;justify-items:center;align-content:center;padding:1.5rem}#sign_in section,#sign_up section{width:min(26rem,100%)}#sign_in sm-form,#sign_up sm-form{margin:2rem 0}.generated-keys-wrapper{padding:1rem;background-color:rgba(var(--foreground-color), 1);border-radius:.5rem}#flo_id_warning{padding-bottom:1.5rem}#flo_id_warning .icon{height:3rem;width:3rem;padding:.8rem;overflow:visible;background-color:#ffc107;border-radius:3rem;fill:rgba(0,0,0,.8)}#main_header{display:flex;gap:1rem;padding:max(1rem,1.5vw);width:100%;align-items:center}.app-brand{display:flex;gap:.3rem;align-items:center}.app-brand .icon{height:1.7rem;width:1.7rem}.app-name__company{font-size:.8rem;font-weight:500;color:rgba(var(--text-color), 0.8)}#user_popup_button{background-color:rgba(var(--text-color), 0.06);border-radius:2rem;font-size:.9rem;text-overflow:ellipsis;overflow:hidden}#home_page{display:flex;flex-direction:column;gap:1rem}#home_page>section{display:grid;width:min(100% - 2rem,64rem);margin:0 auto;margin-bottom:1rem}.card{padding:1.5rem;border-radius:.5rem;box-shadow:0 0 0 1px rgba(var(--text-color), 0.1);background-color:rgba(var(--foreground-color), 1);transition:box-shadow .2s,background-color .2s}.policy{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:1rem;border-radius:.5rem;background-color:rgba(var(--foreground-color), 1);box-shadow:0 0 0 1px rgba(var(--text-color), 0.1);flex:1 1 12rem}.policy>div h5{font-weight:400;color:rgba(var(--text-color), 0.8)}.policy>div p{font-size:1.2rem;font-weight:500}.policy button{grid-column:1/-1;margin-left:auto}@media screen and (max-width: 40rem){theme-toggle{order:2}#user_popup_button{flex:1;order:1}.hide-on-small{display:none !important}}@media screen and (min-width: 64rem){h1{font-size:3vw}sm-popup{--width: 24rem}.popup__header{padding:1.5rem 1.5rem 0 .75rem}}@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]){transition:background-color .3s,filter .3s}.button:not([disabled]):hover{filter:contrast(2)}}@supports(overflow: overlay){body{overflow:overlay}}.hidden{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.5rem)}html,body{height:100%}body{--accent-color: #365eff;--text-color: 30, 30, 30;--background-color: 248, 248, 248;--foreground-color: 255, 255, 255;--danger-color: rgb(255, 75, 75);--green: #1cad59;scrollbar-width:thin;scrollbar-gutter:stable;color:rgba(var(--text-color), 1);background-color:rgba(var(--background-color), 1);transition:background-color .3s}body[data-theme=dark]{--accent-color: #86afff;--text-color: 220, 220, 220;--background-color: 10, 10, 10;--foreground-color: 24, 24, 24;--danger-color: rgb(255, 106, 106);--green: #00e676}body[data-theme=dark] sm-popup::part(popup){background-color:rgba(var(--foreground-color), 1)}body[data-theme=dark] ::-webkit-calendar-picker-indicator{filter:invert(1)}p,strong{font-size:.9rem;max-width:65ch;line-height:1.7;color:rgba(var(--text-color), 0.9)}p:not(:last-of-type),strong:not(:last-of-type){margin-bottom:1.5rem}a{text-decoration:none;color:var(--accent-color)}a:focus-visible{box-shadow:0 0 0 .1rem rgba(var(--text-color), 1) inset}button,.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;color:inherit;-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;font-size:inherit;font-weight:500;white-space:nowrap;padding:.6rem .9rem;border-radius:.3rem;justify-content:center}button:focus-visible,.button:focus-visible{outline:var(--accent-color) solid medium}button:not(:disabled),.button:not(:disabled){cursor:pointer}.button{background-color:rgba(var(--text-color), 0.02);border:solid thin rgba(var(--text-color), 0.06)}.button--primary{color:rgba(var(--background-color), 1);background-color:var(--accent-color)}.button--primary .icon{fill:rgba(var(--background-color), 1)}.button--colored{color:var(--accent-color)}.button--colored .icon{fill:var(--accent-color)}.button--danger{background-color:rgba(255,115,115,.062745098);color:var(--danger-color)}.button--danger .icon{fill:var(--danger-color)}.button--small{padding:.4rem .6rem}.button--outlined{border:solid rgba(var(--text-color), 0.3) .1rem;background-color:rgba(var(--foreground-color), 1)}.button--transparent{background-color:rgba(0,0,0,0)}button:disabled{opacity:.4;cursor:not-allowed;filter:saturate(0)}.cta{text-transform:uppercase;font-size:.9rem;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}.icon--big{width:3rem;height:3rem}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{padding:1rem 0}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.5rem;--background-color: rgba(var(--foreground-color), 1)}sm-input button .icon,sm-textarea button .icon{fill:var(--accent-color)}sm-textarea{--max-height: auto}sm-spinner{--size: 1rem;--stroke-width: 0.1rem}sm-form{--gap: 1rem}sm-chips{--gap: 0.3rem}sm-chip{position:relative;font-size:.9rem;--border-radius: 0.5rem;--padding: 0.5rem 0.8rem;--background: rgba(var(--text-color), 0.06);-webkit-user-select:none;-moz-user-select:none;user-select:none}sm-select::part(options){max-height:40vh}sm-option{flex-shrink:0}sm-option::part(option){grid-template-columns:none}ul{list-style:none}fieldset{display:grid;gap:.5rem;padding:1rem;border-radius:.5rem;border:solid 1px rgba(var(--text-color), 0.3)}fieldset legend{font-size:.9rem;font-weight:500}input[type=radio]{height:1.1em;width:1.1em;margin-right:.5rem;accent-color:var(--accent-color)}.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}.full-bleed{grid-column:1/-1}.h1{font-size:1.5rem}.h2{font-size:1.2rem}h3{font-size:1.2rem;line-height:1.3}.h4{font-size:.9rem}.h5{font-size:.75rem}.uppercase{text-transform:uppercase}.capitalize::first-letter{text-transform:uppercase}.sticky{position:-webkit-sticky;position:sticky}.top-0{top:0}.flex{display:flex}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.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}.align-content-center{align-content:center}.text-center{text-align:center}.justify-start{justify-content:start}.justify-content-center{justify-content:center}.justify-items-center{justify-items:center}.justify-right{margin-left:auto}.justify-items-center{justify-items:center}.align-self-center{align-self:center}.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%}.margin-left-0-5{margin-left:.5rem}.margin-left-auto{margin-left:auto}.margin-right-0-5{margin-right:.5rem}.margin-right-auto{margin-right:auto}.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}.button--primary .ripple,.button--danger .ripple{background:radial-gradient(circle, rgba(var(--background-color), 0.3) 0%, rgba(0, 0, 0, 0) 50%)}.interact:not([disabled=true]){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}.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)}.multi-state-button{display:grid;text-align:center;align-items:center;justify-items:center}.multi-state-button>*{grid-area:1/1/2/2}.multi-state-button button{z-index:1;width:100%}.password-field label{display:flex;justify-content:center}.password-field label input:checked~.visible{display:none}.password-field label input:not(:checked)~.invisible{display:none}#confirmation_popup,#prompt_popup{flex-direction:column}#confirmation_popup h4,#prompt_popup h4{margin-bottom:.5rem}#confirmation_popup .flex,#prompt_popup .flex{margin-top:1rem}.popup__header{position:relative;display:grid;gap:.5rem;width:100%;padding:0 1.5rem 0 .5rem;align-items:center;grid-template-columns:auto 1fr}.popup__header>*{grid-row:1}.popup__header h3,.popup__header h4{grid-column:1/-1;justify-self:center;align-self:center}.popup__header__close{grid-column:1}#app_body{display:block;height:100%;width:100%}#app_body.has-navbar{display:grid;grid-template-rows:auto 1fr auto;grid-template-areas:"header" "main" "navbar"}#main_header{grid-area:header;background-color:rgba(var(--foreground-color), 1)}#main_navbar{display:flex;grid-area:navbar;background-color:rgba(var(--foreground-color), 1)}#main_navbar ul{display:flex;flex:1;justify-content:center;align-items:center}#main_navbar .nav-item{display:flex;align-items:center;gap:.5rem;padding:1rem;transition:background-color .3s;color:rgba(var(--text-color), 0.7);font-weight:500;font-size:.9rem}#main_navbar .nav-item .icon{fill:rgba(var(--text-color), 0.7)}#main_navbar .nav-item--active{position:relative;color:var(--accent-color);background-color:rgba(62,111,255,.1)}#main_navbar .nav-item--active::before{content:"";position:absolute;top:0;left:0;height:100%;width:.2rem;background-color:var(--accent-color)}#main_navbar .nav-item--active .icon{fill:var(--accent-color)}#sub_page_container{grid-area:main;padding:max(1rem,1.5vw)}#loading{position:fixed;display:grid;top:0;left:0;bottom:0;right:0;place-content:center;justify-items:center;background:rgba(var(--foreground-color), 1);z-index:10}#loading h4{margin-top:1.5rem;font-weight:500}#loading sm-spinner{--size: 1.5rem}#sign_in,#sign_up{display:grid;width:100%;height:100%;justify-items:center;align-content:center;padding:1.5rem}#sign_in section,#sign_up section{width:min(26rem,100%)}#sign_in sm-form,#sign_up sm-form{margin:2rem 0}.generated-keys-wrapper{padding:1rem;background-color:rgba(var(--foreground-color), 1);border-radius:.5rem}#flo_id_warning{padding-bottom:1.5rem}#flo_id_warning .icon{height:3rem;width:3rem;padding:.8rem;overflow:visible;background-color:#ffc107;border-radius:3rem;fill:rgba(0,0,0,.8)}#main_header{display:flex;gap:1rem;padding:1rem max(1rem,1.5vw);width:100%;align-items:center}.app-brand{display:flex;gap:.3rem;align-items:center}.app-brand .icon{height:1.7rem;width:1.7rem}.app-name__company{font-size:.8rem;font-weight:500;color:rgba(var(--text-color), 0.8)}#user_popup_button{background-color:rgba(var(--text-color), 0.06);border-radius:2rem;font-size:.9rem;text-overflow:ellipsis;overflow:hidden}.card{padding:1.5rem;border-radius:.5rem;box-shadow:0 0 0 1px rgba(var(--text-color), 0.1);background-color:rgba(var(--foreground-color), 1);transition:box-shadow .2s,background-color .2s}#main_page{display:grid;grid-template-columns:minmax(0, 1fr)}#policy_list{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill, minmax(16rem, 1fr))}.policy{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:1rem;border-radius:.5rem;background-color:rgba(var(--foreground-color), 1);box-shadow:0 0 0 1px rgba(var(--text-color), 0.1);flex:1 1 12rem}.policy>div h5{font-weight:400;color:rgba(var(--text-color), 0.8)}.policy>div p{font-size:1.1rem;font-weight:500}.policy button{grid-column:1/-1;margin-left:auto}#request_loan_form label{display:flex;align-items:center;gap:.5rem}#request_loan_form label input{height:1.2em;width:1.2em}@media screen and (max-width: 40rem){theme-toggle{order:2}#user_popup_button{flex:1;order:1}.hide-on-small{display:none !important}}@media screen and (min-width: 64rem){h1{font-size:3vw}sm-popup{--width: 24rem}.popup__header{padding:1.5rem 1.5rem 0 .75rem}#app_body.has-navbar{grid-template-rows:auto 1fr;grid-template-columns:auto 1fr;grid-template-areas:"header header" "navbar main"}#main_navbar ul{flex-direction:column;justify-content:flex-start}#main_navbar .nav-item{padding:.8rem 1rem;min-width:10rem}#main_page{grid-template-columns:1fr 24rem}#request_loan_popup{--width: 32rem}}@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]){transition:background-color .3s,filter .3s}.button:not([disabled]):hover{filter:contrast(2)}}@supports(overflow: overlay){body{overflow:overlay}}.hidden{display:none !important} \ No newline at end of file diff --git a/css/main.scss b/css/main.scss index aa100aa..8c69139 100644 --- a/css/main.scss +++ b/css/main.scss @@ -208,10 +208,6 @@ sm-chip { --padding: 0.5rem 0.8rem; --background: rgba(var(--text-color), 0.06); user-select: none; - &[selected] { - --background: var(--accent-color); - color: rgba(var(--background-color), 1); - } } sm-select { &::part(options) { @@ -445,7 +441,7 @@ h3 { ); } } -.interact { +.interact:not([disabled="true"]) { position: relative; overflow: hidden; cursor: pointer; @@ -503,11 +499,6 @@ h3 { } } } -#app_body { - display: block; - height: 100%; - width: 100%; -} #confirmation_popup, #prompt_popup { flex-direction: column; @@ -542,7 +533,65 @@ h3 { grid-column: 1; } } - +#app_body { + display: block; + height: 100%; + width: 100%; + &.has-navbar { + display: grid; + grid-template-rows: auto 1fr auto; + grid-template-areas: "header" "main" "navbar"; + } +} +#main_header { + grid-area: header; + background-color: rgba(var(--foreground-color), 1); +} +#main_navbar { + display: flex; + grid-area: navbar; + background-color: rgba(var(--foreground-color), 1); + ul { + display: flex; + flex: 1; + justify-content: center; + align-items: center; + } + .nav-item { + display: flex; + align-items: center; + gap: 0.5rem; + padding: 1rem; + transition: background-color 0.3s; + color: rgba(var(--text-color), 0.7); + font-weight: 500; + font-size: 0.9rem; + .icon { + fill: rgba(var(--text-color), 0.7); + } + &--active { + position: relative; + color: var(--accent-color); + background-color: rgba(62, 111, 255, 0.1); + &::before { + content: ""; + position: absolute; + top: 0; + left: 0; + height: 100%; + width: 0.2rem; + background-color: var(--accent-color); + } + .icon { + fill: var(--accent-color); + } + } + } +} +#sub_page_container { + grid-area: main; + padding: max(1rem, 1.5vw); +} #loading { position: fixed; display: grid; @@ -598,7 +647,7 @@ h3 { #main_header { display: flex; gap: 1rem; - padding: max(1rem, 1.5vw); + padding: 1rem max(1rem, 1.5vw); width: 100%; align-items: center; } @@ -626,17 +675,6 @@ h3 { text-overflow: ellipsis; overflow: hidden; } -#home_page { - display: flex; - flex-direction: column; - gap: 1rem; - & > section { - display: grid; - width: min(calc(100% - 2rem), 64rem); - margin: 0 auto; - margin-bottom: 1rem; - } -} .card { padding: 1.5rem; border-radius: 0.5rem; @@ -644,6 +682,15 @@ h3 { background-color: rgba(var(--foreground-color), 1); transition: box-shadow 0.2s, background-color 0.2s; } +#main_page { + display: grid; + grid-template-columns: minmax(0, 1fr); +} +#policy_list { + display: grid; + gap: 0.5rem; + grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); +} .policy { display: grid; grid-template-columns: 1fr 1fr; @@ -659,7 +706,7 @@ h3 { color: rgba(var(--text-color), 0.8); } p { - font-size: 1.2rem; + font-size: 1.1rem; font-weight: 500; } } @@ -668,7 +715,17 @@ h3 { margin-left: auto; } } - +#request_loan_form { + label { + display: flex; + align-items: center; + gap: 0.5rem; + input { + height: 1.2em; + width: 1.2em; + } + } +} @media screen and (max-width: 40rem) { theme-toggle { order: 2; @@ -692,6 +749,29 @@ h3 { .popup__header { padding: 1.5rem 1.5rem 0 0.75rem; } + #app_body { + &.has-navbar { + grid-template-rows: auto 1fr; + grid-template-columns: auto 1fr; + grid-template-areas: "header header" "navbar main"; + } + } + #main_navbar { + ul { + flex-direction: column; + justify-content: flex-start; + } + .nav-item { + padding: 0.8rem 1rem; + min-width: 10rem; + } + } + #main_page { + grid-template-columns: 1fr 24rem; + } + #request_loan_popup { + --width: 32rem; + } } @media (any-hover: hover) { ::-webkit-scrollbar { diff --git a/index.html b/index.html index 37f87ad..3f582bc 100644 --- a/index.html +++ b/index.html @@ -81,7 +81,7 @@ application: "TEST_MODE", } - + @@ -396,50 +396,206 @@ }