2023-11-09 03:48:17 +01:00
|
|
|
/* All styles in this sheet are not needed on page load and deferred */
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
/* Text Input */
|
|
|
|
.textarea {
|
|
|
|
box-sizing: border-box;
|
|
|
|
border: none;
|
|
|
|
outline: none;
|
|
|
|
padding: 16px 24px;
|
|
|
|
border-radius: 12px;
|
2023-11-24 16:25:30 +01:00
|
|
|
font-size: 16px;
|
2023-11-23 19:16:29 +01:00
|
|
|
font-family: inherit;
|
|
|
|
display: block;
|
|
|
|
overflow: auto;
|
|
|
|
resize: none;
|
|
|
|
line-height: 16px;
|
2023-11-29 17:42:19 +01:00
|
|
|
max-height: 350px;
|
2023-11-23 19:16:29 +01:00
|
|
|
word-break: break-word;
|
|
|
|
word-wrap: anywhere;
|
2024-01-03 16:54:01 +01:00
|
|
|
white-space: pre-wrap;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
2023-11-24 16:25:30 +01:00
|
|
|
.textarea:before {
|
|
|
|
opacity: 0.5;
|
|
|
|
}
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
/* Peers */
|
|
|
|
|
2023-11-09 03:48:17 +01:00
|
|
|
x-peers:has(> x-peer) {
|
|
|
|
--peers-per-row: 10;
|
|
|
|
}
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
@media screen and (min-height: 505px) and (max-height: 649px) and (max-width: 426px),
|
|
|
|
screen and (min-height: 486px) and (max-height: 631px) and (min-width: 426px) {
|
2023-11-09 03:48:17 +01:00
|
|
|
x-peers:has(> x-peer) {
|
|
|
|
--peers-per-row: 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(7)) {
|
|
|
|
--peers-per-row: 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(10)) {
|
|
|
|
--peers-per-row: 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(13)) {
|
|
|
|
--peers-per-row: 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(16)) {
|
|
|
|
--peers-per-row: 7;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(19)) {
|
|
|
|
--peers-per-row: 8;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(22)) {
|
|
|
|
--peers-per-row: 9;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(25)) {
|
|
|
|
--peers-per-row: 10;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
@media screen and (min-height: 649px) and (max-width: 425px),
|
|
|
|
screen and (min-height: 631px) and (min-width: 426px) {
|
2023-11-09 03:48:17 +01:00
|
|
|
x-peers:has(> x-peer) {
|
|
|
|
--peers-per-row: 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(10)) {
|
|
|
|
--peers-per-row: 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(13)) {
|
|
|
|
--peers-per-row: 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(16)) {
|
|
|
|
--peers-per-row: 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(19)) {
|
|
|
|
--peers-per-row: 7;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(22)) {
|
|
|
|
--peers-per-row: 8;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(25)) {
|
|
|
|
--peers-per-row: 9;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peers:has(> x-peer:nth-of-type(28)) {
|
|
|
|
--peers-per-row: 10;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/* Peer */
|
|
|
|
|
|
|
|
x-peer {
|
|
|
|
padding: 8px;
|
|
|
|
align-content: start;
|
|
|
|
flex-wrap: wrap;
|
2024-02-05 02:12:44 +01:00
|
|
|
transition: transform 150ms;
|
|
|
|
will-change: transform;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
x-peer input[type="file"] {
|
|
|
|
visibility: hidden;
|
|
|
|
position: absolute;
|
|
|
|
}
|
|
|
|
|
2023-11-09 03:48:17 +01:00
|
|
|
x-peer label {
|
|
|
|
width: var(--peer-width);
|
|
|
|
touch-action: manipulation;
|
|
|
|
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
|
|
|
position: relative;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer x-icon {
|
|
|
|
--icon-size: 40px;
|
|
|
|
margin-bottom: 4px;
|
|
|
|
display: flex;
|
|
|
|
flex-direction: column;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer .icon-wrapper {
|
|
|
|
width: var(--icon-size);
|
|
|
|
padding: 12px;
|
|
|
|
border-radius: 50%;
|
2023-11-23 19:16:29 +01:00
|
|
|
background: var(--accent-color);
|
|
|
|
background-image: linear-gradient(45deg, var(--accent-color) 40%, color-mix(in srgb, var(--accent-color) 70%, white) 100%);
|
2023-11-09 03:48:17 +01:00
|
|
|
color: white;
|
|
|
|
display: flex;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer.type-secret .icon-wrapper {
|
2023-11-23 19:16:29 +01:00
|
|
|
--accent-color: var(--paired-device-color);
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
x-peer:not(.type-ip):not(.type-secret).type-public-id .icon-wrapper {
|
2023-11-23 19:16:29 +01:00
|
|
|
--accent-color: var(--public-room-color);
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
.highlight-wrapper {
|
2023-11-09 03:48:17 +01:00
|
|
|
align-self: center;
|
|
|
|
align-items: center;
|
2024-02-05 02:12:44 +01:00
|
|
|
margin: 10px auto 0;
|
2023-11-09 03:48:17 +01:00
|
|
|
height: 6px;
|
|
|
|
}
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
.highlight {
|
2023-11-09 03:48:17 +01:00
|
|
|
width: 15px;
|
|
|
|
height: 6px;
|
|
|
|
border-radius: 4px;
|
|
|
|
margin-left: 1px;
|
|
|
|
margin-right: 1px;
|
2023-11-23 19:16:29 +01:00
|
|
|
--highlight-color: var(--badge-color);
|
|
|
|
background-color: var(--highlight-color);
|
|
|
|
background-image: linear-gradient(180deg, var(--highlight-color) 0%, color-mix(in srgb, var(--highlight-color) 90%, black));
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
.highlight-room-ip {
|
|
|
|
--highlight-color: var(--primary-color);
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
.highlight-room-secret {
|
|
|
|
--highlight-color: var(--paired-device-color);
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
.highlight-room-public-id {
|
|
|
|
--highlight-color: var(--public-room-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer:not(.type-ip) .highlight-room-ip {
|
|
|
|
display: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer:not(.type-secret) .highlight-room-secret {
|
|
|
|
display: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer:not(.type-public-id) .highlight-room-public-id {
|
|
|
|
display: none;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
2024-02-06 04:38:37 +01:00
|
|
|
x-peer:not([status].blink):hover,
|
|
|
|
x-peer:not([status].blink):focus {
|
2023-11-09 03:48:17 +01:00
|
|
|
transform: scale(1.05);
|
|
|
|
}
|
|
|
|
|
2024-02-06 04:38:37 +01:00
|
|
|
x-peer[status].blink x-icon {
|
2023-11-09 03:48:17 +01:00
|
|
|
box-shadow: none;
|
2024-02-05 02:12:44 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
x-peer[status] {
|
2023-11-09 03:48:17 +01:00
|
|
|
transform: scale(1);
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer.ws-peer {
|
|
|
|
margin-top: -1.5px;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer.ws-peer .progress {
|
|
|
|
margin-top: 3px;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer.ws-peer .icon-wrapper{
|
|
|
|
border: solid 3px var(--ws-peer-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer.ws-peer .highlight-wrapper {
|
|
|
|
margin-top: 3px;
|
|
|
|
}
|
|
|
|
|
|
|
|
#websocket-fallback {
|
|
|
|
opacity: 0.5;
|
|
|
|
}
|
|
|
|
|
|
|
|
#websocket-fallback > span:nth-of-type(2) {
|
|
|
|
border-bottom: solid 2px var(--ws-peer-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
.device-descriptor {
|
|
|
|
width: 100%;
|
|
|
|
text-align: center;
|
|
|
|
}
|
|
|
|
|
|
|
|
.device-descriptor > div {
|
|
|
|
width: 100%;
|
|
|
|
white-space: nowrap;
|
|
|
|
overflow: hidden;
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
text-align: center;
|
|
|
|
}
|
|
|
|
|
|
|
|
.status,
|
|
|
|
.device-name {
|
2024-02-05 02:12:44 +01:00
|
|
|
color: color-mix(in srgb, rgb(var(--text-color)) 30%, grey);
|
2023-11-09 03:48:17 +01:00
|
|
|
white-space: nowrap;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer:not([status]) .status,
|
|
|
|
x-peer[status] .device-name {
|
|
|
|
display: none;
|
|
|
|
}
|
|
|
|
|
2024-02-06 04:38:37 +01:00
|
|
|
x-peer[status].blink {
|
2023-11-09 03:48:17 +01:00
|
|
|
pointer-events: none;
|
|
|
|
}
|
|
|
|
|
2024-02-05 02:12:44 +01:00
|
|
|
x-peer {
|
2023-11-09 03:48:17 +01:00
|
|
|
animation: pop 600ms ease-out 1;
|
|
|
|
}
|
|
|
|
|
2024-02-06 04:38:37 +01:00
|
|
|
x-peer[status]:not(.blink) .status {
|
|
|
|
color: var(--primary-color);
|
|
|
|
}
|
|
|
|
|
2023-11-09 03:48:17 +01:00
|
|
|
@keyframes pop {
|
|
|
|
0% {
|
|
|
|
transform: scale(0.7);
|
|
|
|
}
|
|
|
|
|
|
|
|
40% {
|
|
|
|
transform: scale(1.2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
x-peer[drop] x-icon {
|
|
|
|
transform: scale(1.1);
|
|
|
|
}
|
|
|
|
|
2023-11-29 23:39:55 +01:00
|
|
|
/* Checkboxes as slider */
|
|
|
|
|
|
|
|
.switch {
|
|
|
|
display: inline-block;
|
|
|
|
height: 20px;
|
|
|
|
position: relative;
|
|
|
|
width: 30px;
|
|
|
|
}
|
|
|
|
|
|
|
|
.switch input {
|
|
|
|
display:none;
|
|
|
|
}
|
|
|
|
|
|
|
|
.slider {
|
|
|
|
background-color: rgba(128, 128, 128, 0.5);
|
|
|
|
cursor: pointer;
|
|
|
|
top: 0;
|
|
|
|
bottom: 0;
|
|
|
|
right: 0;
|
|
|
|
left: 0;
|
|
|
|
position: absolute;
|
|
|
|
transition: .4s;
|
|
|
|
}
|
|
|
|
|
|
|
|
.slider:before {
|
|
|
|
background-color: #fff;
|
|
|
|
content: "";
|
|
|
|
position: absolute;
|
|
|
|
top: 2px;
|
|
|
|
left: 2px;
|
|
|
|
width: 16px;
|
|
|
|
height: 16px;
|
|
|
|
transition: .4s;
|
|
|
|
}
|
|
|
|
|
|
|
|
input:checked + .slider {
|
|
|
|
background-color: var(--primary-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
input:checked + .slider:before {
|
|
|
|
transform: translateX(10px);
|
|
|
|
}
|
|
|
|
|
|
|
|
.slider.round {
|
|
|
|
border-radius: 20px;
|
|
|
|
}
|
|
|
|
|
|
|
|
.slider.round:before {
|
|
|
|
border-radius: 50%;
|
|
|
|
}
|
2023-11-09 03:48:17 +01:00
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
/* Dialog */
|
2023-11-09 03:48:17 +01:00
|
|
|
|
|
|
|
x-dialog x-background {
|
2023-11-23 19:16:29 +01:00
|
|
|
background: rgba(0, 0, 0, 0.8);
|
|
|
|
z-index: 30;
|
2023-11-09 03:48:17 +01:00
|
|
|
transition: opacity 300ms;
|
|
|
|
will-change: opacity;
|
2023-11-29 17:42:19 +01:00
|
|
|
padding: 10px 5px 20px;
|
|
|
|
overflow: scroll
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
x-dialog x-paper {
|
2023-11-29 17:42:19 +01:00
|
|
|
position: relative;
|
2023-11-09 03:48:17 +01:00
|
|
|
display: flex;
|
2023-11-29 17:42:19 +01:00
|
|
|
margin: auto;
|
2023-11-09 03:48:17 +01:00
|
|
|
flex-direction: column;
|
2024-01-03 16:54:43 +01:00
|
|
|
width: 100%;
|
2023-12-11 21:44:13 +01:00
|
|
|
max-width: 450px;
|
2023-11-09 03:48:17 +01:00
|
|
|
z-index: 3;
|
2023-11-23 19:16:29 +01:00
|
|
|
border-radius: 30px;
|
2023-11-09 03:48:17 +01:00
|
|
|
overflow: hidden;
|
|
|
|
box-sizing: border-box;
|
|
|
|
transition: transform 300ms;
|
|
|
|
will-change: transform;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-paper > .row:first-of-type {
|
|
|
|
background-color: var(--accent-color);
|
2023-11-23 19:16:29 +01:00
|
|
|
margin-bottom: 5px;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
2023-11-29 17:42:19 +01:00
|
|
|
x-paper .dialog-title {
|
2023-11-09 03:48:17 +01:00
|
|
|
color: white;
|
|
|
|
}
|
|
|
|
|
|
|
|
#pair-device-dialog,
|
|
|
|
#edit-paired-devices-dialog {
|
|
|
|
--accent-color: var(--paired-device-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
#public-room-dialog {
|
|
|
|
--accent-color: var(--public-room-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
#pair-device-dialog ::-moz-selection,
|
|
|
|
#pair-device-dialog ::selection {
|
|
|
|
color: black;
|
|
|
|
background: var(--paired-device-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
#public-room-dialog ::-moz-selection,
|
|
|
|
#public-room-dialog ::selection {
|
|
|
|
color: black;
|
|
|
|
background: var(--public-room-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
x-dialog:not([show]) {
|
|
|
|
pointer-events: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-dialog:not([show]) x-paper {
|
|
|
|
transform: scale(0.1);
|
|
|
|
}
|
|
|
|
|
|
|
|
/* Pair Devices Dialog & Public Room Dialog */
|
|
|
|
|
|
|
|
.input-key-container {
|
|
|
|
width: 100%;
|
|
|
|
display: flex;
|
|
|
|
justify-content: center;
|
|
|
|
}
|
|
|
|
|
|
|
|
.input-key-container > input {
|
|
|
|
width: 45px;
|
|
|
|
height: 45px;
|
|
|
|
font-size: 30px;
|
|
|
|
padding: 0;
|
|
|
|
text-align: center;
|
|
|
|
text-transform: uppercase;
|
|
|
|
display: -webkit-box !important;
|
|
|
|
display: -webkit-flex !important;
|
|
|
|
display: -moz-flex !important;
|
|
|
|
display: -ms-flexbox !important;
|
|
|
|
display: flex !important;
|
|
|
|
-webkit-justify-content: center;
|
|
|
|
-ms-justify-content: center;
|
|
|
|
justify-content: center;
|
|
|
|
}
|
|
|
|
|
|
|
|
.input-key-container > input {
|
|
|
|
margin: 0 3px;
|
|
|
|
}
|
|
|
|
|
|
|
|
.input-key-container.six-chars > input:nth-of-type(4) {
|
|
|
|
margin-left: 5%;
|
|
|
|
}
|
|
|
|
|
|
|
|
.key {
|
|
|
|
-webkit-user-select: text;
|
|
|
|
-moz-user-select: text;
|
|
|
|
user-select: text;
|
|
|
|
display: inline-block;
|
2023-11-23 19:16:29 +01:00
|
|
|
font-size: 45px;
|
2023-11-29 17:42:19 +01:00
|
|
|
letter-spacing: 18px;
|
|
|
|
text-indent: 15px;
|
2023-11-23 19:16:29 +01:00
|
|
|
margin: 10px 0;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
.key-qr-code {
|
|
|
|
width: fit-content;
|
|
|
|
align-self: center;
|
2023-11-29 17:42:19 +01:00
|
|
|
margin-top: 5px;
|
2023-11-23 19:16:29 +01:00
|
|
|
margin-bottom: 10px;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
.key-instructions {
|
|
|
|
flex-direction: column;
|
2023-11-23 19:16:29 +01:00
|
|
|
margin: 0;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
x-dialog h2 {
|
|
|
|
margin-top: 5px;
|
|
|
|
margin-bottom: 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
x-dialog hr {
|
2023-11-23 19:16:29 +01:00
|
|
|
height: 1px;
|
2023-11-09 03:48:17 +01:00
|
|
|
border: none;
|
|
|
|
width: 100%;
|
|
|
|
background-color: var(--border-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
.hr-note {
|
2023-11-29 17:42:19 +01:00
|
|
|
margin-top: 13px;
|
|
|
|
margin-bottom: 21px;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
.hr-note hr {
|
2023-11-23 19:16:29 +01:00
|
|
|
margin-bottom: -1px;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
.hr-note > div {
|
|
|
|
height: 0;
|
|
|
|
transform: translateY(-10px);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.hr-note > div > span {
|
|
|
|
padding: 3px 10px;
|
2023-11-23 19:16:29 +01:00
|
|
|
border-radius: 20px;
|
2023-11-09 03:48:17 +01:00
|
|
|
color: rgb(var(--text-color));
|
2023-11-23 19:16:29 +01:00
|
|
|
background-color: var(--dialog-bg-color);
|
2023-11-09 03:48:17 +01:00
|
|
|
border: var(--border-color) solid 3px;
|
|
|
|
text-transform: uppercase;
|
|
|
|
}
|
|
|
|
|
|
|
|
/* Edit Paired Devices Dialog */
|
|
|
|
.paired-devices-wrapper:empty:before {
|
|
|
|
content: attr(data-empty);
|
|
|
|
}
|
|
|
|
|
|
|
|
.paired-devices-wrapper:empty {
|
|
|
|
padding: 10px;
|
|
|
|
}
|
|
|
|
|
|
|
|
.paired-devices-wrapper {
|
2023-11-23 19:16:29 +01:00
|
|
|
margin-top: -5px;
|
2023-11-09 03:48:17 +01:00
|
|
|
border-bottom: solid 4px var(--paired-device-color);
|
|
|
|
max-height: 65vh;
|
|
|
|
overflow: scroll;
|
|
|
|
}
|
|
|
|
|
|
|
|
.paired-device {
|
|
|
|
display: flex;
|
|
|
|
justify-content: space-between;
|
|
|
|
flex-direction: column;
|
|
|
|
align-items: center;
|
|
|
|
}
|
|
|
|
|
2023-12-09 17:37:00 +01:00
|
|
|
.paired-device:empty {
|
|
|
|
padding: 47px;
|
|
|
|
}
|
|
|
|
|
2023-11-09 03:48:17 +01:00
|
|
|
.paired-device:not(:last-child) {
|
|
|
|
border-bottom: solid 4px var(--paired-device-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
.paired-device > .display-name,
|
|
|
|
.paired-device > .device-name {
|
|
|
|
width: 100%;
|
|
|
|
height: 36px;
|
|
|
|
display: flex;
|
|
|
|
align-items: center;
|
|
|
|
text-align: center;
|
|
|
|
align-self: center;
|
|
|
|
border-bottom: solid 2px rgba(128, 128, 128, 0.5);
|
|
|
|
opacity: 1;
|
|
|
|
}
|
|
|
|
|
2023-11-29 23:39:55 +01:00
|
|
|
.paired-device > .button-wrapper > * {
|
2023-12-09 17:37:00 +01:00
|
|
|
min-height: 38px;
|
|
|
|
padding-left: 5px;
|
|
|
|
padding-right: 5px;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
.paired-device > .button-wrapper > :not(:last-child) {
|
|
|
|
border-right: solid 1px rgba(128, 128, 128, 0.5);
|
|
|
|
}
|
|
|
|
|
|
|
|
.paired-device > .button-wrapper > :not(:first-child) {
|
|
|
|
border-left: solid 1px rgba(128, 128, 128, 0.5);
|
|
|
|
}
|
|
|
|
|
|
|
|
.paired-device * {
|
|
|
|
overflow: hidden;
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
}
|
|
|
|
|
|
|
|
/* button row*/
|
2023-12-09 17:37:44 +01:00
|
|
|
.btn-row .btn {
|
|
|
|
margin: 3px;
|
|
|
|
flex-grow: 1;
|
|
|
|
height: 50px;
|
|
|
|
width: 120px; /* fixed width needed to ensure same width for all buttons */
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
2023-11-24 16:25:30 +01:00
|
|
|
x-paper > .btn-row {
|
|
|
|
margin: 5px 10px 10px;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
2023-12-11 21:44:13 +01:00
|
|
|
.language-buttons > .btn {
|
|
|
|
border-top: solid var(--lang-hr-color) 2px;
|
|
|
|
padding: 7px;
|
|
|
|
font-size: 12px;
|
|
|
|
}
|
|
|
|
|
|
|
|
.language-buttons > .btn:last-of-type {
|
|
|
|
border-bottom: solid var(--lang-hr-color) 2px;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
2023-12-11 21:44:13 +01:00
|
|
|
/* Ensure click event target is always button and never span */
|
|
|
|
.language-buttons span {
|
|
|
|
z-index: -1;
|
|
|
|
}
|
|
|
|
|
|
|
|
.language-buttons > .current:after {
|
|
|
|
position: absolute;
|
|
|
|
right: 20px;
|
|
|
|
content: "✓";
|
|
|
|
color: var(--primary-color);
|
|
|
|
font-size: 20px;
|
2023-11-23 19:16:29 +01:00
|
|
|
}
|
|
|
|
|
2023-11-09 03:48:17 +01:00
|
|
|
.file-description {
|
|
|
|
max-width: 100%;
|
|
|
|
}
|
|
|
|
|
|
|
|
.file-description span {
|
|
|
|
display: inline;
|
|
|
|
word-break: normal;
|
|
|
|
}
|
|
|
|
|
|
|
|
.file-name {
|
|
|
|
font-style: italic;
|
|
|
|
max-width: 100%;
|
|
|
|
margin-top: 5px;
|
|
|
|
}
|
|
|
|
|
|
|
|
.file-stem {
|
|
|
|
overflow: hidden;
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
white-space: nowrap;
|
|
|
|
padding-right: 1px;
|
|
|
|
}
|
|
|
|
|
|
|
|
/* Send Text Dialog */
|
|
|
|
x-dialog .dialog-subheader {
|
|
|
|
padding-top: 16px;
|
|
|
|
padding-bottom: 16px;
|
|
|
|
}
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
.display-name-wrapper {
|
2023-11-09 03:48:17 +01:00
|
|
|
padding-bottom: 0;
|
|
|
|
}
|
|
|
|
|
2023-11-23 19:16:29 +01:00
|
|
|
#send-text-dialog,
|
|
|
|
#receive-text-dialog {
|
2023-11-24 16:25:30 +01:00
|
|
|
font-size: 16px; /* prevents auto-zoom on edit */
|
|
|
|
}
|
|
|
|
|
|
|
|
.textarea.overflowing {
|
2023-11-23 19:16:29 +01:00
|
|
|
--shadow-color-rgb: var(--shadow-color-secondary-rgb);
|
|
|
|
--shadow-color-cover-rgb: var(--shadow-color-secondary-cover-rgb);
|
|
|
|
}
|
|
|
|
|
|
|
|
#edit-paired-devices-dialog {
|
|
|
|
--shadow-color-rgb: var(--shadow-color-dialog-rgb);
|
|
|
|
--shadow-color-cover-rgb: var(--shadow-color-dialog-cover-rgb);
|
|
|
|
}
|
|
|
|
|
2023-11-09 03:48:17 +01:00
|
|
|
/* Receive Text Dialog */
|
|
|
|
|
|
|
|
#receive-text-dialog #text {
|
|
|
|
word-break: break-all;
|
2023-11-23 19:16:29 +01:00
|
|
|
max-height: 400px;
|
|
|
|
padding: 10px;
|
2023-11-09 03:48:17 +01:00
|
|
|
overflow-x: hidden;
|
2023-11-23 19:16:29 +01:00
|
|
|
overflow-y: scroll;
|
2023-11-09 03:48:17 +01:00
|
|
|
-webkit-user-select: text;
|
|
|
|
-moz-user-select: text;
|
|
|
|
user-select: text;
|
|
|
|
}
|
|
|
|
|
|
|
|
#receive-text-dialog #text a:hover {
|
|
|
|
text-decoration: underline;
|
|
|
|
}
|
|
|
|
|
|
|
|
#receive-text-dialog h3 {
|
|
|
|
/* Select the received text when double-clicking the dialog */
|
|
|
|
user-select: none;
|
|
|
|
pointer-events: none;
|
|
|
|
}
|
|
|
|
|
2023-12-09 17:28:05 +01:00
|
|
|
/* Do not call it 'share-panel', 'share-pannel' or 'sharepanel' as iOS Safari does not show any element with these classnames... */
|
|
|
|
|
|
|
|
.shr-panel {
|
2023-12-09 17:37:44 +01:00
|
|
|
min-width: 250px;
|
2023-11-24 16:25:30 +01:00
|
|
|
max-width: calc(100vw - 20px);
|
|
|
|
overflow: hidden;
|
|
|
|
color: white;
|
2023-12-09 17:37:44 +01:00
|
|
|
background-color: var(--primary-color);
|
2023-11-24 16:25:30 +01:00
|
|
|
background-image: linear-gradient(225deg, var(--accent-color) 0%, color-mix(in srgb, var(--accent-color) 60%, black) 100%);
|
|
|
|
}
|
|
|
|
|
2023-12-09 17:28:05 +01:00
|
|
|
.shr-panel > div {
|
2023-11-24 16:25:30 +01:00
|
|
|
margin: 4px 2px;
|
|
|
|
}
|
|
|
|
|
2023-12-09 17:28:05 +01:00
|
|
|
.shr-panel > div:not(:first-child) {
|
2023-11-24 16:25:30 +01:00
|
|
|
margin-top: 2px;
|
|
|
|
}
|
|
|
|
|
2023-12-09 17:28:05 +01:00
|
|
|
.shr-panel .thumb > div {
|
2023-11-24 16:25:30 +01:00
|
|
|
width: 36px;
|
|
|
|
height: 36px;
|
|
|
|
background: white;
|
|
|
|
border-radius: 6px;
|
|
|
|
margin-right: 6px;
|
|
|
|
}
|
|
|
|
|
2023-12-12 14:07:15 +01:00
|
|
|
.shr-panel .thumb > .text-thumb > svg {
|
2023-11-24 16:25:30 +01:00
|
|
|
width: 18px;
|
|
|
|
height: 36px;
|
|
|
|
}
|
|
|
|
|
2023-12-12 14:07:15 +01:00
|
|
|
.shr-panel .thumb > .file-thumb > svg {
|
2023-11-24 16:25:30 +01:00
|
|
|
width: 36px;
|
|
|
|
height: 36px;
|
|
|
|
}
|
|
|
|
|
2023-12-12 14:07:15 +01:00
|
|
|
.shr-panel .thumb > .image-thumb {
|
2023-11-24 16:25:30 +01:00
|
|
|
background-size: cover;
|
|
|
|
background-position: center;
|
|
|
|
}
|
|
|
|
|
2023-12-09 17:28:05 +01:00
|
|
|
.shr-panel .btn {
|
2023-12-09 17:37:44 +01:00
|
|
|
height: 36px;
|
|
|
|
}
|
|
|
|
|
2023-11-24 16:25:30 +01:00
|
|
|
.share-descriptor {
|
|
|
|
justify-content: center;
|
|
|
|
}
|
|
|
|
|
|
|
|
.share-descriptor > span {
|
|
|
|
display: inline;
|
|
|
|
margin-bottom: 0;
|
|
|
|
margin-top: 0;
|
|
|
|
height: 20px;
|
|
|
|
max-width: 15rem;
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
overflow: hidden;
|
|
|
|
white-space: nowrap;
|
|
|
|
}
|
|
|
|
|
|
|
|
.share-descriptor > span:first-child {
|
|
|
|
font-weight: bold;
|
|
|
|
}
|
|
|
|
|
|
|
|
.share-descriptor > span:not(:first-child) {
|
|
|
|
font-size: small;
|
|
|
|
}
|
|
|
|
|
2023-11-09 03:48:17 +01:00
|
|
|
#base64-paste-btn,
|
|
|
|
#base64-paste-dialog .textarea {
|
|
|
|
width: 100%;
|
|
|
|
height: 40vh;
|
|
|
|
border: solid 12px #438cff;
|
2023-12-05 18:57:31 +01:00
|
|
|
margin: 6px;
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
#base64-paste-dialog .textarea {
|
|
|
|
display: flex;
|
|
|
|
align-items: center;
|
|
|
|
justify-content: center;
|
|
|
|
text-align: center;
|
|
|
|
}
|
|
|
|
|
|
|
|
#base64-paste-dialog .textarea::before {
|
2023-11-23 19:16:29 +01:00
|
|
|
font-size: 14px;
|
2023-11-09 03:48:17 +01:00
|
|
|
letter-spacing: 0.12em;
|
|
|
|
color: var(--primary-color);
|
|
|
|
font-weight: 700;
|
|
|
|
text-transform: uppercase;
|
|
|
|
white-space: pre-wrap;
|
|
|
|
}
|
|
|
|
|
|
|
|
/* Peer loading Indicator */
|
|
|
|
|
|
|
|
.progress {
|
|
|
|
width: 80px;
|
|
|
|
height: 80px;
|
|
|
|
position: absolute;
|
|
|
|
top: -8px;
|
|
|
|
clip: rect(0px, 80px, 80px, 40px);
|
|
|
|
--progress: rotate(0deg);
|
|
|
|
}
|
|
|
|
|
|
|
|
.circle {
|
|
|
|
width: 72px;
|
|
|
|
height: 72px;
|
|
|
|
border: 4px solid var(--primary-color);
|
|
|
|
border-radius: 40px;
|
|
|
|
position: absolute;
|
|
|
|
clip: rect(0px, 40px, 80px, 0px);
|
|
|
|
will-change: transform;
|
|
|
|
transform: var(--progress);
|
|
|
|
}
|
|
|
|
|
2024-02-06 04:38:37 +01:00
|
|
|
.animate .circle {
|
|
|
|
transition: transform 200ms;
|
|
|
|
}
|
|
|
|
|
2023-11-09 03:48:17 +01:00
|
|
|
.over50 {
|
|
|
|
clip: rect(auto, auto, auto, auto);
|
|
|
|
}
|
|
|
|
|
|
|
|
.over50 .circle.right {
|
|
|
|
transform: rotate(180deg);
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
Color Themes
|
|
|
|
*/
|
|
|
|
|
|
|
|
/* Colored Elements */
|
|
|
|
|
|
|
|
x-dialog x-paper {
|
2023-11-23 19:16:29 +01:00
|
|
|
background-color: var(--dialog-bg-color);
|
2023-11-09 03:48:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
.textarea {
|
|
|
|
color: rgb(var(--text-color)) !important;
|
|
|
|
background-color: var(--bg-color-secondary) !important;
|
|
|
|
}
|
|
|
|
|
2024-01-03 17:11:38 +01:00
|
|
|
.textarea *:not(a) {
|
2023-11-09 03:48:17 +01:00
|
|
|
margin: 0 !important;
|
|
|
|
padding: 0 !important;
|
|
|
|
color: unset !important;
|
|
|
|
background: unset !important;
|
|
|
|
border: unset !important;
|
|
|
|
opacity: unset !important;
|
|
|
|
font-family: inherit !important;
|
|
|
|
font-size: inherit !important;
|
|
|
|
font-style: unset !important;
|
|
|
|
font-weight: unset !important;
|
|
|
|
}
|
|
|
|
|
2024-01-03 17:11:38 +01:00
|
|
|
x-dialog a {
|
|
|
|
color: var(--primary-color);
|
|
|
|
}
|
|
|
|
|
2023-11-09 03:48:17 +01:00
|
|
|
/* Image/Video/Audio Preview */
|
|
|
|
.file-preview {
|
|
|
|
margin-bottom: 15px;
|
|
|
|
}
|
|
|
|
|
|
|
|
.file-preview:empty {
|
|
|
|
display: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
.file-preview > img,
|
|
|
|
.file-preview > audio,
|
|
|
|
.file-preview > video {
|
|
|
|
max-width: 100%;
|
|
|
|
max-height: 40vh;
|
|
|
|
margin: auto;
|
|
|
|
display: block;
|
|
|
|
}
|