mirror of https://gitlab.com/bashrc2/epicyon
Merge branch 'main' of gitlab.com:bashrc2/epicyon
commit
64ac72f1bc
351
epicyon-blog.css
351
epicyon-blog.css
|
@ -18,7 +18,9 @@
|
|||
--font-size-header: 18px;
|
||||
--font-color-header: #ccc;
|
||||
--font-size-button-mobile: 34px;
|
||||
--font-size-button-tiny: 17px;
|
||||
--font-size-mobile: 50px;
|
||||
--font-size-tiny: 25px;
|
||||
--font-size: 30px;
|
||||
--font-size2: 24px;
|
||||
--font-size3: 38px;
|
||||
|
@ -36,6 +38,7 @@
|
|||
--button-deny: darkred;
|
||||
--button-height: 10px;
|
||||
--button-height-padding-mobile: 20px;
|
||||
--button-height-padding-tiny: 10px;
|
||||
--button-height-padding: 10px;
|
||||
--image-corners: 10%,
|
||||
--gallery-border: #ccc;
|
||||
|
@ -43,6 +46,7 @@
|
|||
--gallery-text-color: #ccc;
|
||||
--gallery-font-size: 22px;
|
||||
--gallery-font-size-mobile: 35px;
|
||||
--gallery-font-size-tiny: 17px;
|
||||
--button-corner-radius: 15px;
|
||||
--timeline-border-radius: 30px;
|
||||
--focus-color: white;
|
||||
|
@ -1403,3 +1407,350 @@ div.gallery img {
|
|||
opacity: 0.7;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 480px) {
|
||||
body, html {
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
}
|
||||
h1 {
|
||||
font-family: var(--header-font);
|
||||
font-size: var(--font-size-tiny);
|
||||
color: var(--title-color);
|
||||
}
|
||||
div.gallerytext {
|
||||
color: var(--gallery-text-color);
|
||||
font-size: var(--gallery-font-size-tiny);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
}
|
||||
.galleryContainer {
|
||||
display: grid;
|
||||
grid-template-columns: auto;
|
||||
background-color: var(--main-bg-color);
|
||||
}
|
||||
div.gallery {
|
||||
margin: 5px;
|
||||
border: 1px solid var(--gallery-border);
|
||||
float: left;
|
||||
width: 100%;
|
||||
}
|
||||
div.imagedesc {
|
||||
padding: 35px;
|
||||
text-align: center;
|
||||
}
|
||||
.container img {
|
||||
float: left;
|
||||
max-width: 400px;
|
||||
width: 15%;
|
||||
padding: 0px 7px;
|
||||
margin-right: 20px;
|
||||
border-radius: var(--image-corners);
|
||||
}
|
||||
.container img.emojisearch {
|
||||
width: 12%;
|
||||
float: right;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.container img.emojicalendar {
|
||||
float: left;
|
||||
max-width: 400px;
|
||||
width: 12%;
|
||||
-ms-transform: translateY(-25%);
|
||||
transform: translateY(-25%);
|
||||
}
|
||||
.container img.timelineicon {
|
||||
float: right;
|
||||
margin-left: 0px;
|
||||
margin-right:0;
|
||||
padding: 0 0;
|
||||
margin: 0 0;
|
||||
width: 100px;
|
||||
}
|
||||
.container img.emojiheader {
|
||||
float: none;
|
||||
width: 45px;
|
||||
margin-left: 0px;
|
||||
margin-right: 0px;
|
||||
padding-right: 0px;
|
||||
border-radius: 0px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
div.mediaavatar img {
|
||||
float: left;
|
||||
max-width: 200px;
|
||||
width: 8%;
|
||||
margin: 0px 1%;
|
||||
border-radius: 0%;
|
||||
}
|
||||
div.mediaicons img {
|
||||
float: right;
|
||||
max-width: 200px;
|
||||
width: 10%;
|
||||
margin: 0px 1%;
|
||||
border-radius: 0%;
|
||||
}
|
||||
.containericons img {
|
||||
float: right;
|
||||
max-width: 200px;
|
||||
width: 7%;
|
||||
margin: 1% 3%;
|
||||
border-radius: 0%;
|
||||
}
|
||||
.timeline-avatar img {
|
||||
opacity: 1.0;
|
||||
width: 15%;
|
||||
height: 15%;
|
||||
padding: 0px 0px;
|
||||
-ms-transform: translateY(-10%);
|
||||
transform: translateY(-10%);
|
||||
border-radius: var(--avatar-rounding);
|
||||
}
|
||||
.cwButton {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: #554;
|
||||
border: none;
|
||||
color: #FFFFFE;
|
||||
text-align: center;
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
padding: 2px;
|
||||
cursor: pointer;
|
||||
margin: 5px;
|
||||
}
|
||||
.buttonevent {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-highlighted);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 15px;
|
||||
}
|
||||
.button {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-background);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 80px;
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 15px;
|
||||
}
|
||||
.buttonhighlighted {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-highlighted);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 80px;
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 15px;
|
||||
}
|
||||
.buttonselected {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-selected);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 80px;
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 15px;
|
||||
}
|
||||
.buttonselectedhighlighted {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-selected-highlighted);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 80px;
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 15px;
|
||||
}
|
||||
.followApprove {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-approve);
|
||||
border: none;
|
||||
color: #FFFFFF;
|
||||
text-align: center;
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 80px;
|
||||
cursor: pointer;
|
||||
margin: 0 15px;
|
||||
float: right;
|
||||
}
|
||||
.followDeny {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-deny);
|
||||
border: none;
|
||||
color: #FFFFFF;
|
||||
text-align: center;
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 80px;
|
||||
cursor: pointer;
|
||||
margin: 0 15px;
|
||||
float: right;
|
||||
}
|
||||
.pageicon {
|
||||
width: 14%;
|
||||
}
|
||||
.time-right {
|
||||
float: right;
|
||||
color: var(--time-color);
|
||||
margin: 25px 20px;
|
||||
}
|
||||
input[type=text], select, textarea {
|
||||
width: 100%;
|
||||
padding: 12px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: var(--button-corner-radius);
|
||||
box-sizing: border-box;
|
||||
margin-top: 6px;
|
||||
margin-bottom: 16px;
|
||||
resize: vertical;
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
background-color: var(--main-bg-color-reply);
|
||||
color: var(--main-fg-color);
|
||||
}
|
||||
input[type=button], input[type=submit] {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
display: inline-block;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
margin: 15px;
|
||||
border: none;
|
||||
border-radius: var(--button-corner-radius);
|
||||
cursor: pointer;
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
width: 20%;
|
||||
}
|
||||
.question {
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
}
|
||||
.questionresult {
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
}
|
||||
input[type=radio] {
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
height: 90px;
|
||||
vertical-align: middle;
|
||||
margin-right: 20px;
|
||||
}
|
||||
input.vote[type=submit] {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
float: left;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
margin: 15px;
|
||||
border: none;
|
||||
border-radius: var(--button-corner-radius);
|
||||
cursor: pointer;
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
width: 20%;
|
||||
}
|
||||
input[type=file] {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
padding: 20px;
|
||||
margin: 0px;
|
||||
border: none;
|
||||
border-radius: var(--button-corner-radius);
|
||||
cursor: pointer;
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
width: 95.4%;
|
||||
}
|
||||
.cancelbtn {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
display: inline-block;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
margin: 15px;
|
||||
border: none;
|
||||
border-radius: var(--button-corner-radius);
|
||||
cursor: pointer;
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
width: 20%;
|
||||
}
|
||||
.scope-desc {
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
}
|
||||
.buttonunfollow {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-background);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 200px;
|
||||
min-width: 100px;
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 5px;
|
||||
float: right;
|
||||
}
|
||||
.license {
|
||||
float: right;
|
||||
margin: 0% 1%;
|
||||
width: 20%;
|
||||
}
|
||||
.donateButton {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
float: none;
|
||||
margin: 0px 10px;
|
||||
padding: 12px 40px;
|
||||
border: none;
|
||||
border-radius: var(--button-corner-radius);
|
||||
cursor: pointer;
|
||||
font-size: var(--font-size4);
|
||||
font-family: "Times New Roman", Roman, serif;
|
||||
opacity: 0.7;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
:root {
|
||||
--main-bg-color: #282c37;
|
||||
--calendar-bg-color: #eee;
|
||||
--lines-color: black;
|
||||
--main-bg-color: #e6ebf0;
|
||||
--calendar-bg-color: #e6ebf0;
|
||||
--lines-color: darkblue;
|
||||
--day-number: black;
|
||||
--day-number2: #282c37;
|
||||
--time-color: black;
|
||||
|
@ -9,47 +9,50 @@
|
|||
--event-color: #282c37;
|
||||
--event-public-color: #282c37;
|
||||
--today-foreground: white;
|
||||
--today-circle: red;
|
||||
--event-background: orange;
|
||||
--event-background-private: #ddd;
|
||||
--event-foreground:white;
|
||||
--title-text: #282c37;
|
||||
--title-background: #ccc;
|
||||
--focus-color: white;
|
||||
--today-circle: #03a494;
|
||||
--event-background: lightgrey;
|
||||
--event-background-private: grey;
|
||||
--event-foreground: white;
|
||||
--title-text: white;
|
||||
--title-background: #2b5c6d;
|
||||
--focus-color: grey;
|
||||
--calendar-horizontal-padding: 0;
|
||||
--calendar-cell-size: 1.5vw;
|
||||
--calendar-cell-size-mobile: 1.5vw;
|
||||
--calendar-cell-size-tiny: 1.5vw;
|
||||
--font-size-calendar: 20px;
|
||||
--font-size-calendar-mobile: 30px;
|
||||
--font-size-calendar-tiny: 15px;
|
||||
--font-size-calendar-header: 3rem;
|
||||
--font-size-calendar-day: 1rem;
|
||||
--font-size-calendar-cell: 2rem;
|
||||
--font-size-calendar-cell-mobile: 4rem;
|
||||
--font-size-calendar-cell-tiny: 2rem;
|
||||
--calendar-header-font: 'Montserrat';
|
||||
--calendar-header-font-style: italic;
|
||||
--main-link-color-hover: #bbb;
|
||||
--main-link-color-hover: blue;
|
||||
--rendering: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Bedstead';
|
||||
font-family: 'NimbusSanL';
|
||||
font-style: italic;
|
||||
font-weight: normal;
|
||||
font-display: block;
|
||||
src: url('./fonts/bedstead.otf') format('opentype');
|
||||
src: url('./fonts/NimbusSanL-italic.otf') format('opentype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Bedstead';
|
||||
font-family: 'NimbusSanL';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-display: block;
|
||||
src: url('./fonts/bedstead.otf') format('opentype');
|
||||
src: url('./fonts/NimbusSanL.otf') format('opentype');
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: var(--main-bg-color);
|
||||
color: var(--day-number2);
|
||||
font-family: 'Montserrat';
|
||||
font-family: 'NimbusSanL';
|
||||
font-weight: 700;
|
||||
image-rendering: var(--rendering);
|
||||
}
|
||||
|
@ -122,7 +125,7 @@ a:focus {
|
|||
background-color: var(--title-background);
|
||||
color: var(--title-text);
|
||||
display: inline-block;
|
||||
font-family: var(--calendar-header-font);
|
||||
font-family: var(--calendar-header-font);
|
||||
font-size: var(--font-size-calendar-header);
|
||||
font-weight: 400;
|
||||
letter-spacing: 0.1em;
|
||||
|
@ -251,7 +254,7 @@ tr:nth-child(even) > .calendar__day__cell:nth-child(even) {
|
|||
padding: var(--calendar-cell-size) 0 var(--calendar-cell-size);
|
||||
}
|
||||
body {
|
||||
font-size: var(--font-size-calendar);
|
||||
font-size: var(--font-size-calendar);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -271,6 +274,26 @@ tr:nth-child(even) > .calendar__day__cell:nth-child(even) {
|
|||
padding: var(--calendar-cell-size-mobile) 0 var(--calendar-cell-size-mobile);
|
||||
}
|
||||
body {
|
||||
font-size: var(--font-size-calendar-mobile);
|
||||
font-size: var(--font-size-calendar-mobile);
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 480px) {
|
||||
.calendar {
|
||||
table-display: fixed;
|
||||
margin: 0 0;
|
||||
width: 100%;
|
||||
padding: 0 var(--calendar-horizontal-padding);
|
||||
}
|
||||
.calendar__day__cell {
|
||||
font-size: var(--font-size-calendar-cell-tiny);
|
||||
position: relative;
|
||||
}
|
||||
.calendar__day__header,
|
||||
.calendar__day__cell {
|
||||
padding: var(--calendar-cell-size-tiny) 0 var(--calendar-cell-size-tiny);
|
||||
}
|
||||
body {
|
||||
font-size: var(--font-size-calendar-tiny);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -294,3 +294,53 @@ input[type=text] {
|
|||
margin: 30px 40px;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 480px) {
|
||||
body, html {
|
||||
min-width: 400px;
|
||||
}
|
||||
.hashtagswarm {
|
||||
font-size: var(--font-size2);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
margin: var(--hashtag-margin);
|
||||
line-height: var(--hashtag-vertical-spacing3);
|
||||
}
|
||||
.followText {
|
||||
font-size: var(--font-size2);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
input[type=text] {
|
||||
width: var(--follow-text-entry-width);
|
||||
clear: both;
|
||||
font-size: 20px;
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
text-align: center;
|
||||
color: var(--text-entry-foreground);
|
||||
background-color: var(--text-entry-background);
|
||||
}
|
||||
.button {
|
||||
border-radius: 4px;
|
||||
background-color: var(--button-background);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
padding: 10px;
|
||||
font-size: 20px;
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
width: 20%;
|
||||
max-width: 200px;
|
||||
min-width: 100px;
|
||||
cursor: pointer;
|
||||
margin: 30px;
|
||||
}
|
||||
input[type=checkbox]
|
||||
{
|
||||
-ms-transform: scale(4);
|
||||
-moz-transform: scale(4);
|
||||
-webkit-transform: scale(4);
|
||||
-o-transform: scale(4);
|
||||
transform: scale(4);
|
||||
padding: 20px;
|
||||
margin: 30px 40px;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,8 +20,10 @@
|
|||
--border-width: 2px;
|
||||
--font-size-header: 18px;
|
||||
--font-size-header-mobile: 32px;
|
||||
--font-size-header-tiny: 16px;
|
||||
--font-color-header: #ccc;
|
||||
--font-size-button-mobile: 34px;
|
||||
--font-size-button-tiny: 17px;
|
||||
--font-size: 30px;
|
||||
--font-size2: 24px;
|
||||
--font-size3: 38px;
|
||||
|
@ -29,6 +31,7 @@
|
|||
--font-size5: 20px;
|
||||
--font-size-likes: 20px;
|
||||
--font-size-likes-mobile: 32px;
|
||||
--font-size-likes-tiny: 16px;
|
||||
--font-size-pgp-key: 16px;
|
||||
--font-size-pgp-key2: 8px;
|
||||
--font-size-tox: 16px;
|
||||
|
@ -46,6 +49,7 @@
|
|||
--button-deny: darkred;
|
||||
--button-height: 10px;
|
||||
--button-height-padding-mobile: 20px;
|
||||
--button-height-padding-tiny: 10px;
|
||||
--button-height-padding: 10px;
|
||||
--image-corners: 10%,
|
||||
--gallery-border: #ccc;
|
||||
|
@ -53,6 +57,7 @@
|
|||
--gallery-text-color: #ccc;
|
||||
--gallery-font-size: 22px;
|
||||
--gallery-font-size-mobile: 35px;
|
||||
--gallery-font-size-tiny: 17.5px;
|
||||
--button-corner-radius: 15px;
|
||||
--timeline-border-radius: 30px;
|
||||
--icons-side: right;
|
||||
|
@ -67,6 +72,7 @@
|
|||
--column-right-width: 10vw;
|
||||
--banner-height: 15vh;
|
||||
--banner-height-mobile: 10vh;
|
||||
--banner-height-tiny: 10vh;
|
||||
--header-font: 'Arial, Helvetica, sans-serif';
|
||||
--rendering: normal;
|
||||
}
|
||||
|
@ -250,7 +256,7 @@ h1 {
|
|||
.containerSubmitNewPost {
|
||||
margin: 20px;
|
||||
}
|
||||
|
||||
|
||||
.container img.timelineicon:hover {
|
||||
filter: brightness(150%);
|
||||
}
|
||||
|
@ -1828,3 +1834,466 @@ aside .toggle-inside li {
|
|||
margin: 40px 80px;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 480px) {
|
||||
body, html {
|
||||
background-color: var(--main-bg-color);
|
||||
color: var(--main-fg-color);
|
||||
|
||||
height: 100%;
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
min-width: 400px;
|
||||
margin-left: 0;
|
||||
font-size: var(--font-size);
|
||||
line-height: var(--line-spacing);
|
||||
}
|
||||
.timeline {
|
||||
border: 0;
|
||||
width: 100vw;
|
||||
}
|
||||
.timeline-banner {
|
||||
object-fit: cover;
|
||||
width: 98vw;
|
||||
height: var(--banner-height-tiny);
|
||||
}
|
||||
.column-left {
|
||||
width: 0%;
|
||||
}
|
||||
.col-left {
|
||||
float: left;
|
||||
width: 0%;
|
||||
display: none;
|
||||
}
|
||||
.col-center {
|
||||
width: 100vw;
|
||||
}
|
||||
.col-right {
|
||||
float: right;
|
||||
width: 0%;
|
||||
display: none;
|
||||
}
|
||||
.column-right {
|
||||
width: 0%;
|
||||
}
|
||||
.column-center {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
}
|
||||
.likesCount {
|
||||
font-size: var(--font-size-likes-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
float: right;
|
||||
padding: 32px 0;
|
||||
transform: translateX(-20px);
|
||||
font-weight: bold;
|
||||
}
|
||||
.container p.administeredby {
|
||||
font-size: var(--font-size-tox2);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
.toxaddr {
|
||||
font-size: var(--font-size-tox2);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
.ssbaddr {
|
||||
font-size: var(--font-size-pgp-key2);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
.pgp {
|
||||
font-size: var(--font-size-pgp-key2);
|
||||
color: var(--main-link-color);
|
||||
background: var(--link-bg-color);
|
||||
font-family: 'monospace';
|
||||
}
|
||||
body, html {
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
div.gallerytext {
|
||||
color: var(--gallery-text-color);
|
||||
font-size: var(--gallery-font-size-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
.galleryContainer {
|
||||
display: grid;
|
||||
grid-template-columns: auto;
|
||||
background-color: var(--main-bg-color);
|
||||
}
|
||||
div.gallery {
|
||||
margin: 5px;
|
||||
border: 1px solid var(--gallery-border);
|
||||
float: left;
|
||||
width: 100%;
|
||||
}
|
||||
div.imagedesc {
|
||||
padding: 35px;
|
||||
text-align: center;
|
||||
}
|
||||
.container img {
|
||||
float: left;
|
||||
max-width: 400px;
|
||||
width: 15%;
|
||||
padding: 0px 7px;
|
||||
margin-right: 20px;
|
||||
border-radius: var(--image-corners);
|
||||
}
|
||||
.container img.emojisearch {
|
||||
width: 25%;
|
||||
float: right;
|
||||
}
|
||||
.container img.emojicalendar {
|
||||
float: left;
|
||||
max-width: 400px;
|
||||
width: 12%;
|
||||
-ms-transform: translateY(-25%);
|
||||
transform: translateY(-25%);
|
||||
}
|
||||
.container img.timelineicon {
|
||||
float: var(--icons-side);
|
||||
margin-left: 0px;
|
||||
margin-right:0;
|
||||
padding: 0 0;
|
||||
margin: 0 0;
|
||||
width: 100px;
|
||||
}
|
||||
.container img.emojiheader {
|
||||
float: none;
|
||||
width: 45px;
|
||||
margin-left: 0px;
|
||||
margin-right: 0px;
|
||||
padding-right: 0px;
|
||||
border-radius: 0px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
div.mediaavatar img {
|
||||
float: left;
|
||||
max-width: 200px;
|
||||
width: 8%;
|
||||
margin: 0px 1%;
|
||||
border-radius: 0%;
|
||||
}
|
||||
div.mediaicons img {
|
||||
float: right;
|
||||
max-width: 200px;
|
||||
width: 10%;
|
||||
margin: 0px 1%;
|
||||
border-radius: 0%;
|
||||
}
|
||||
.containericons img {
|
||||
float: var(--icons-side);
|
||||
max-width: 200px;
|
||||
width: 7%;
|
||||
margin: 1% 3%;
|
||||
border-radius: 0%;
|
||||
}
|
||||
.timeline-avatar img {
|
||||
opacity: 1.0;
|
||||
width: 15%;
|
||||
height: 15%;
|
||||
padding: 0px 0px;
|
||||
-ms-transform: translateY(-10%);
|
||||
transform: translateY(-10%);
|
||||
border-radius: var(--avatar-rounding);
|
||||
}
|
||||
.buttonevent {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-highlighted);
|
||||
border: none;
|
||||
color: var(--button-fg-highlighted);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 15px;
|
||||
}
|
||||
.button {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-background);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 10ch;
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 15px;
|
||||
}
|
||||
.buttonhighlighted {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-highlighted);
|
||||
border: none;
|
||||
color: var(--button-fg-highlighted);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 10ch;
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 15px;
|
||||
}
|
||||
.buttonselected {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-selected);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 10ch;
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 15px;
|
||||
}
|
||||
.buttonselectedhighlighted {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-selected-highlighted);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 10ch;
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 15px;
|
||||
}
|
||||
.followApprove {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-approve);
|
||||
border: none;
|
||||
color: #FFFFFF;
|
||||
text-align: center;
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 80px;
|
||||
cursor: pointer;
|
||||
margin: 0 15px;
|
||||
float: right;
|
||||
}
|
||||
.followDeny {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-deny);
|
||||
border: none;
|
||||
color: #FFFFFF;
|
||||
text-align: center;
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 400px;
|
||||
min-width: 80px;
|
||||
cursor: pointer;
|
||||
margin: 0 15px;
|
||||
float: right;
|
||||
}
|
||||
.pageicon {
|
||||
width: 14%;
|
||||
}
|
||||
.time-right {
|
||||
float: var(--icons-side);
|
||||
color: var(--time-color);
|
||||
margin: 25px 20px;
|
||||
}
|
||||
input[type=text], select, textarea {
|
||||
width: 100%;
|
||||
padding: 12px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: var(--button-corner-radius);
|
||||
box-sizing: border-box;
|
||||
margin-top: 6px;
|
||||
margin-bottom: 16px;
|
||||
resize: vertical;
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
background-color: var(--main-bg-color-reply);
|
||||
color: var(--main-fg-color);
|
||||
}
|
||||
input[type=button], input[type=submit] {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
display: inline-block;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
margin: 15px;
|
||||
border: none;
|
||||
border-radius: var(--button-corner-radius);
|
||||
cursor: pointer;
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
width: 20%;
|
||||
}
|
||||
.question {
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
.questionresult {
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
input[type=radio] {
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
height: 90px;
|
||||
vertical-align: middle;
|
||||
margin-right: 20px;
|
||||
}
|
||||
input.vote[type=submit] {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
float: left;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
margin: 15px;
|
||||
border: none;
|
||||
border-radius: var(--button-corner-radius);
|
||||
cursor: pointer;
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
width: 20%;
|
||||
}
|
||||
input[type=file] {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
padding: 20px;
|
||||
margin: 0px;
|
||||
border: none;
|
||||
border-radius: var(--button-corner-radius);
|
||||
cursor: pointer;
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
width: 95.4%;
|
||||
}
|
||||
.cancelbtn {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
display: inline-block;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
margin: 15px;
|
||||
border: none;
|
||||
border-radius: var(--button-corner-radius);
|
||||
cursor: pointer;
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
width: 20%;
|
||||
}
|
||||
.scope-desc {
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
.buttonunfollow {
|
||||
border-radius: var(--button-corner-radius);
|
||||
background-color: var(--button-background);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
font-size: var(--font-size-button-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
padding: var(--button-height-padding-tiny);
|
||||
width: 20%;
|
||||
max-width: 200px;
|
||||
min-width: 100px;
|
||||
transition: all 0.5s;
|
||||
cursor: pointer;
|
||||
margin: 5px;
|
||||
float: right;
|
||||
}
|
||||
.license {
|
||||
float: right;
|
||||
margin: 0% 1%;
|
||||
width: 20%;
|
||||
}
|
||||
.donateButton {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
float: none;
|
||||
margin: 0px 10px;
|
||||
padding: 12px 40px;
|
||||
border: none;
|
||||
border-radius: var(--button-corner-radius);
|
||||
cursor: pointer;
|
||||
font-size: var(--font-size3);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
opacity: 0.7;
|
||||
}
|
||||
#msgscope label img {
|
||||
width: 64px;
|
||||
height: 64px;
|
||||
padding: 0px 0px;
|
||||
}
|
||||
.toggle-msgScope img {
|
||||
width: 64px;
|
||||
height: 64px;
|
||||
margin: -15px 0px;
|
||||
padding: 0px 20px;
|
||||
}
|
||||
.dropdown-menutoggle {
|
||||
-webkit-margin-start: 0px;
|
||||
-webkit-margin-end: 0px;
|
||||
-webkit-padding-start: 40px;
|
||||
border-top-left-radius: 0;
|
||||
border-top-right-radius: 0;
|
||||
position: absolute;
|
||||
top: 100%;
|
||||
left: 21px;
|
||||
width: 460%;
|
||||
min-width: 100%;
|
||||
z-index: 1000;
|
||||
display: block;
|
||||
float: left;
|
||||
padding: 0 17px !important;
|
||||
margin: 2px 0 0 !important;
|
||||
font-size: var(--font-size3);
|
||||
text-align: left;
|
||||
list-style: none;
|
||||
color: var(--dropdown-fg-color);
|
||||
background-color: var(--dropdown-bg-color);
|
||||
-webkit-background-clip: padding-box;
|
||||
background-clip: padding-box;
|
||||
}
|
||||
input[type=checkbox]
|
||||
{
|
||||
-ms-transform: scale(4);
|
||||
-moz-transform: scale(4);
|
||||
-webkit-transform: scale(4);
|
||||
-o-transform: scale(4);
|
||||
transform: scale(4);
|
||||
padding: 20px;
|
||||
margin: 30px 40px;
|
||||
}
|
||||
input[type=radio]
|
||||
{
|
||||
-ms-transform: scale(2);
|
||||
-moz-transform: scale(2);
|
||||
-webkit-transform: scale(2);
|
||||
-o-transform: scale(2);
|
||||
transform: scale(2);
|
||||
padding: 20px;
|
||||
margin: 30px 40px;
|
||||
}
|
||||
input[type=number]
|
||||
{
|
||||
-ms-transform: scale(2);
|
||||
-moz-transform: scale(2);
|
||||
-webkit-transform: scale(2);
|
||||
-o-transform: scale(2);
|
||||
transform: scale(2);
|
||||
padding: 10px;
|
||||
margin: 40px 80px;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,44 +1,45 @@
|
|||
@charset "UTF-8";
|
||||
|
||||
:root {
|
||||
--login-bg-color: #282c37;
|
||||
--link-bg-color: #282c37;
|
||||
--login-fg-color: #dddddd;
|
||||
--main-link-color: #999;
|
||||
--main-visited-color: #888;
|
||||
--border-color: #505050;
|
||||
--border-width: 2px;
|
||||
--login-bg-color: #010026;
|
||||
--link-bg-color: #e6ebf0;
|
||||
--login-fg-color: white;
|
||||
--main-link-color: darkblue;
|
||||
--main-visited-color: #232c37;
|
||||
--border-color: #c0cdd9;
|
||||
--border-width: 1px;
|
||||
--font-size-header: 18px;
|
||||
--font-color-header: #ccc;
|
||||
--font-color-header: black;
|
||||
--login-font-size: 22px;
|
||||
--login-font-size-mobile: 40px;
|
||||
--text-entry-foreground: #ccc;
|
||||
--text-entry-background: #111;
|
||||
--login-font-size-tiny: 20px;
|
||||
--text-entry-foreground: #111;
|
||||
--text-entry-background: white;
|
||||
--time-color: #aaa;
|
||||
--button-text: #FFFFFF;
|
||||
--button-background: #999;
|
||||
--button-selected: #666;
|
||||
--form-border-radius: 30px;
|
||||
--focus-color: white;
|
||||
--focus-color: grey;
|
||||
--line-spacing: 130%;
|
||||
--login-logo-width: 20%;
|
||||
--main-link-color-hover: #bbb;
|
||||
--main-link-color-hover: blue;
|
||||
--rendering: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Bedstead';
|
||||
font-family: 'NimbusSanL';
|
||||
font-style: italic;
|
||||
font-weight: normal;
|
||||
font-display: block;
|
||||
src: url('./fonts/bedstead.otf') format('opentype');
|
||||
src: url('./fonts/NimbusSanL-italic.otf') format('opentype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Bedstead';
|
||||
font-family: 'NimbusSanL';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-display: block;
|
||||
src: url('./fonts/bedstead.otf') format('opentype');
|
||||
src: url('./fonts/NimbusSanL.otf') format('opentype');
|
||||
}
|
||||
|
||||
body, html {
|
||||
|
@ -52,7 +53,7 @@ body, html {
|
|||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
height: 100%;
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
max-width: 60%;
|
||||
min-width: 600px;
|
||||
margin: 0 auto;
|
||||
|
@ -112,7 +113,7 @@ input[type=text], input[type=password] {
|
|||
border: 1px solid #ccc;
|
||||
box-sizing: border-box;
|
||||
font-size: var(--login-font-size);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
|
||||
button {
|
||||
|
@ -124,12 +125,12 @@ button {
|
|||
cursor: pointer;
|
||||
width: 100%;
|
||||
font-size: var(--login-font-size);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
|
||||
.login-text {
|
||||
font-size: var(--login-font-size);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
|
||||
button:hover {
|
||||
|
@ -170,17 +171,17 @@ span.psw {
|
|||
background-color: var(--login-bg-color);
|
||||
color: var(--login-fg-color);
|
||||
height: 100%;
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
max-width: 60%;
|
||||
min-width: 600px;
|
||||
margin: 0 auto;
|
||||
font-size: var(--login-font-size);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
position: relative;
|
||||
}
|
||||
.login-text {
|
||||
font-size: var(--login-font-size);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
input[type=text], input[type=password] {
|
||||
width: 100%;
|
||||
|
@ -190,7 +191,7 @@ span.psw {
|
|||
border: 1px solid #ccc;
|
||||
box-sizing: border-box;
|
||||
font-size: var(--login-font-size);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
button {
|
||||
background-color: var(--button-background);
|
||||
|
@ -201,7 +202,7 @@ span.psw {
|
|||
cursor: pointer;
|
||||
width: 100%;
|
||||
font-size: var(--login-font-size);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -210,17 +211,17 @@ span.psw {
|
|||
background-color: var(--login-bg-color);
|
||||
color: var(--login-fg-color);
|
||||
height: 100%;
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
max-width: 95%;
|
||||
min-width: 600px;
|
||||
margin: 0 auto;
|
||||
font-size: var(--login-font-size-mobile);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
position: relative;
|
||||
}
|
||||
.login-text {
|
||||
font-size: var(--login-font-size-mobile);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
input[type=text], input[type=password] {
|
||||
width: 100%;
|
||||
|
@ -230,7 +231,7 @@ span.psw {
|
|||
border: 1px solid #ccc;
|
||||
box-sizing: border-box;
|
||||
font-size: var(--login-font-size-mobile);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
button {
|
||||
background-color: var(--button-background);
|
||||
|
@ -241,6 +242,46 @@ span.psw {
|
|||
cursor: pointer;
|
||||
width: 100%;
|
||||
font-size: var(--login-font-size-mobile);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 480px) {
|
||||
body, html {
|
||||
background-color: var(--login-bg-color);
|
||||
color: var(--login-fg-color);
|
||||
height: 100%;
|
||||
font-family: 'NimbusSanL';
|
||||
max-width: 95%;
|
||||
min-width: 400px;
|
||||
margin: 0 auto;
|
||||
font-size: var(--login-font-size-tiny);
|
||||
font-family: 'NimbusSanL';
|
||||
position: relative;
|
||||
}
|
||||
.login-text {
|
||||
font-size: var(--login-font-size-tiny);
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
input[type=text], input[type=password] {
|
||||
width: 100%;
|
||||
padding: 12px 20px;
|
||||
margin: 8px 0;
|
||||
display: inline-block;
|
||||
border: 1px solid #ccc;
|
||||
box-sizing: border-box;
|
||||
font-size: var(--login-font-size-tiny);
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
button {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
padding: 14px 20px;
|
||||
margin: 8px 0;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
width: 100%;
|
||||
font-size: var(--login-font-size-mobile);
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
}
|
||||
|
|
|
@ -303,3 +303,80 @@ a:focus {
|
|||
margin: 30px 40px;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 480px) {
|
||||
textarea {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-size: var(--font-size2);
|
||||
width: 90%;
|
||||
background-color: var(--text-entry-background);
|
||||
color: var(--text-entry-foreground);
|
||||
}
|
||||
.followText {
|
||||
font-size: var(--follow-text-size2);
|
||||
}
|
||||
input[type=text] {
|
||||
width: var(--follow-text-entry-width);
|
||||
clear: both;
|
||||
font-size: var(--font-size2);
|
||||
text-align: center;
|
||||
max-width: 50%;
|
||||
min-width: var(--petname-width-chars);
|
||||
color: var(--text-entry-foreground);
|
||||
background-color: var(--text-entry-background);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
.button {
|
||||
border-radius: 4px;
|
||||
background-color: var(--button-background);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
padding: 10px;
|
||||
font-size: var(--font-size2);
|
||||
width: 10ch;
|
||||
max-width: 200px;
|
||||
min-width: 100px;
|
||||
cursor: pointer;
|
||||
margin: 30px;
|
||||
}
|
||||
.buttonIcon {
|
||||
border-radius: 4px;
|
||||
background-color: var(--button-background);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
padding: 6px 80px;
|
||||
font-size: var(--font-size2);
|
||||
max-width: 200px;
|
||||
min-width: 100px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.buttonsmall {
|
||||
border-radius: 4px;
|
||||
background-color: var(--button-small-background);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
border: none;
|
||||
color: var(--button-small-text);
|
||||
text-align: center;
|
||||
padding: 10px;
|
||||
font-size: var(--font-size2);
|
||||
width: 7ch;
|
||||
max-width: 200px;
|
||||
min-width: 100px;
|
||||
cursor: pointer;
|
||||
margin: 30px;
|
||||
}
|
||||
input[type=checkbox]
|
||||
{
|
||||
-ms-transform: scale(4);
|
||||
-moz-transform: scale(4);
|
||||
-webkit-transform: scale(4);
|
||||
-o-transform: scale(4);
|
||||
transform: scale(4);
|
||||
padding: 20px;
|
||||
margin: 30px 40px;
|
||||
}
|
||||
}
|
||||
|
|
1183
epicyon-profile.css
1183
epicyon-profile.css
File diff suppressed because it is too large
Load Diff
|
@ -43,18 +43,18 @@
|
|||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Bedstead';
|
||||
font-style: italic;
|
||||
font-weight: normal;
|
||||
font-display: block;
|
||||
src: url('./fonts/bedstead.otf') format('opentype');
|
||||
font-family: 'Bedstead';
|
||||
font-style: italic;
|
||||
font-weight: normal;
|
||||
font-display: block;
|
||||
src: url('./fonts/bedstead.otf') format('opentype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Bedstead';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-display: block;
|
||||
src: url('./fonts/bedstead.otf') format('opentype');
|
||||
font-family: 'Bedstead';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-display: block;
|
||||
src: url('./fonts/bedstead.otf') format('opentype');
|
||||
}
|
||||
|
||||
body, html {
|
||||
|
@ -342,3 +342,80 @@ input[type=text] {
|
|||
margin: 30px 40px;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 480px) {
|
||||
body, html {
|
||||
min-width: 400px;
|
||||
}
|
||||
details {
|
||||
font-size: var(--hashtag-size3);
|
||||
}
|
||||
.domainHistogram {
|
||||
border: 0;
|
||||
font-size: var(--hashtag-size3);
|
||||
}
|
||||
.timeline-banner {
|
||||
object-fit: cover;
|
||||
width: 98vw;
|
||||
max-height: var(--search-banner-height-mobile);
|
||||
}
|
||||
.hashtagswarm {
|
||||
font-size: var(--font-size2);
|
||||
font-family: 'NimbusSanL';
|
||||
margin: var(--hashtag-margin);
|
||||
line-height: var(--hashtag-vertical-spacing3);
|
||||
}
|
||||
.followText {
|
||||
font-size: var(--follow-text-size3);
|
||||
font-family: 'NimbusSanL';
|
||||
}
|
||||
input[type=text] {
|
||||
width: var(--follow-text-entry-width);
|
||||
clear: both;
|
||||
font-size: 40px;
|
||||
font-family: 'NimbusSanL';
|
||||
text-align: center;
|
||||
color: var(--text-entry-foreground);
|
||||
background-color: var(--text-entry-background);
|
||||
}
|
||||
.button {
|
||||
border-radius: 4px;
|
||||
background-color: var(--button-background);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
padding: 10px;
|
||||
font-size: 40px;
|
||||
font-family: 'NimbusSanL';
|
||||
width: 20%;
|
||||
max-width: 200px;
|
||||
min-width: 100px;
|
||||
cursor: pointer;
|
||||
margin: 30px;
|
||||
}
|
||||
input[type=checkbox]
|
||||
{
|
||||
-ms-transform: scale(4);
|
||||
-moz-transform: scale(4);
|
||||
-webkit-transform: scale(4);
|
||||
-o-transform: scale(4);
|
||||
transform: scale(4);
|
||||
padding: 20px;
|
||||
margin: 30px 40px;
|
||||
}
|
||||
.button {
|
||||
border-radius: 4px;
|
||||
background-color: var(--button-background);
|
||||
border: none;
|
||||
color: var(--button-text);
|
||||
text-align: center;
|
||||
padding: 10px;
|
||||
font-size: var(--font-size2);
|
||||
font-family: 'NimbusSanL';
|
||||
width: 20%;
|
||||
max-width: 200px;
|
||||
min-width: 100px;
|
||||
cursor: pointer;
|
||||
margin: 30px;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
--font-color-header: #ccc;
|
||||
--welcome-font-size: 22px;
|
||||
--welcome-font-size-mobile: 40px;
|
||||
--welcome-font-size-tiny: 20px;
|
||||
--text-entry-foreground: #ccc;
|
||||
--text-entry-background: #111;
|
||||
--time-color: #aaa;
|
||||
|
@ -241,3 +242,43 @@ span.psw {
|
|||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 480px) {
|
||||
body, html {
|
||||
background-color: var(--welcome-bg-color);
|
||||
color: var(--welcome-fg-color);
|
||||
height: 100%;
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
max-width: 95%;
|
||||
min-width: 400px;
|
||||
margin: 0 auto;
|
||||
font-size: var(--welcome-font-size-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
position: relative;
|
||||
}
|
||||
.welcome-text {
|
||||
font-size: var(--welcome-font-size-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
input[type=text], input[type=password], textarea {
|
||||
width: 100%;
|
||||
padding: 12px 20px;
|
||||
margin: 8px 0;
|
||||
display: inline-block;
|
||||
border: 1px solid #ccc;
|
||||
box-sizing: border-box;
|
||||
font-size: var(--welcome-font-size-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
button {
|
||||
background-color: var(--button-background);
|
||||
color: var(--button-text);
|
||||
padding: 14px 20px;
|
||||
margin: 8px 0;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
width: var(--welcome-button-width);
|
||||
font-size: var(--welcome-font-size-tiny);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
}
|
||||
|
|
1
git.py
1
git.py
|
@ -50,6 +50,7 @@ def isGitPatch(baseDir: str, nickname: str, domain: str,
|
|||
"""Is the given post content a git patch?
|
||||
"""
|
||||
if messageType != 'Note' and \
|
||||
messageType != 'Page' and \
|
||||
messageType != 'Patch':
|
||||
return False
|
||||
# must have a subject line
|
||||
|
|
|
@ -173,7 +173,7 @@ def signPostHeadersNew(dateStr: str, privateKeyPem: str,
|
|||
hazutils.Prehashed(hashes.SHA512()))
|
||||
signature = base64.b64encode(rawSignature).decode('ascii')
|
||||
else:
|
||||
# default sha256
|
||||
# default rsa-sha256
|
||||
headerDigest = getSHA256(signedHeaderText.encode('ascii'))
|
||||
rawSignature = key.sign(headerDigest,
|
||||
padding.PKCS1v15(),
|
||||
|
|
13
posts.py
13
posts.py
|
@ -446,6 +446,7 @@ def _isPublicFeedPost(item: {}, personPosts: {}, debug: bool) -> bool:
|
|||
return False
|
||||
if item['type'] != 'Create' and \
|
||||
item['type'] != 'Announce' and \
|
||||
item['type'] != 'Page' and \
|
||||
item['type'] != 'Note':
|
||||
if debug:
|
||||
print('Not a Create/Note/Announce type')
|
||||
|
@ -465,7 +466,7 @@ def _isPublicFeedPost(item: {}, personPosts: {}, debug: bool) -> bool:
|
|||
if debug:
|
||||
print('object is not a dict or string')
|
||||
return False
|
||||
elif item['type'] == 'Note':
|
||||
elif item['type'] == 'Note' or item['type'] == 'Page':
|
||||
if not item.get('published'):
|
||||
if debug:
|
||||
print('No published attribute')
|
||||
|
@ -476,6 +477,10 @@ def _isPublicFeedPost(item: {}, personPosts: {}, debug: bool) -> bool:
|
|||
thisItem = item['object']
|
||||
# check that this is a public post
|
||||
# #Public should appear in the "to" list
|
||||
itemIsNote = False
|
||||
if item['type'] == 'Note' or item['type'] == 'Page':
|
||||
itemIsNote = True
|
||||
|
||||
if isinstance(thisItem, dict):
|
||||
if thisItem.get('to'):
|
||||
isPublic = False
|
||||
|
@ -485,7 +490,7 @@ def _isPublicFeedPost(item: {}, personPosts: {}, debug: bool) -> bool:
|
|||
break
|
||||
if not isPublic:
|
||||
return False
|
||||
elif isinstance(thisItem, str) or item['type'] == 'Note':
|
||||
elif isinstance(thisItem, str) or itemIsNote:
|
||||
if item.get('to'):
|
||||
isPublic = False
|
||||
for recipient in item['to']:
|
||||
|
@ -581,7 +586,7 @@ def _getPosts(session, outboxUrl: str, maxPosts: int,
|
|||
continue
|
||||
|
||||
thisItem = item
|
||||
if item['type'] != 'Note':
|
||||
if item['type'] != 'Note' and item['type'] != 'Page':
|
||||
thisItem = item['object']
|
||||
|
||||
content = getBaseContentFromPost(item, systemLanguage)
|
||||
|
@ -3409,6 +3414,7 @@ def isImageMedia(session, baseDir: str, httpPrefix: str,
|
|||
if postJsonObject['object'].get('moderationStatus'):
|
||||
return False
|
||||
if postJsonObject['object']['type'] != 'Note' and \
|
||||
postJsonObject['object']['type'] != 'Page' and \
|
||||
postJsonObject['object']['type'] != 'Event' and \
|
||||
postJsonObject['object']['type'] != 'Article':
|
||||
return False
|
||||
|
@ -4555,6 +4561,7 @@ def downloadAnnounce(session, baseDir: str, httpPrefix: str,
|
|||
recentPostsCache)
|
||||
return None
|
||||
if announcedJson['type'] != 'Note' and \
|
||||
announcedJson['type'] != 'Page' and \
|
||||
announcedJson['type'] != 'Article':
|
||||
# You can only announce Note or Article types
|
||||
_rejectAnnounce(announceFilename,
|
||||
|
|
8
tests.py
8
tests.py
|
@ -2246,8 +2246,8 @@ def testGroupFollow(baseDir: str) -> None:
|
|||
testgroupDir + '/wfendpoints/testgroup@' + \
|
||||
testgroupDomain + ':' + str(testgroupPort) + '.json'
|
||||
assert os.path.isfile(testgroupWebfingerFilename)
|
||||
assert 'group:testgroup@' in open(testgroupWebfingerFilename).read()
|
||||
print('group: exists within the webfinger endpoint for testgroup')
|
||||
assert 'acct:testgroup@' in open(testgroupWebfingerFilename).read()
|
||||
print('acct: exists within the webfinger endpoint for testgroup')
|
||||
|
||||
testgroupHandle = 'testgroup@' + testgroupDomain
|
||||
followingStr = ''
|
||||
|
@ -2321,8 +2321,8 @@ def testGroupFollow(baseDir: str) -> None:
|
|||
testgroupDir + '/wfendpoints/testgroup@' + \
|
||||
testgroupDomain + ':' + str(testgroupPort) + '.json'
|
||||
assert os.path.isfile(testgroupWebfingerFilename)
|
||||
assert 'group:testgroup@' in open(testgroupWebfingerFilename).read()
|
||||
print('group: exists within the webfinger endpoint for testgroup')
|
||||
assert 'acct:testgroup@' in open(testgroupWebfingerFilename).read()
|
||||
print('acct: exists within the webfinger endpoint for testgroup')
|
||||
|
||||
testgroupHandle = 'testgroup@' + testgroupDomain
|
||||
followingStr = ''
|
||||
|
|
2
utils.py
2
utils.py
|
@ -2583,6 +2583,7 @@ def isDM(postJsonObject: {}) -> bool:
|
|||
if not hasObjectDict(postJsonObject):
|
||||
return False
|
||||
if postJsonObject['object']['type'] != 'Note' and \
|
||||
postJsonObject['object']['type'] != 'Page' and \
|
||||
postJsonObject['object']['type'] != 'Patch' and \
|
||||
postJsonObject['object']['type'] != 'EncryptedMessage' and \
|
||||
postJsonObject['object']['type'] != 'Article':
|
||||
|
@ -2611,6 +2612,7 @@ def isReply(postJsonObject: {}, actor: str) -> bool:
|
|||
if postJsonObject['object'].get('moderationStatus'):
|
||||
return False
|
||||
if postJsonObject['object']['type'] != 'Note' and \
|
||||
postJsonObject['object']['type'] != 'Page' and \
|
||||
postJsonObject['object']['type'] != 'EncryptedMessage' and \
|
||||
postJsonObject['object']['type'] != 'Article':
|
||||
return False
|
||||
|
|
|
@ -291,7 +291,7 @@ def htmlProfileAfterSearch(cssCache: {},
|
|||
if not hasObjectDict(item):
|
||||
continue
|
||||
if item['type'] != 'Create' and item['type'] != 'Announce':
|
||||
if item['type'] != 'Note':
|
||||
if item['type'] != 'Note' and item['type'] != 'Page':
|
||||
continue
|
||||
if not item.get('to'):
|
||||
continue
|
||||
|
@ -312,8 +312,9 @@ def htmlProfileAfterSearch(cssCache: {},
|
|||
item = newItem
|
||||
if not item.get('actor'):
|
||||
continue
|
||||
if not isAnnouncedFeedItem and item['actor'] != personUrl:
|
||||
continue
|
||||
if not isAnnouncedFeedItem:
|
||||
if item['actor'] != personUrl and item['type'] != 'Page':
|
||||
continue
|
||||
|
||||
profileStr += \
|
||||
individualPostAsHtml(signingPrivateKeyPem,
|
||||
|
|
43
webfinger.py
43
webfinger.py
|
@ -75,8 +75,6 @@ def webfingerHandle(session, handle: str, httpPrefix: str,
|
|||
nickname, domain, grpAccount = _parseHandle(handle)
|
||||
if not nickname:
|
||||
return None
|
||||
if grpAccount:
|
||||
groupAccount = True
|
||||
wfDomain = removeDomainPort(domain)
|
||||
|
||||
wfHandle = nickname + '@' + wfDomain
|
||||
|
@ -89,14 +87,9 @@ def webfingerHandle(session, handle: str, httpPrefix: str,
|
|||
hdr = {
|
||||
'Accept': 'application/jrd+json'
|
||||
}
|
||||
if not groupAccount:
|
||||
par = {
|
||||
'resource': 'acct:{}'.format(wfHandle)
|
||||
}
|
||||
else:
|
||||
par = {
|
||||
'resource': 'group:{}'.format(wfHandle)
|
||||
}
|
||||
par = {
|
||||
'resource': 'acct:{}'.format(wfHandle)
|
||||
}
|
||||
try:
|
||||
result = \
|
||||
getJson(signingPrivateKeyPem, session, url, hdr, par,
|
||||
|
@ -147,10 +140,7 @@ def createWebfingerEndpoint(nickname: str, domain: str, port: int,
|
|||
|
||||
personName = nickname
|
||||
personId = localActorUrl(httpPrefix, personName, domain)
|
||||
if not groupAccount:
|
||||
subjectStr = "acct:" + personName + "@" + originalDomain
|
||||
else:
|
||||
subjectStr = "group:" + personName + "@" + originalDomain
|
||||
subjectStr = "acct:" + personName + "@" + originalDomain
|
||||
profilePageHref = httpPrefix + "://" + domain + "/@" + nickname
|
||||
if nickname == 'inbox' or nickname == originalDomain:
|
||||
personName = 'actor'
|
||||
|
@ -232,20 +222,17 @@ def webfingerLookup(path: str, baseDir: str,
|
|||
if not path.startswith('/.well-known/webfinger?'):
|
||||
return None
|
||||
handle = None
|
||||
resourceTypes = ('acct', 'group')
|
||||
for resType in resourceTypes:
|
||||
if 'resource=' + resType + ':' in path:
|
||||
handle = path.split('resource=' + resType + ':')[1].strip()
|
||||
handle = urllib.parse.unquote(handle)
|
||||
if debug:
|
||||
print('DEBUG: WEBFINGER handle ' + handle)
|
||||
break
|
||||
elif 'resource=' + resType + '%3A' in path:
|
||||
handle = path.split('resource=' + resType + '%3A')[1]
|
||||
handle = urllib.parse.unquote(handle.strip())
|
||||
if debug:
|
||||
print('DEBUG: WEBFINGER handle ' + handle)
|
||||
break
|
||||
resType = 'acct'
|
||||
if 'resource=' + resType + ':' in path:
|
||||
handle = path.split('resource=' + resType + ':')[1].strip()
|
||||
handle = urllib.parse.unquote(handle)
|
||||
if debug:
|
||||
print('DEBUG: WEBFINGER handle ' + handle)
|
||||
elif 'resource=' + resType + '%3A' in path:
|
||||
handle = path.split('resource=' + resType + '%3A')[1]
|
||||
handle = urllib.parse.unquote(handle.strip())
|
||||
if debug:
|
||||
print('DEBUG: WEBFINGER handle ' + handle)
|
||||
if not handle:
|
||||
if debug:
|
||||
print('DEBUG: WEBFINGER handle missing')
|
||||
|
|
Loading…
Reference in New Issue