7.0: ui refresh and more

This commit is contained in:
wukko
2023-08-05 00:43:12 +06:00
parent 38ceb1be77
commit 43a3ebf475
23 changed files with 838 additions and 526 deletions

View File

@@ -3,6 +3,8 @@
--without-padding: calc(100% - 4rem);
--border-15: 0.15rem solid var(--accent);
--border-10: 0.1rem solid var(--accent);
--inset-focus: 0 0 0 0.1rem var(--accent) inset;
--inset-focus-inv: 0 0 0 0.15rem var(--background) inset;
--font-mono: 'Noto Sans Mono', 'Consolas', 'SF Mono', monospace;
--padding-1: 0.75rem;
--line-height: 1.65rem;
@@ -20,6 +22,7 @@
--accent-button: rgb(25, 25, 25);
--accent-button-elevated: rgb(42, 42, 42);
--glass: rgba(25, 25, 25, 0.85);
--glass-lite: rgba(25, 25, 25, 0.98);
--subbackground: rgb(10, 10, 10);
--background: rgb(0, 0, 0);
}
@@ -34,6 +37,7 @@
--accent-button: rgb(225, 225, 225);
--accent-button-elevated: rgb(210, 210, 210);
--glass: rgba(230, 230, 230, 0.85);
--glass-lite: rgba(230, 230, 230, 0.98);
--subbackground: rgb(240, 240, 240);
--background: rgb(255, 255, 255);
}
@@ -47,6 +51,7 @@
--accent-button: rgb(25, 25, 25);
--accent-button-elevated: rgb(42, 42, 42);
--glass: rgba(25, 25, 25, 0.85);
--glass-lite: rgba(25, 25, 25, 0.98);
--subbackground: rgb(10, 10, 10);
--background: rgb(0, 0, 0);
}
@@ -59,6 +64,7 @@
--accent-button: rgb(225, 225, 225);
--accent-button-elevated: rgb(210, 210, 210);
--glass: rgba(230, 230, 230, 0.85);
--glass-lite: rgba(230, 230, 230, 0.98);
--subbackground: rgb(240, 240, 240);
--background: rgb(255, 255, 255);
}
@@ -74,6 +80,12 @@ body {
overflow: hidden;
-ms-overflow-style: none;
scrollbar-width: none;
height: calc(100% + env(safe-area-inset-top)/2);
}
#home {
position: fixed;
width: 100%;
height: 100%;
}
a {
color: var(--accent);
@@ -150,12 +162,17 @@ input[type="text"],
[type="text"] {
border-radius: 0;
}
.glass-bkg {
background: var(--glass);
backdrop-filter: blur(7px);
-webkit-backdrop-filter: blur(7px);
}
.desktop button:hover,
.desktop .switch:hover,
.desktop .checkbox:hover,
.desktop .text-to-copy:hover,
.desktop .collapse-header:hover,
.desktop #close-button:hover {
.desktop #back-button:hover {
background: var(--accent-hover);
box-shadow: 0 0 0 0.1rem var(--accent-highlight) inset;
cursor: pointer;
@@ -243,7 +260,7 @@ button:active,
}
.box {
background: var(--background);
border: var(--border-15);
border: var(--glass) solid .2rem;
color: var(--accent);
}
#url-input-area {
@@ -284,13 +301,14 @@ button:active,
cursor: not-allowed;
}
#footer {
bottom: 0.8rem;
bottom: 0;
width: 100%;
position: absolute;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
justify-content: center;
padding-bottom: calc(env(safe-area-inset-bottom)/2 + 2rem);
font-size: 0.9rem;
text-align: center;
width: auto;
}
#cobalt-main-box #bottom,
#footer-buttons,
@@ -343,27 +361,58 @@ button:active,
visibility: hidden;
position: fixed;
height: auto;
width: 32%;
width: 36%;
z-index: 999;
padding: 2rem;
font-size: 0.9rem;
max-height: 85%;
max-height: 95%;
opacity: 0;
transform: translate(-50%,-48%)scale(.95);
}
.popup.visible {
visibility: visible;
opacity: 1;
transform: translate(-50%, -50%);
transition: transform 0.1s ease-in-out, opacity 0.1s ease-in-out;
}
#popup-backdrop {
visibility: hidden;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 998;
opacity: 0;
background-color: var(--background);
}
#popup-backdrop.visible {
visibility: visible;
opacity: 0.5;
transition: opacity 0.1s ease-in-out;
}
.popup.small {
width: 20%;
background: var(--glass);
backdrop-filter: blur(7px);
-webkit-backdrop-filter: blur(7px);
box-shadow: 0px 0px 80px 0px var(--accent-hover);
padding: 1.7rem;
border: var(--accent-highlight) solid 0.15rem;
padding: 1.7rem;
transform: translate(-50%,-50%)scale(.95);
pointer-events: all;
}
.popup.small.visible {
transform: translate(-50%, -50%);
}
.popup.small #popup-header-contents,
.popup.small .popup-content-inner,
.popup.small #popup-header {
padding: 0;
}
.popup.small #popup-header {
position: relative;
border: none;
}
.popup.small #popup-title {
margin-bottom: .2rem;
}
.popup.small #popup-header {
padding-top: 0;
}
.popup.small .explanation {
margin-bottom: 0.8rem;
}
@@ -371,31 +420,22 @@ button:active,
background: var(--accent);
color: var(--background);
}
#popup-backdrop {
opacity: 0.5;
background-color: var(--background);
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 998;
}
.popup.scrollable {
height: 85%;
height: 95%;
}
.scrollable .bottom-link {
padding-bottom: 2rem;
}
.changelog-subtitle {
font-size: 1.1rem;
font-size: 1.3rem;
padding-bottom: var(--gap-no-icon);
}
.changelog-banner {
position: relative;
width: 100%;
max-height: 300px;
min-height: 160px;
margin-bottom: 1.65rem;
margin-bottom: 1rem;
float: left;
}
.changelog-img {
@@ -404,6 +444,20 @@ button:active,
height: inherit;
max-height: inherit;
}
.changelog-tags {
display: inline-flex;
align-items: center;
gap: 0.7rem;
padding-bottom: 0.7rem;
}
.changelog-tag-version {
font-size: 1rem;
padding: 0.15rem 0.45rem;
}
.changelog-tag-date {
color: var(--accent-subtext);
font-size: .8rem;
}
.nowrap {
white-space: nowrap;
}
@@ -429,25 +483,10 @@ button:active,
}
#popup-title {
font-size: 1.5rem;
margin-bottom: 0.5rem;
line-height: 1.85em;
display: flex;
align-items: center;
}
#popup-footer {
bottom: 0;
position: fixed;
margin-bottom: 1.5rem;
background: var(--background);
width: var(--without-padding);
}
.popup-footer-content {
font-size: 0.8rem;
line-height: var(--line-height);
color: var(--accent-subtext);
border-top: 0.05rem solid var(--accent-subtext);
padding-top: 0.4rem;
}
#popup-above-title {
color: var(--accent-subtext);
font-size: 0.8rem;
@@ -455,19 +494,27 @@ button:active,
#popup-content {
overflow-x: hidden;
overflow-y: auto;
height: var(--without-padding);
height: 100%;
scrollbar-width: none;
}
.popup-content-inner,
.tab-content-settings {
padding-top: calc(env(safe-area-inset-top)/2 + 4.9rem);
padding-bottom: calc(env(safe-area-inset-bottom)/2 + 4.8rem);
}
.tab-content-settings,
#tab-about-about .popup-content-inner {
padding-top: calc(env(safe-area-inset-top)/2 + 6.2rem);;
}
.bullpadding {
padding-left: 0.58rem;
}
#popup-header {
position: relative;
position: absolute;
z-index: 999;
padding-top: 0.8rem;
}
#popup-content.with-footer {
margin-bottom: 3rem;
padding-top: calc(env(safe-area-inset-top)/2 + 1.7rem);
width: 100%;
border-bottom: var(--accent-highlight) solid 0.1rem;
}
.settings-category {
padding-bottom: 1rem;
@@ -538,15 +585,24 @@ button:active,
.switch.space-right {
margin-right: var(--padding-1);
}
.switch[data-enabled="true"] {
.switch:focus {
box-shadow: var(--inset-focus) inset;
}
#popup-tabs .switch {
background: unset;
}
.switch[data-enabled="true"],
#popup-tabs .switch[data-enabled="true"] {
color: var(--background);
background: var(--accent);
cursor: default;
z-index: 999
}
.switch[data-enabled="true"]:hover {
background: var(--accent);
}
.switch[data-enabled="true"]:focus {
box-shadow: var(--inset-focus-inv) inset;
}
.switches {
display: flex;
width: auto;
@@ -575,18 +631,14 @@ button:active,
padding: var(--padding-1);
overflow: auto;
}
#close-button {
max-width: 2.6rem;
margin-left: var(--padding-1);
border: var(--border-15);
color: var(--accent);
padding: 0.3rem 0.75rem 0.5rem;
#back-button {
padding: 0;
background: none;
max-width: 4rem;
font-size: 1rem;
}
#close-button.up {
float: right;
position: absolute;
right: 0;
height: 2.6rem;
#back-button svg path {
fill: var(--accent);
}
.popup-tab-content {
display: none;
@@ -594,23 +646,32 @@ button:active,
#popup-tabs {
z-index: 999;
bottom: 0;
position: relative;
position: absolute;
width: 100%;
padding-top: 0.2rem;
padding-bottom: 1.7rem;
border-top: var(--accent-highlight) solid 0.1rem;
}
.popup-tabs {
margin-top: 0.9rem;
.popup-tabs-child {
width: 100%;
padding: 0 0.2rem;
}
.emoji {
.emoji, svg {
margin-right: 0.4rem;
user-select: none;
-webkit-user-select: none;
pointer-events: none;
}
.emoji {
margin-right: 0.4rem;
}
.picker-image {
object-fit: cover;
width: inherit;
height: inherit;
cursor: pointer;
user-select: all;
-webkit-user-select: all;
}
.picker-image-container {
width: 8rem;
@@ -631,6 +692,8 @@ button:active,
justify-content: space-between;
flex-wrap: wrap;
align-content: space-around;
padding-top: calc(env(safe-area-inset-top)/2 + 7.6rem);
padding-bottom: calc(env(safe-area-inset-bottom)/2 + 4.8rem);
}
#picker-holder.various {
justify-content: left;
@@ -642,7 +705,7 @@ button:active,
height: 100%;
width: 100%;
position: absolute;
z-index: 9999;
z-index: 99;
}
.picker-element-name {
position: absolute;
@@ -706,41 +769,67 @@ button:active,
#about-donate-footer {
box-shadow: 0 0 0 0.1rem var(--accent) inset;
}
.popup-tabs-child {
width: 100%;
.popup-content-inner,
.tab-content-settings,
#popup-header-contents {
padding-left: 1rem;
padding-right: 1rem;
}
.urgent-notice {
top: 1.7rem;
width: auto;
text-align: left;
width: 100%;
text-align: center;
position: absolute;
cursor: pointer;
display: flex;
justify-content: center;
align-items: center;
padding-top: calc(env(safe-area-inset-top) + 1rem);
}
.no-transparency .glass-bkg {
background: var(--glass-lite);
backdrop-filter: none;
-webkit-backdrop-filter: none;
}
.no-animation .popup,
.no-animation #popup-backdrop {
transition: none;
}
#floating-notification-area {
visibility: visible;
z-index: 999999;
position: absolute;
display: flex;
justify-content: center;
width: 100%;
padding-top: 2rem;
}
.floating-notification {
text-align: center;
padding: 0.6rem 1.2rem;
background: var(--accent-hover-elevated);
display: flex;
box-shadow: 0 0 20px 10px var(--accent-hover);
font-size: 0.85rem;
}
.popup-from-bottom {
position: fixed;
width: 100%;
height: 100%;
bottom: 0;
z-index: 999;
visibility: hidden;
pointer-events: none;
}
.popup-from-bottom.visible {
visibility: visible;
}
/* adapt the page according to screen size */
@media screen and (min-width: 2300px) {
html {
zoom: 130%;
}
}
@media screen and (min-width: 3840px) {
html {
zoom: 180%;
}
}
@media screen and (min-width: 5000px) {
html {
zoom: 300%;
}
}
@media screen and (max-width: 1550px) {
.popup.small {
width: 25%
}
.popup {
width: 35%;
width: 40%;
}
}
@media screen and (max-width: 1440px) {
@@ -751,12 +840,12 @@ button:active,
width: 30%
}
.popup {
width: 40%;
width: 45%;
}
}
@media screen and (max-width: 1300px) {
.popup {
width: 46%;
width: 50%;
}
}
@media screen and (max-width: 1200px) {
@@ -767,7 +856,7 @@ button:active,
width: 35%
}
.popup {
width: 50%;
width: 55%;
}
}
@media screen and (max-width: 1025px) {
@@ -781,23 +870,12 @@ button:active,
width: 60%;
}
}
@media screen and (max-height: 605px) {
@media screen and (max-width: 850px) {
.popup {
height: 80%
}
.popup.small {
height: auto;
}
.bottom-link {
padding-bottom: 2rem;
width: 75%;
}
}
/* mobile page */
@media screen and (max-width: 720px) {
#cobalt-main-box, #footer {
width: 90%;
}
}
@media screen and (max-width: 499px) {
.tab {
font-size: 0!important;
@@ -805,9 +883,6 @@ button:active,
.tab .emoji {
margin-right: 0;
}
#cobalt-main-box, #footer {
width: 90%;
}
.checkbox {
width: calc(100% - 1.3rem);
}
@@ -894,6 +969,9 @@ button:active,
}
}
@media screen and (max-width: 720px) {
#cobalt-main-box {
width: calc(100% - (0.7rem * 2));
}
#cobalt-main-box #bottom {
flex-direction: column-reverse;
}
@@ -901,12 +979,13 @@ button:active,
width: 100%;
}
#footer {
bottom: 4.9%;
transform: translate(-50%, 0%);
padding-bottom: calc(env(safe-area-inset-bottom)/2 + 1.5rem);
}
#footer-buttons {
flex-direction: column;
align-items: stretch;
width: 100%;
padding: 0 0.7rem;
}
.footer-pair .footer-button {
width: 100%!important;
@@ -924,7 +1003,7 @@ button:active,
gap: var(--gap);
}
.urgent-notice {
width: 100%;
padding-top: calc(env(safe-area-inset-bottom)/2 + 1rem);
}
.popup.small {
width: calc(100% - 1.7rem * 2);
@@ -936,7 +1015,12 @@ button:active,
position: absolute;
border: none;
border-top: var(--accent-highlight) solid 0.15rem;
padding-bottom: calc(env(safe-area-inset-bottom)/2 + 1.7rem)
padding-bottom: calc(env(safe-area-inset-bottom)/2 + 1.7rem);
transform: none;
}
.popup.small.visible {
transform: none;
transition: opacity 0.1s ease-in-out;
}
.popup.small #popup-header {
background: none;
@@ -949,7 +1033,6 @@ button:active,
}
#picker-holder.various {
flex-wrap: wrap;
align-content: left;
gap: 0;
overflow-x: hidden;
overflow-y: scroll;
@@ -966,15 +1049,27 @@ button:active,
}
.popup, .popup.scrollable {
border: none;
width: 90%;
height: 95%;
width: 100%;
height: 100%;
max-height: 100%;
}
.popup.center {
top: unset;
left: unset;
transform: unset;
}
#popup-tabs {
padding-bottom: calc(env(safe-area-inset-bottom)/2 + 1.5rem);
}
.bottom-link {
padding-bottom: 2rem;
}
.popup-tabs {
margin-top: .3rem;
.popup-content-inner,
.tab-content-settings,
.popup-tabs-child,
#popup-header-contents {
padding-left: 0.7rem;
padding-right: 0.7rem;
}
}
@media screen and (max-width: 400px) {