html {
--bg-page: #306;
--bg-dark: #002;
--fg: #dcf;
--hl: #dcf;
--fg-subtle: #a9c;
--fg-limited: #a79;
}
@media (prefers-color-scheme: dark) {
.noise img:not(.emu) {
opacity: .5;
transition: opacity .5s ease-in-out;
}
.noise img:not(.emu):hover {
opacity: 1;
}
}
body {
background: var(--bg-page);
color: var(--fg);
font-size: 1em;
word-wrap: break-word;
font-family: sans-serif, "Noto Color Emoji";
line-height: 1.2;
overscroll-behavior-y: contain;
}
pre, code {
white-space: pre-wrap;
}
blockquote {
margin-left: 0em;
margin-bottom: 0em;
padding-left: 0.5em;
border-left: 1px solid var(--fg-subtle);
}
cite {
margin-left: 2em;
}
table {
display: block;
max-width: 100%;
overflow-x: auto;
}
a {
color: var(--fg);
}
form, input, textarea {
font-family: monospace, "Noto Color Emoji";
}
p {
margin-top: 1em;
margin-bottom: 1em;
}
input {
background: var(--bg-page);
color: var(--fg);
font-size: 1.0em;
line-height: 1.2em;
padding: 0.4em;
}
#honkform input {
font-size: 0.8em;
}
body > header {
margin: 1em auto;
font-size: 1.5em;
}
body > header span {
margin-left: 2em;
}
body > header p {
padding: 1em;
}
header > details {
background: var(--bg-page);
padding: 1em 1em 1em 1em;
position: fixed;
top: 0;
left: 0;
display: inline;
max-height: calc(100% - 1em);
overflow: auto;
opacity: 0.7;
overscroll-behavior: contain;
z-index: 2;
}
header > details[open] {
padding: 1em 1em 0em 1em;
background: var(--bg-dark);
border: 1px solid var(--hl);
margin-bottom: 1em;
opacity: 1.0;
}
header > details summary span {
display: none;
}
header > details[open] summary span {
display: inline;
}
header > details li {
margin: 1em 0em 1em 0em;
}
details summary {
cursor: pointer;
}
main {
max-width: 1200px;
margin: auto;
font-size: 1.5em;
}
hr {
border-color: var(--hl);
}
.info {
background: var(--bg-dark);
border: 1px solid var(--hl);
margin-bottom: 1em;
padding: 0em 1em 0em 1em;
}
.info div {
margin-top: 1em;
margin-bottom: 1em;
}
label {
font-size: 0.8em;
}
label.button, button, select {
font-size: 16px;
font-family: monospace;
color: var(--fg);
background: var(--bg-page);
border: 1px solid var(--hl);
padding: 0.5em;
white-space: nowrap;
}
.buttonarray {
margin-top: -2.0em;
}
.buttonarray button, .buttonarray > span {
margin-top: 2.0em;
display: inline-block;
}
button a {
text-decoration: none;
}
button {
cursor: pointer;
}
form {
margin-top: 1em;
}
textarea {
padding: 0.5em;
font-size: 1em;
background: var(--bg-page);
color: var(--fg);
width: 100%;
height: 4em;
margin-bottom: 0.5em;
box-sizing: border-box;
max-width: 100%;
}
textarea#honknoise {
height: 10em;
}
input[type="checkbox"] {
position: fixed;
top: -9999px;
}
input[type="checkbox"] + span:after {
content: "no";
}
input[type="checkbox"]:checked + span:after {
content: "yes";
}
input[type="checkbox"]:focus + span:after {
outline: 1px solid var(--fg);
}
input[type=file] {
display: none;
}
.glow {
box-shadow: 0px 0px 16px var(--hl);
}
.honk {
margin: auto;
background: var(--bg-dark);
border: 1px solid var(--hl);
border-radius: 1em;
margin-bottom: 1em;
padding-left: 1em;
padding-right: 1em;
padding-top: 0;
overflow: hidden;
}
.level1 {
margin-left: 0.5em;
}
.level1::before {
position: absolute;
content: ">";
}
.level2 {
margin-left: 1.0em;
}
.level2::before {
position: absolute;
content: ">>";
}
.level3 {
margin-left: 1.5em;
}
.level3::before {
position: absolute;
content: ">>>";
}
.level4 {
margin-left: 2.0em;
}
.level4::before {
position: absolute;
content: ">>>>";
}
.chat {
border-bottom: 0.5px solid var(--fg-subtle);
padding-left: 1em;
}
.chat p {
margin-top: 0.2em;
margin-bottom: 0.2em;
}
.chattarget {
border-bottom: 1px solid var(--fg-subtle);
}
.chatstamp {
margin-left: -1em;
}
.honk #honkform {
padding: 1em;
border: 1px solid var(--fg);
}
.honk a {
color: var(--fg);
}
.honk header {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
font-size: 0.8em;
line-height: 1.1;
margin-top: 1em;
height: 64px;
}
.honk header .clip a {
color: var(--fg-subtle);
}
.honk header img {
float: left;
margin-right: 1em;
width: 64px;
height: 64px;
}
.honk header p {
margin-top: 0px;
}
.honk .actions button {
margin-left: 4em;
margin-top: 2em;
}
.honk .noise {
line-height: 1.4;
}
.honk .noise code .kw { font-weight: bold; }
.honk .noise code .bi { font-weight: bold; }
.honk .noise code .st { color: var(--fg-subtle); }
.honk .noise code .nm { color: #ba88ff; }
.honk .noise code .op { color: #ba88ff; }
.honk .noise code .tp { font-weight: bold; }
.honk .noise code .cm { color: var(--fg-subtle); font-style: italic; }
.honk .noise code .al { color: #aaffbb; }
.honk .noise code .dl { color: #ffaabb; }
.honk details.actions summary {
color: var(--fg-subtle);
}
#emupicker{height:300px;overflow-y:scroll;padding:3px;background:var(--bg-dark);border:solid 5px var(--fg-subtle);text-align:center;display:none;}
#emupicker img{margin:0;}
.emuload{background:var(--bg-page);padding:0.5em;}
.subtle .noise {
color: var(--fg-subtle);
}
.subtle details.noise {
font-size: 0.8em;
}
.subtle .noise a {
color: var(--fg-subtle);
}
.limited {
border: 1px solid var(--fg-limited);
color: var(--fg-limited);
}
.limited .glow {
box-shadow: 0px 0px 16px var(--fg-limited);
}
.limited .noise {
color: var(--fg-limited);
}
.limited .noise a {
color: var(--fg-limited);
}
.limited details.actions summary {
color: var(--fg-limited);
}
details.noise[open] summary.noise {
display: none;
}
h1, h2 {
font-size: 1.2em;
}
h3, h4 {
font-size: 1.1em;
}
img:not(.emu) {
background: var(--bg-page);
}
img, video {
max-width: 100%;
max-height: 600px;
}
.noise img:not(.emu) {
display: block;
}
img.emu {
height: 2em;
vertical-align: middle;
object-fit: contain;
}
.nophone {
position: fixed;
opacity: 0.7;
cursor: pointer;
}
@media screen and (max-width: 1360px) {
.nophone {
display: none;
}
}
@media screen and (max-width: 740px) {
body {
font-size: 12px;
}
.honk header {
height: 52px;
}
.honk header img {
width: 48px;
height: 48px;
}
details summary {
outline: none;
}
}
@media print {
#topmenu, #topspacer, #infobox, #refreshbox, .actions {
display: none;
}
html {
--bg-page: white;
--bg-dark: white;
--fg: black;
--fg-subtle: black;
--fg-limited: #a79;
}
}
/*
* CSP: style-src: self
*/
li.details {
list-style-type: none;
margin-left: -1em;
}
.left1em {
margin-left: 1em;
}
.hide {
display: none;
}
.text-left {
text-align: left;
}
.text-right {
text-align: right;
}
.text-center {
text-align: center;
}
.font08em {
font-size: 0.8em;
}
.font18em {
font-size: 1.8em;
}
.wsnowrap {
white-space: nowrap;
}
.skinny main {
max-width: 700px;
}
.fontmonospace {
font-family: monospace;
}