aboutsummaryrefslogtreecommitdiff
path: root/static
diff options
context:
space:
mode:
authorXe Iaso <me@christine.website>2022-12-28 12:14:08 -0500
committerXe Iaso <me@christine.website>2022-12-28 12:14:08 -0500
commitb292f3830e43830308ebd8e8d17ab38e9ed2461b (patch)
tree951d70bbdbc1592d1984d322bec9cdbaaf558d59 /static
parent3299a4fa2a58ba07b182b9f169493ba33dfbd6bb (diff)
downloadxesite-b292f3830e43830308ebd8e8d17ab38e9ed2461b.tar.xz
xesite-b292f3830e43830308ebd8e8d17ab38e9ed2461b.zip
Update to axum 0.6
Closes #579 Closes #580 Signed-off-by: Xe <me@christine.website>
Diffstat (limited to 'static')
-rw-r--r--static/css/artemis.css125
-rw-r--r--static/css/gruvbox-dark.css256
-rw-r--r--static/css/hack.css803
-rw-r--r--static/css/no-fun-allowed.user.css10
-rw-r--r--static/css/shim.css114
-rw-r--r--static/css/snow.css31
6 files changed, 1339 insertions, 0 deletions
diff --git a/static/css/artemis.css b/static/css/artemis.css
new file mode 100644
index 0000000..515f5bd
--- /dev/null
+++ b/static/css/artemis.css
@@ -0,0 +1,125 @@
+.artemis {
+ font-family: sans-serif;
+ line-height: 1.6;
+ font-size: 18px;
+ color: #fbf5ef;
+ background-color: #272744;
+ margin: 1em auto;
+ max-width: 750px;
+ padding: 0 0.55em
+}
+
+.artemis h1,h2,h3 {
+ line-height: 1.2
+}
+
+.artemis h1 {
+ margin-top: 1em;
+ margin-bottom: 0.34em
+}
+
+.artemis h2 {
+ margin-top: 1.25em;
+ margin-bottom: 0.41em
+}
+
+.artemis h3 {
+ margin-top: 1.5em;
+ margin-bottom: 0.5em
+}
+
+.artemis hr {
+ color: #494d7e;
+ background-color: #494d7e;
+ border: none;
+ height: 2px
+}
+
+.artemis a {
+ color: #f2d3ab
+}
+
+.artemis a:visited {
+ color: #f2d3ab
+}
+
+.artemis time {
+ font-weight: bold
+}
+
+.artemis table {
+ width: 100%;
+ outline: none;
+ border-spacing: 0px
+}
+
+.artemis th,td {
+ padding-left: 0.7em;
+ padding-right: 0.7em;
+ padding-top: 0.4em;
+ padding-bottom: 0.4em
+}
+
+.artemis table,th,td {
+ border: 1px solid #494d7e
+}
+
+.artemis code {
+ font-family: monospace
+}
+
+.artemis :not(pre) code {
+ background-color: #494d7e;
+ padding-left: 0.1em;
+ padding-right: 0.1em;
+ border-radius: 2px
+}
+
+.artemis img {
+ border: 0.1em solid #494d7e
+}
+
+.artemis video {
+ border: 0.1em solid #494d7e
+}
+
+.artemis img.right {
+ float: right;
+ margin-left: 1em
+}
+
+.artemis img.left {
+ float: left;
+ margin-right: 0.5em
+}
+
+.artemis img.full {
+ width: 100%;
+ height: auto
+}
+
+.artemis img.half {
+ width: 50%;
+ height: auto
+}
+
+.artemis img.emoji {
+ width: auto;
+ height: 0.75em;
+ border: none
+}
+
+.artemis pre {
+ font-family: monospace;
+ line-height: 1.45;
+ overflow-x: auto;
+ background-color: #494d7e;
+ padding: 0.2em;
+ border-radius: 2px
+}
+
+.artemis pre code {
+ font-size: 0.8em;
+ padding: 0.2em;
+ display: block
+}
diff --git a/static/css/gruvbox-dark.css b/static/css/gruvbox-dark.css
new file mode 100644
index 0000000..327bfa1
--- /dev/null
+++ b/static/css/gruvbox-dark.css
@@ -0,0 +1,256 @@
+.gruvbox-dark {
+ background-color: #1d2021;
+ color: #f9f5d7
+}
+
+.gruvbox-dark h1,
+.gruvbox-dark h2,
+.gruvbox-dark h3,
+.gruvbox-dark h4,
+.gruvbox-dark h5,
+.gruvbox-dark h6 {
+ color: #CDCD23
+}
+
+.gruvbox-dark h1 a,
+.gruvbox-dark h2 a,
+.gruvbox-dark h3 a,
+.gruvbox-dark h4 a,
+.gruvbox-dark h5 a,
+.gruvbox-dark h6 a {
+ color: #d79921;
+ border-bottom-color: #d79921
+}
+
+.gruvbox-dark h1 a:hover,
+.gruvbox-dark h2 a:hover,
+.gruvbox-dark h3 a:hover,
+.gruvbox-dark h4 a:hover,
+.gruvbox-dark h5 a:hover,
+.gruvbox-dark h6 a:hover {
+ background-color: #d79921;
+ color: #fbf1c7
+}
+
+.gruvbox-dark pre {
+ background-color: #1d2021;
+ border: none
+}
+
+.gruvbox-dark pre code {
+ color: #689d6a
+}
+
+.gruvbox-dark .progress-bar-filled:after,
+.gruvbox-dark .progress-bar-filled:before,
+.gruvbox-dark code,
+.gruvbox-dark strong {
+ color: #98971a
+}
+
+.gruvbox-dark .progress-bar-filled {
+ background-color: #98971a
+}
+
+.gruvbox-dark table {
+ color: #fdf4c1
+}
+
+.gruvbox-dark table td,
+.gruvbox-dark table th {
+ border-color: #b0bec5
+}
+
+.gruvbox-dark table tbody td:first-child {
+ color: #b0bec5
+}
+
+.gruvbox-dark .form-control,
+.gruvbox-dark .form-group label {
+ color: #fdf4c1;
+ border-color: #98971a
+}
+
+.gruvbox-dark .form-group.form-textarea label:after {
+ background-color: #282828
+}
+
+.gruvbox-dark .form-control:focus {
+ border-color: #bdae93;
+ color: #bdae93
+}
+
+.gruvbox-dark textarea.form-control {
+ color: #fdf4c1
+}
+
+.gruvbox-dark .card {
+ border-color: #98971a
+}
+
+.gruvbox-dark .card .card-header {
+ background-color: transparent;
+ color: #fdf4c1;
+ border-bottom: 1px solid #98971a
+}
+
+.gruvbox-dark .btn.btn-ghost.btn-default {
+ border-color: #607d8b;
+ color: #607d8b
+}
+
+.gruvbox-dark .btn.btn-ghost.btn-default:focus,
+.gruvbox-dark .btn.btn-ghost.btn-default:hover {
+ z-index: 1;
+ border-color: #ebdbb2;
+ color: #ebdbb2
+}
+
+.gruvbox-dark .btn.btn-ghost.btn-primary:focus,
+.gruvbox-dark .btn.btn-ghost.btn-primary:hover {
+ border-color: #689d6a;
+ color: #689d6a
+}
+
+.gruvbox-dark .btn.btn-ghost.btn-success:focus,
+.gruvbox-dark .btn.btn-ghost.btn-success:hover {
+ border-color: #98971a;
+ color: #98971a
+}
+
+.gruvbox-dark .btn.btn-ghost.btn-info:focus,
+.gruvbox-dark .btn.btn-ghost.btn-info:hover {
+ border-color: #458588;
+ color: #458588
+}
+
+.gruvbox-dark .btn.btn-ghost.btn-error:focus,
+.gruvbox-dark .btn.btn-ghost.btn-error:hover {
+ border-color: #cc241d;
+ color: #cc241d
+}
+
+.gruvbox-dark .btn.btn-ghost.btn-warning:focus,
+.gruvbox-dark .btn.btn-ghost.btn-warning:hover {
+ border-color: #d79931;
+ color: #d79931
+}
+
+.gruvbox-dark .avatarholder,
+.gruvbox-dark .placeholder {
+ background-color: transparent;
+ border-color: #3c3836
+}
+
+.gruvbox-dark .menu .menu-item {
+ color: #fdf4c1;
+ border-color: #98971a
+}
+
+.gruvbox-dark .menu .menu-item.active,
+.gruvbox-dark .menu .menu-item:hover {
+ color: #fdf4c1;
+ border-color: #fdf4c1
+}
+
+.gruvbox-dark a:visited {
+ color: #C1B7A9;
+ border-color: #a89984;
+}
+
+.gruvbox-dark a:visited:hover {
+ color: #fdf4c1;
+ background-color: #282828;
+}
+
+@media (prefers-color-scheme: light) {
+ .gruvbox-dark {
+ background-color: #f9f5d7;
+ color: #1d2021;
+ }
+ .gruvbox-dark h1,
+ .gruvbox-dark h2,
+ .gruvbox-dark h3,
+ .gruvbox-dark h4,
+ .gruvbox-dark h5,
+ .gruvbox-dark h6 {
+ color: #4F4F0D
+ }
+ .gruvbox-dark h1 a:hover,
+ .gruvbox-dark h2 a:hover,
+ .gruvbox-dark h3 a:hover,
+ .gruvbox-dark h4 a:hover,
+ .gruvbox-dark h5 a:hover,
+ .gruvbox-dark h6 a:hover {
+ background-color: #d79921;
+ color: #282828;
+ }
+ .gruvbox-dark pre {
+ background-color: #f9f5d7;
+ padding: 0;
+ border: none;
+ }
+ .gruvbox-dark a {
+ color: #B80050;
+ border-color: #B80050;
+ }
+ .gruvbox-dark a:hover {
+ color: #f9f5d7;
+ background-color: #9E0045;
+ border-color: #9E0045;
+ }
+ .gruvbox-dark a:visited {
+ color: #53493C;
+ border-color: #53493C;
+ }
+ .gruvbox-dark a:visited:hover {
+ color: #fdf4c1;
+ background-color: #282828;
+ }
+ .gruvbox-dark table {
+ color: #1d2021;
+ }
+ .gruvbox-dark .form-control,
+ .gruvbox-dark .form-group label {
+ color: #1d2021;
+ border-color: #98971a
+ }
+ .gruvbox-dark .form-group.form-textarea label:after {
+ background-color: #3c3836;
+ }
+ .gruvbox-dark .form-control:focus {
+ border-color: #665c54;
+ color: #665c54;
+ }
+ .gruvbox-dark textarea.form-control {
+ color: #282828;
+ }
+ .gruvbox-dark .card .card-header {
+ background-color: transparent;
+ color: #282828;
+ border-bottom: 1px solid #98971a
+ }
+ .gruvbox-dark .btn.btn-ghost.btn-default:focus,
+ .gruvbox-dark .btn.btn-ghost.btn-default:hover {
+ z-index: 1;
+ border-color: #3c3836;
+ color: #3c3836;
+ }
+ .gruvbox-dark .menu .menu-item {
+ color: #282828;
+ border-color: #98971a
+ }
+ .gruvbox-dark .menu .menu-item.active,
+ .gruvbox-dark .menu .menu-item:hover {
+ color: #282828;
+ border-color: #282828;
+ }
+ .gruvbox-dark a:visited {
+ color: #4D4442;
+ border-color: #4D4442;
+ }
+ .gruvbox-dark a:visited:hover {
+ color: #3c3836;
+ background-color: #bdae93;
+ }
+}
diff --git a/static/css/hack.css b/static/css/hack.css
new file mode 100644
index 0000000..79666eb
--- /dev/null
+++ b/static/css/hack.css
@@ -0,0 +1,803 @@
+html {
+ font-size: 14px;
+}
+* {
+ box-sizing: border-box;
+ text-rendering: geometricPrecision;
+}
+body {
+ font-size: 1rem;
+ line-height: 1.5rem;
+ margin: 0;
+ font-family: Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono,
+ Bitstream Vera Sans Mono, Courier New, monospace, serif;
+ word-wrap: break-word;
+}
+::selection {
+ background: #d3869b;
+}
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+ line-height: 1.3em;
+}
+fieldset {
+ border: none;
+ padding: 0;
+ margin: 0;
+}
+pre {
+ background-color: #fff;
+ border: 1px solid #ccc;
+ overflow: auto;
+}
+code[class*="language-"],
+pre[class*="language-"],
+pre code {
+ font-weight: 100;
+ text-shadow: none;
+ margin: 1.75rem 0;
+}
+iframe {
+ max-width: 100%;
+}
+a {
+ cursor: pointer;
+ color: #FFA8CE;
+ text-decoration: none;
+ border-bottom: 1px solid;
+ border-color: #FFA8CE;
+}
+a:hover {
+ background-color: #B3004D;
+ color: #fff;
+}
+.grid {
+ display: -ms-flexbox;
+ display: flex;
+ -ms-flex-wrap: wrap;
+ flex-wrap: wrap;
+}
+.grid.\-top {
+ -ms-flex-align: start;
+ align-items: flex-start;
+}
+.grid.\-middle {
+ -ms-flex-align: center;
+ align-items: center;
+}
+.grid.\-bottom {
+ -ms-flex-align: end;
+ align-items: flex-end;
+}
+.grid.\-stretch {
+ -ms-flex-align: stretch;
+ align-items: stretch;
+}
+.grid.\-baseline {
+ -ms-flex-align: baseline;
+ align-items: baseline;
+}
+.grid.\-left {
+ -ms-flex-pack: start;
+ justify-content: flex-start;
+}
+.grid.\-center {
+ -ms-flex-pack: center;
+ justify-content: center;
+}
+.grid.\-right {
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+}
+.grid.\-between {
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+}
+.grid.\-around {
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+}
+.cell {
+ -ms-flex: 1;
+ flex: 1;
+ box-sizing: border-box;
+}
+@media screen and (min-width: 768px) {
+ .cell.\-1of12 {
+ -ms-flex: 0 0 8.33333%;
+ flex: 0 0 8.33333%;
+ }
+ .cell.\-2of12 {
+ -ms-flex: 0 0 16.66667%;
+ flex: 0 0 16.66667%;
+ }
+ .cell.\-3of12 {
+ -ms-flex: 0 0 25%;
+ flex: 0 0 25%;
+ }
+ .cell.\-4of12 {
+ -ms-flex: 0 0 33.33333%;
+ flex: 0 0 33.33333%;
+ }
+ .cell.\-5of12 {
+ -ms-flex: 0 0 41.66667%;
+ flex: 0 0 41.66667%;
+ }
+ .cell.\-6of12 {
+ -ms-flex: 0 0 50%;
+ flex: 0 0 50%;
+ }
+ .cell.\-7of12 {
+ -ms-flex: 0 0 58.33333%;
+ flex: 0 0 58.33333%;
+ }
+ .cell.\-8of12 {
+ -ms-flex: 0 0 66.66667%;
+ flex: 0 0 66.66667%;
+ }
+ .cell.\-9of12 {
+ -ms-flex: 0 0 75%;
+ flex: 0 0 75%;
+ }
+ .cell.\-10of12 {
+ -ms-flex: 0 0 83.33333%;
+ flex: 0 0 83.33333%;
+ }
+ .cell.\-11of12 {
+ -ms-flex: 0 0 91.66667%;
+ flex: 0 0 91.66667%;
+ }
+}
+@media screen and (max-width: 768px) {
+ .grid {
+ -ms-flex-direction: column;
+ flex-direction: column;
+ }
+ .cell {
+ -ms-flex: 0 0 auto;
+ flex: 0 0 auto;
+ }
+}
+.hack,
+.hack blockquote,
+.hack code,
+.hack em,
+.hack h1,
+.hack h2,
+.hack h3,
+.hack h4,
+.hack h5,
+.hack h6,
+.hack strong {
+ font-size: 1rem;
+ font-style: normal;
+ font-family: Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono,
+ Bitstream Vera Sans Mono, Courier New, monospace, serif;
+}
+.hack blockquote,
+.hack code,
+.hack em,
+.hack strong {
+ line-height: 20px;
+}
+.hack blockquote,
+.hack code,
+.hack footer,
+.hack h1,
+.hack h2,
+.hack h3,
+.hack h4,
+.hack h5,
+.hack h6,
+.hack header,
+.hack li,
+.hack ol,
+.hack p,
+.hack section,
+.hack ul {
+ float: none;
+ margin: 0;
+ padding: 0;
+}
+.hack blockquote,
+.hack h1,
+.hack ol,
+.hack p,
+.hack ul {
+ margin-top: 20px;
+ margin-bottom: 20px;
+}
+.hack h1 {
+ position: relative;
+ display: inline-block;
+ display: table-cell;
+ padding: 20px 0 30px;
+ margin: 0;
+ overflow: hidden;
+}
+.hack h1:after {
+ content: "===============================================================================================================================================================";
+ position: absolute;
+ bottom: 10px;
+ left: 0;
+}
+.hack h1 + * {
+ margin-top: 0;
+}
+.hack h2,
+.hack h3,
+.hack h4,
+.hack h5,
+.hack h6 {
+ position: relative;
+ margin-bottom: 1.75rem;
+}
+.hack h2:before,
+.hack h3:before,
+.hack h4:before,
+.hack h5:before,
+.hack h6:before {
+ display: inline;
+}
+.hack h2:before {
+ content: "## ";
+}
+.hack h3:before {
+ content: "### ";
+}
+.hack h4:before {
+ content: "#### ";
+}
+.hack h5:before {
+ content: "##### ";
+}
+.hack h6:before {
+ content: "###### ";
+}
+.hack li {
+ position: relative;
+ display: block;
+ padding-left: 20px;
+}
+.hack li:after {
+ position: absolute;
+ top: 0;
+ left: 0;
+}
+.hack ul > li:after {
+ content: "-";
+}
+.hack ol {
+ counter-reset: a;
+}
+.hack ol > li:after {
+ content: counter(a) ".";
+ counter-increment: a;
+}
+.hack blockquote {
+ position: relative;
+ padding-left: 17px;
+ padding-left: 2ch;
+ overflow: hidden;
+}
+.hack blockquote:after {
+ content: ">\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>";
+ white-space: pre;
+ position: absolute;
+ top: 0;
+ left: 0;
+ line-height: 20px;
+}
+.hack em:after,
+.hack em:before {
+ content: "*";
+ display: inline;
+}
+.hack pre code:after,
+.hack pre code:before {
+ display: none;
+}
+.hack code {
+ font-weight: 700;
+}
+.hack code:after,
+.hack code:before {
+ content: "`";
+ display: inline;
+}
+.hack hr {
+ position: relative;
+ height: 20px;
+ overflow: hidden;
+ border: 0;
+ margin: 20px 0;
+}
+.hack hr:after {
+ content: "---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------";
+ position: absolute;
+ top: 0;
+ left: 0;
+ line-height: 20px;
+ width: 100%;
+ word-wrap: break-word;
+}
+@-moz-document url-prefix() {
+ .hack h1 {
+ display: block;
+ }
+}
+.hack-ones ol > li:after {
+ content: "1.";
+}
+p {
+ margin: 0 0 1.75rem;
+}
+.container {
+ max-width: 70rem;
+}
+.container,
+.container-fluid {
+ margin: 1em auto;
+ padding: 0 1rem;
+}
+.inner {
+ padding: 1rem;
+}
+.inner2x {
+ padding: 2rem;
+}
+.pull-left {
+ float: left;
+}
+.pull-right {
+ float: right;
+}
+.progress-bar {
+ height: 8px;
+ opacity: 0.8;
+ background-color: #ccc;
+ margin-top: 12px;
+}
+.progress-bar.progress-bar-show-percent {
+ margin-top: 38px;
+}
+.progress-bar-filled {
+ background-color: gray;
+ height: 100%;
+ transition: width 0.3s ease;
+ position: relative;
+ width: 0;
+}
+.progress-bar-filled:before {
+ content: "";
+ border: 6px solid transparent;
+ border-top-color: gray;
+ position: absolute;
+ top: -12px;
+ right: -6px;
+}
+.progress-bar-filled:after {
+ color: gray;
+ content: attr(data-filled);
+ display: block;
+ font-size: 12px;
+ white-space: nowrap;
+ position: absolute;
+ border: 6px solid transparent;
+ top: -38px;
+ right: 0;
+ -ms-transform: translateX(50%);
+ transform: translateX(50%);
+}
+table {
+ width: 100%;
+ border-collapse: collapse;
+ margin: 1.75rem 0;
+ color: #778087;
+}
+table td,
+table th {
+ vertical-align: top;
+ border: 1px solid #ccc;
+ line-height: 15px;
+ padding: 10px;
+}
+table thead th {
+ font-size: 10px;
+}
+table tbody td:first-child {
+ font-weight: 700;
+ color: #333;
+}
+.form {
+ width: 30rem;
+}
+.form-group {
+ margin-bottom: 1.75rem;
+ overflow: auto;
+}
+.form-group label {
+ border-bottom: 2px solid #ccc;
+ color: #333;
+ width: 10rem;
+ display: inline-block;
+ height: 38px;
+ line-height: 38px;
+ padding: 0;
+ float: left;
+ position: relative;
+}
+.form-group.form-success label {
+ color: #4caf50 !important;
+ border-color: #4caf50 !important;
+}
+.form-group.form-warning label {
+ color: #ff9800 !important;
+ border-color: #ff9800 !important;
+}
+.form-group.form-error label {
+ color: #f44336 !important;
+ border-color: #f44336 !important;
+}
+.form-control {
+ outline: none;
+ border: none;
+ border-bottom: 2px solid #ccc;
+ padding: 0.5rem 0;
+ width: 20rem;
+ height: 38px;
+ background-color: transparent;
+}
+.form-control:focus {
+ border-color: #555;
+}
+.form-group.form-textarea label:after {
+ position: absolute;
+ content: "";
+ width: 2px;
+ background-color: #fff;
+ right: -2px;
+ top: 0;
+ bottom: 0;
+}
+textarea.form-control {
+ height: auto;
+ resize: none;
+ padding: 1rem 0;
+ border-bottom: 2px solid #ccc;
+ border-left: 2px solid #ccc;
+ padding: 0.5rem;
+}
+select.form-control {
+ border-radius: 0;
+ background-color: transparent;
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ -ms-appearance: none;
+}
+.help-block {
+ color: #999;
+ margin-top: 0.5rem;
+}
+.form-actions {
+ margin-bottom: 1.75rem;
+}
+.btn {
+ display: -ms-inline-flexbox;
+ display: inline-flex;
+ -ms-flex-align: center;
+ align-items: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ cursor: pointer;
+ outline: none;
+ padding: 0.65rem 2rem;
+ font-size: 1rem;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ position: relative;
+ z-index: 1;
+}
+.btn:active {
+ box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.12);
+}
+.btn.btn-ghost {
+ border-color: #757575;
+ color: #757575;
+ background-color: transparent;
+}
+.btn.btn-ghost:focus,
+.btn.btn-ghost:hover {
+ border-color: #424242;
+ color: #424242;
+ z-index: 2;
+}
+.btn.btn-ghost:hover {
+ background-color: transparent;
+}
+.btn-block {
+ width: 100%;
+ display: -ms-flexbox;
+ display: flex;
+}
+.btn-default {
+ color: #fff;
+ background-color: #e0e0e0;
+ border: 1px solid #e0e0e0;
+ color: #333;
+}
+.btn-default:focus:not(.btn-ghost),
+.btn-default:hover {
+ background-color: #dcdcdc;
+ border-color: #dcdcdc;
+}
+.btn-success {
+ color: #fff;
+ background-color: #4caf50;
+ border: 1px solid #4caf50;
+}
+.btn-success:focus:not(.btn-ghost),
+.btn-success:hover {
+ background-color: #43a047;
+ border-color: #43a047;
+}
+.btn-success.btn-ghost {
+ border-color: #4caf50;
+ color: #4caf50;
+}
+.btn-success.btn-ghost:focus,
+.btn-success.btn-ghost:hover {
+ border-color: #388e3c;
+ color: #388e3c;
+ z-index: 2;
+}
+.btn-error {
+ color: #fff;
+ background-color: #f44336;
+ border: 1px solid #f44336;
+}
+.btn-error:focus:not(.btn-ghost),
+.btn-error:hover {
+ background-color: #e53935;
+ border-color: #e53935;
+}
+.btn-error.btn-ghost {
+ border-color: #f44336;
+ color: #f44336;
+}
+.btn-error.btn-ghost:focus,
+.btn-error.btn-ghost:hover {
+ border-color: #d32f2f;
+ color: #d32f2f;
+ z-index: 2;
+}
+.btn-warning {
+ color: #fff;
+ background-color: #ff9800;
+ border: 1px solid #ff9800;
+}
+.btn-warning:focus:not(.btn-ghost),
+.btn-warning:hover {
+ background-color: #fb8c00;
+ border-color: #fb8c00;
+}
+.btn-warning.btn-ghost {
+ border-color: #ff9800;
+ color: #ff9800;
+}
+.btn-warning.btn-ghost:focus,
+.btn-warning.btn-ghost:hover {
+ border-color: #f57c00;
+ color: #f57c00;
+ z-index: 2;
+}
+.btn-info {
+ color: #fff;
+ background-color: #00bcd4;
+ border: 1px solid #00bcd4;
+}
+.btn-info:focus:not(.btn-ghost),
+.btn-info:hover {
+ background-color: #00acc1;
+ border-color: #00acc1;
+}
+.btn-info.btn-ghost {
+ border-color: #00bcd4;
+ color: #00bcd4;
+}
+.btn-info.btn-ghost:focus,
+.btn-info.btn-ghost:hover {
+ border-color: #0097a7;
+ color: #0097a7;
+ z-index: 2;
+}
+.btn-primary {
+ color: #fff;
+ background-color: #2196f3;
+ border: 1px solid #2196f3;
+}
+.btn-primary:focus:not(.btn-ghost),
+.btn-primary:hover {
+ background-color: #1e88e5;
+ border-color: #1e88e5;
+}
+.btn-primary.btn-ghost {
+ border-color: #2196f3;
+ color: #2196f3;
+}
+.btn-primary.btn-ghost:focus,
+.btn-primary.btn-ghost:hover {
+ border-color: #1976d2;
+ color: #1976d2;
+ z-index: 2;
+}
+.btn-group {
+ overflow: auto;
+}
+.btn-group .btn {
+ float: left;
+}
+.btn-group .btn-ghost:not(:first-child) {
+ margin-left: -1px;
+}
+.card {
+ border: 1px solid #ccc;
+}
+.card .card-header {
+ color: #333;
+ text-align: center;
+ background-color: #ddd;
+ padding: 0.5rem 0;
+}
+.alert {
+ color: #ccc;
+ padding: 1rem;
+ border: 1px solid #ccc;
+ margin-bottom: 1.75rem;
+}
+.alert-success {
+ color: #4caf50;
+ border-color: #4caf50;
+}
+.alert-error {
+ color: #f44336;
+ border-color: #f44336;
+}
+.alert-info {
+ color: #00bcd4;
+ border-color: #00bcd4;
+}
+.alert-warning {
+ color: #ff9800;
+ border-color: #ff9800;
+}
+.media:not(:last-child) {
+ margin-bottom: 1.25rem;
+}
+.media-left {
+ padding-right: 1rem;
+}
+.media-left,
+.media-right {
+ display: table-cell;
+ vertical-align: top;
+}
+.media-right {
+ padding-left: 1rem;
+}
+.media-body {
+ display: table-cell;
+ vertical-align: top;
+}
+.media-heading {
+ font-size: 1.16667rem;
+ font-weight: 700;
+}
+.media-content {
+ margin-top: 0.3rem;
+ word-break: break-word;
+}
+.avatarholder,
+.placeholder {
+ background-color: #f0f0f0;
+ text-align: center;
+ color: #b9b9b9;
+ font-size: 1rem;
+ border: 1px solid #f0f0f0;
+}
+.avatarholder {
+ width: 48px;
+ height: 48px;
+ line-height: 46px;
+ font-size: 2rem;
+ background-size: cover;
+ background-position: 50%;
+ background-repeat: no-repeat;
+}
+.avatarholder.rounded {
+ border-radius: 33px;
+}
+.loading {
+ display: inline-block;
+ content: "&nbsp;";
+ height: 20px;
+ width: 20px;
+ margin: 0 0.5rem;
+ animation: a 0.6s infinite linear;
+ border: 2px solid #e91e63;
+ border-right-color: transparent;
+ border-radius: 50%;
+}
+.btn .loading {
+ margin-bottom: 0;
+ width: 14px;
+ height: 14px;
+}
+.btn div.loading {
+ float: left;
+}
+.alert .loading {
+ margin-bottom: -5px;
+}
+@keyframes a {
+ 0% {
+ transform: rotate(0deg);
+ }
+ to {
+ transform: rotate(1turn);
+ }
+}
+.menu {
+ width: 100%;
+}
+.menu .menu-item {
+ display: block;
+ color: #616161;
+ border-color: #616161;
+}
+.menu .menu-item.active,
+.menu .menu-item:hover {
+ color: #000;
+ border-color: #000;
+ background-color: transparent;
+}
+@media screen and (max-width: 768px) {
+ .form-group label {
+ display: block;
+ border-bottom: none;
+ width: 100%;
+ }
+ .form-group.form-textarea label:after {
+ display: none;
+ }
+ .form-control {
+ width: 100%;
+ }
+ textarea.form-control {
+ border-left: none;
+ padding: 0.5rem 0;
+ }
+ pre::-webkit-scrollbar {
+ height: 3px;
+ }
+}
+@media screen and (max-width: 480px) {
+ .form {
+ width: 100%;
+ }
+}
+
+.signalboost > .cell {
+ padding-right: 1rem;
+ padding-bottom: 2rem;
+}
+.signalboost > .cell > p {
+ margin-top: 0.5rem;
+ margin-bottom: 0.5rem;
+}
diff --git a/static/css/no-fun-allowed.user.css b/static/css/no-fun-allowed.user.css
new file mode 100644
index 0000000..8f9b584
--- /dev/null
+++ b/static/css/no-fun-allowed.user.css
@@ -0,0 +1,10 @@
+/* ==UserStyle==
+@name No Fun Allowed
+@updateURL https://xeiaso.net/static/css/no-fun-allowed.user.css
+==/UserStyle== */
+
+@-moz-document domain("xeiaso.net") {
+ .xeblog-slides-fluff {
+ display: none !important;
+ }
+}
diff --git a/static/css/shim.css b/static/css/shim.css
new file mode 100644
index 0000000..2e1df90
--- /dev/null
+++ b/static/css/shim.css
@@ -0,0 +1,114 @@
+.main {
+ padding: 20px 10px;
+}
+
+.hack h1 {
+ padding-top: 0;
+}
+
+footer.footer {
+ border-top: 1px solid #ccc;
+ margin-top: 80px;
+ margin-top: 5rem;
+ padding: 48px 0;
+ padding: 3rem 0;
+}
+
+img {
+ max-width: 100%;
+}
+
+.conversation {
+ display: flex;
+}
+
+.conversation-picture {
+ flex: 1;
+ min-width: 9rem;
+ max-width: calc(((70rem - 2rem)/6));
+}
+
+.conversation-smol {
+ min-width: 6rem;
+ max-width: 6rem;
+ padding: 0.5rem;
+}
+
+.conversation-chat {
+ align-self: center;
+ min-width: 0;
+}
+
+.gruvbox-dark pre, pre {
+ padding-left: 1em;
+ padding-right: 1em;
+}
+
+.warning {
+ background-color: #282828;
+}
+
+figcaption {
+ background-color: #282828;
+ margin-left: 1em;
+ margin-right: 1em;
+ margin-bottom: 1em;
+}
+
+.logo {
+ background-color: #fdf5d7;
+ -webkit-mask: url("/static/img/xeiaso.svg");
+ -webkit-mask-repeat: no-repeat;
+ -webkit-mask-size: 100%;
+ mask: url("/static/img/xeiaso.svg");
+ mask-repeat: no-repeat;
+ mask-size: 100%;
+ height: 32px;
+ width: 19px;
+ float: left;
+ display: inline;
+ margin: 0.5em;
+}
+
+.ea-placement.ea-type-image {
+ background-color: #282828;
+}
+
+.media {
+ background-color: #32302f;
+ color: #fbf1c7;
+
+ margin: auto;
+ max-width: 80ch;
+ padding: 2ch;
+}
+
+.verified {
+ max-width: 16px;
+ max-height: 16px;
+ min-width: 16px;
+ min-height: 16px;
+}
+
+@media (prefers-color-scheme: light) {
+ .warning {
+ background-color: #fbf1c7;
+ }
+
+ .ea-placement.ea-type-image {
+ background: #fbf1c7;
+ }
+
+ figcaption {
+ background-color: #fbf1c7;
+ }
+
+ .logo {
+ background-color: #1d2021;
+ }
+
+ .media {
+ color: #32302f;
+ background-color: #fbf1c7;
+ }
+}
diff --git a/static/css/snow.css b/static/css/snow.css
new file mode 100644
index 0000000..cdca39e
--- /dev/null
+++ b/static/css/snow.css
@@ -0,0 +1,31 @@
+.snow {
+ background-image:
+