worlio-themes/core/style.css

2155 lines
43 KiB
CSS

/* == BUTTONS */ @import url('css/buttons.css');
/* = TABBED CONTAINERS */ @import url('css/tabbed-container.css');
/* Prevent automatic browser scaling and non-linear rendering */
.pixel,
nav,
.button,
.centerdiv,
.heading
{
image-rendering: crisp-edges;
image-rendering: -moz-crisp-edges;
image-rendering: -webkit-optimize-contrast;
image-rendering: pixelated;
}
/* Remove Scrollbars */
.no-scroll,
nav
{
scrollbar-width: none;
-ms-overflow-style: none;
}
.no-scroll::-webkit-scrollbar,
nav::-webkit-scrollbar,
nav.top::-webkit-scrollbar {
display: none;
}
div.grower { flex-grow: 1; }
p img,
body > img {
max-width: 100%;
}
h1 img,
h2 img {
width: 32px;
}
table {
border-collapse: collapse;
width: 100%;
}
textarea {
resize: vertical;
width: 100%;
}
textarea, input {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
@media only screen and (orientation: landscape) {
:target::before {
content: "";
display: block;
height: 64px;
margin: -64px 0 0;
}
/* Center primary portion of page */
body > .page-container {
margin-left: auto;
margin-right: auto;
max-width: 1200px;
}
}
@media only screen and (orientation: portrait) {
:target::before {
content: "";
display: block;
height: 128px;
margin: -128px 0 0;
}
}
/* = STATUS */
.status.success, .output .success {color: var(--status-success);}
.status.error, .output .error {color: var(--status-error);}
/* = ARROW */
hr.arrow {
border: none; border-left: none;
background-image: url('//style.worlio.com/icons/arrow/arrows');
background-size: 200% 200%;
height: 24px;
width: 24px;
margin: 22px 2px 2px 2px;
}
hr.arrow.slideout { background-position: 0 0; }
hr.arrow.right { background-position: 100% 0; }
hr.arrow.up { background-position: 0 100%; }
hr.arrow.down { background-position: 100% 100%; }
/* = OVERLAY DIALOGS */
body > div.overlay {
position: fixed;
top: 0px; bottom: 0px; left: 0px; right: 0px;
z-index: 20;
background-color: #0006;
width: 100%;
height: 100%;
}
body > div.overlay .dialog {
background: linear-gradient(180deg, #ffffff 0%, #f3dca9 8px);
border: 1px outset #a48e65;
margin: 16px auto;
}
body > div.overlay .dialog.tiplist { max-width: 400px; max-height: 80%; }
body > div.overlay .dialog table {
width: 100%;
max-width: unset;
margin: 0px;
}
body > div.overlay .dialog table th, body > div.overlay .dialog table td { padding: 4px; }
body > div.overlay .dialog table.titlebox { font-family: var(--primary-font); }
body > div.overlay .dialog table.titlebox img.close-button {
cursor: pointer;
user-select: none;
}
body > div.overlay .dialog table tr th:nth-of-type(1) {
text-align: left;
}
body > div.overlay .dialog table:not(.titlebox) {
background: #b3b3b3;
border: 1px outset #636363;
display: block;
height: 400px;
overflow: auto;
}
/* = PAGE SELECTORS */
div.page-selector {
display: inline-flex;
margin: 2px;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
div.page-selector div.pagebutton {
background: var(--default-button-background);
border: var(--default-button-border);
text-align: center;
padding: 0px;
min-width: 24px;
height: 24px;
}
div.page-selector div.pagebutton:hover {
background: var(--hover-button-background);
border: var(--hover-button-border);
}
div.page-selector div.pagebutton:active {
background: var(--active-button-background);
border: var(--active-button-border);
}
div.page-selector div.pagebutton.disabled {
background: var(--disabled-button-background);
border: var(--disabled-button-border);
}
div.page-selector div.pagebutton a,
div.page-selector div.pagebutton a:link,
div.page-selector div.pagebutton a:visited {
font-family: var(--primary-font);
font-size: 12px;
text-decoration: none;
color: var(--main-text);
display: inline-block;
width: 100%;
height: 100%;
}
div.page-selector div.pagebutton.curpage a,
div.page-selector div.pagebutton.curpage a:link,
div.page-selector div.pagebutton.curpage a:visited {
font-weight: bold;
color: var(--alert);
cursor: pointer;
}
div.page-selector div.pagebutton.backpage { border-right: none; }
div.page-selector div.pagebutton.forwpage { border-left: none; }
/* == USER CARDS */
.usercard {
--main-text: #000000;
background-image: var(--usercard-image, none);
background-color: var(--usercard-color, var(--secondary-container-background));
color: var(--main-text, #000000);
border: 1px solid #7e7e7e;
padding: 8px;
background-position: 50% 50%;
font-family: var(--primary-font);
text-shadow:
-1px -1px 0 var(--usercard-outline),
0px -1px 0 var(--usercard-outline),
1px -1px 0 var(--usercard-outline),
-1px 0px 0 var(--usercard-outline),
-1px 1px 0 var(--usercard-outline),
0px 1px 0 var(--usercard-outline),
1px 1px 0 var(--usercard-outline),
1px 0px 0 var(--usercard-outline);
}
.usercard div.aframe {
display: inline-block;
}
.usercard .aframe {
background-size: 100%;
width: 128px; height: 128px;
}
.usercard .aframe.small {
image-rendering: auto;
width: 64px; height: 64px;
}
/* == MAIN BODY */
body {
background-color: var(--main-background);
background-image: var(--background-image);
color: var(--main-text, #000000);
margin: 8px;
position: absolute;
left: 0px; right: 0px;
}
@media only screen and (orientation: landscape) {
body {
top: 0px;
left: 64px;
}
}
/* == NAVIGATION BARS */
nav {
background-color: var(--main-nav);
font-family: var(--primary-font);
position: fixed;
top: 0px;
left: 0px;
z-index: 10;
font-size: 14px;
}
nav .logo {
width: 48px;
padding: 0px;
margin: 2px;
}
/* = TOP BAR */
nav.top {
display: block;
background-image: var(--navbar-top);
background-position: 0px 100%;
background-color: var(--acc-nav);
background-repeat: repeat-x;
background-size: auto 64px;
position: fixed;
height: 36px;
padding: 0px;
z-index: 10;
white-space: nowrap;
flex-shrink: 1;
}
nav.top div.navcenter {
display: flex;
max-width: 1200px;
height: 36px;
margin: auto;
overflow: visible;
border-right: var(--acc-nav-separator);
}
nav.top .navbutton-bar {
padding-left: 4px;
overflow-x: scroll;
overflow-y: hidden;
}
nav.top div.slideout {
position: relative;
height: 32px;
z-index: 3;
margin: 2px;
transition-duration: 0.05s;
flex-shrink: 0;
}
nav.top div.slideout:not(.active) {
cursor: pointer;
}
nav.top div.slideout.active {
width: 264px;
}
nav.top div.slideout .upbutton img { margin: 4px 8px; }
nav.top div.slideout .dropdown {
font-family: var(--primary-font);
background: var(--navbar-bg), linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, var(--acc-nav) 8px);
background-position: 0 0, 0px 100%;
background-color: var(--acc-nav);
background-repeat: repeat, repeat-x;
background-size: auto auto, auto 64px;
border: var(--acc-nav-separator);
border-top: none;
overflow: hidden;
width: 100%;
height: 32px;
position: relative;
z-index: 2;
padding: 1px 3px;
white-space: nowrap;
transition-duration: 0.05s;
}
nav.top div.slideout.account .dropdown {
margin: -2px -4px;
}
nav.top div.slideout:not(.active):hover .dropdown {
background: var(--navbar-bg), linear-gradient(0deg, var(--acc-nav) 0%, rgba(0,0,0,0.05) 8px);
}
nav.top div.slideout .dropdown .clicker {
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
height: 34px;
}
nav.top div.slideout.account .panel {
display: flex;
flex-direction: column;
}
nav.top div.slideout.account .panel .user-column,
nav.top div.slideout.account .panel .button-column {
display: block;
height: 50%;
}
nav.top div.slideout.account.active .dropdown { height: 112px; }
nav.top.guest div.slideout.account.active .dropdown { height: 112px; }
nav.top div.slideout.mail.active .dropdown,
nav.top div.slideout.alerts.active .dropdown { height: 352px; }
nav.top div.slideout .dropdown .right {
pointer-events: none;
display: none;
opacity: 0;
float: right;
transition-duration: 1s;
}
nav.top div.slideout.active .dropdown .right {
pointer-events: unset;
display: block;
opacity: 1;
}
nav.top div.slideout .dropdown .right.text {
margin: 8px;
}
nav.top div.slideout.alerts .dropdown .alerts,
nav.top div.slideout.mail .dropdown .mail {
text-align: left;
border: 2px inset var(--acc-nav);
background: #2221;
margin: 2px;
height: 300px;
overflow-y: auto;
overflow-x: hidden;
width: 256px;
white-space: break-spaces;
white-space: pre-wrap;
}
nav.top div.slideout.alerts .dropdown .alerts .alert,
nav.top div.slideout.mail .dropdown .mail .message {
margin: 4px;
font-family: var(--primary-font);
background-color: var(--primary-container-background);
border: var(--primary-container-border);
padding: 4px;
}
nav.top div.slideout.alerts .dropdown .alerts .alert.unread,
nav.top div.slideout.mail .dropdown .mail .message.unread {
background-color: #d0dadf;
outline: 1px solid #0088ff;
}
nav.top div.slideout.alerts.active .dropdown .clicker img,
nav.top div.slideout.mail.active .dropdown .clicker img {
float: left;
vertical-align: middle;
margin: 2px 4px;
}
nav.top div.slideout.alerts.active .dropdown .clicker .counter,
nav.top div.slideout.mail.active .dropdown .clicker .counter {
display: inline-block;
text-align: left;
width: 162px;
margin-top: 6px;
}
nav.top div.slideout.alerts .dropdown .alerts .alert a,
nav.top div.slideout.mail .dropdown .mail .message a {
text-decoration: underline;
}
nav.top div.slideout.alerts .dropdown .alerts .alert .info,
nav.top div.slideout.mail .dropdown .mail .message .info {
display: flex;
color: var(--subtitle);
font-size: 12px;
}
nav.top div.slideout.account { width: 132px; }
nav.top div.slideout.account.active { width: 256px; }
nav.top div.slideout.mail,nav.top div.slideout.alerts {
display: block;
width: 32px;
margin: 0px 2px;
text-align: center;
}
nav.top div.slideout.active.mail,nav.top div.slideout.active.alerts { width: 262px; }
nav.top div.slideout.mail .dropdown,nav.top div.slideout.alerts .dropdown {
padding: 1px;
}
nav.top div.slideout.mail .counter,nav.top div.slideout.alerts .counter {
margin-top: -8px;
display: block;
}
nav.top div.slideout.mail .counter.new,nav.top div.slideout.alerts .counter.new {
color: var(--alert);
}
nav.top div.slideout.account .username {
display: block;
height: 38px;
margin: -1px;
}
nav.top div.slideout.account .dropdown .mycon {
margin: 2px 4px 0px 0px;
}
nav.top div.slideout.account .dropdown .username .currency {
height: 16px;
}
nav.top div.slideout.account .dropdown .username .currency img {
height: 100%;
margin: 0px 1px;
padding: 0px 2px;
vertical-align: center;
}
nav.top div.slideout.account .dropdown .username .currency a {
color: var(--currency);
}
nav.top div.slideout .dropdown .username .userlink {
margin: 0px;
}
nav.top div.slideout .username .arrow {
position: relative;
opacity: 0.3;
float: right;
margin: 2px auto !important;
width: 16px !important;
height: 16px !important;
}
nav.top div.slideout .username .user-icon {
vertical-align: top;
}
nav.acc .slideout.active .dropdown .currency a[type="short"] { display: none; }
nav.acc .dropdown .currency a[type="extended"] { display: none; }
nav.acc .slideout.active .dropdown .currency a[type="extended"] { display: unset; }
nav.top p {
margin: 0px;
text-align: center;
}
nav.top.alert {
background-color: var(--dialog-bg);
height: unset;
min-height: 28px;
max-height: 64px;
padding: 2px;
overflow: auto;
z-index: 5;
}
nav.top.alert .close {
background-image: url('//style.worlio.com/icons/close');
background-size: 100%;
width: 16px;
height: 16px;
padding: 4px;
cursor: pointer;
margin-right: 8px;
float: left;
}
nav.top.alert p {
text-align: unset;
white-space: pre-line;
}
/* Felt cute, might delete later. */
nav.top .navbutton-bar .button {
background-color: var(--active-button-background);
border-bottom: none;
width: unset;
margin-top: 2px;
padding: 6px;
}
nav.top .navbutton-bar .button:hover {
background-color: var(--hover-button-background);
}
nav.top .navbutton-bar .button.selected {
background-image: var(--background-image);
background-color: var(--default-button-background);
}
@media only screen and (orientation: landscape) {
nav {
width: 60px;
padding: 0px 2px;
background-image: var(--navbar-left);
background-repeat: repeat-y;
background-size: 100%;
height: 100%;
}
body > div.navgap:not(.acc) {
height: 0px;
}
body > div.navgap.acc {
height: 34px;
}
nav hr {
width: 100%;
border: 1px solid black;
}
nav .logo {
display: block;
}
nav.top {
width: calc(100% - 64px);
top: 0px;
left: 64px;
}
nav.top > .navRight .dropdown h3 {
width: 128px;
}
nav.top > .navRight .dropdown:hover h3 {
text-decoration: underline;
}
nav.top.alert {
top: 36px;
}
nav .popbutton.selected:not(:hover) {
background-image: var(--background-image);
background-color: var(--main-background);
border-right: none;
width: 56px;
font-size: 0px;
}
}
@media only screen and (orientation: portrait) {
nav {
background-image: var(--navbar-top);
background-repeat: repeat-x;
background-size: 64px;
width: 100%;
height: 60px;
padding: 2px 0px;
overflow-y: hidden;
overflow-x: auto;
scrollbar-width: none;
-ms-overflow-style: none;
white-space: nowrap;
}
body > div.navgap:not(.acc) {
height: 66px;
}
body > div.navgap.acc {
height: 34px;
}
nav.top {
overflow-x: unset;
overflow-y: unset;
}
nav hr {
margin: 0px 2px;
border: none;
border: 1px solid black;
width: 0px;
display: inline-block;
height: 48px;
}
nav .logo {
display: inline-block;
}
nav > a {
transform: rotate(-90deg);
display: inline-block;
vertical-align: top;
height: 100%;
}
nav.top {
width: 100%;
top: 64px;
left: 0px;
}
nav.top > .dropdown h3 {
width: 36px;
}
nav.top.alert {
top: 100px;
}
nav.top div.slideout.account { width: 32px; }
nav.top div.slideout.account:not(.active) .dropdown .username *:not(.mycon) { display: none; }
nav.top div.slideout.account:not(.active) .dropdown .username .mycon { margin: 2px; }
}
/* == HEADING/HEADER */
.header {
display: flex;
margin-bottom: 8px;
}
.header > .gap { flex-grow: 1;}
.header > .title {
border: var(--primary-container-border);
border-top: none;
flex-shrink: 0; flex-grow: 0;
background-color: var(--primary-container-background);
padding: 8px;
font-family: var(--primary-font);
font-weight: bold;
margin: -8px 4px 8px 4px;
}
.tabbed-container > .header {
margin-bottom: 0;
margin-top: -8px;
padding-top: 8px;
}
.heading {
z-index: 10;
display: block;
background-repeat: repeat-x;
overflow-y: hidden;
overflow-x: auto;
white-space: nowrap;
border: none;
font-family: var(--primary-font);
}
.heading > div.head-contents {
max-width: 1200px;
margin-left: auto; margin-right: auto;
}
.heading.main {
position: sticky;
background-size: 64px;
height: 60px;
}
.heading {
background-color: var(--header-bg);
background-image: var(--navbar-top);
}
.heading.sub,
.heading.section {
height: 28px;
}
.heading.sub {
background-size: 64px;
background-position-y: -32px;
}
.heading.section {
background-size: 32px;
background-image: var(--nav-db);
background-color: var(--header-bg);
font-size: 1.5em;
}
.heading.main > div.head-contents > a {
font-size: 2em;
}
.heading > div.head-contents > a {
margin: 0px 0px 0px 4px;
display: inline-block;
font-weight: bold;
height: 100%;
}
.heading p {
font-size: 0.75em;
display: inline-block;
}
.heading.main img {
height: 48px;
}
.heading.main i {
margin-left: 16px;
font-weight: normal;
font-size: 1.5em !important;
}
.heading hr {
margin: 0px 8px;
border: none;
border-left: var(--header-line);
width: 0px;
display: inline-block;
height: 75%;
}
.header div.buttontab {
background: var(--default-button-background);
border: var(--default-button-border);
margin: -12px 4px 8px 4px;
padding: 8px 4px 2px 4px;
font-size: 12px;
}
.header div.buttontab a {
color: var(--main-text);
display: inline-block;
text-decoration: none;
font-family: var(--primary-font);
height: 100%;
}
.header div.buttontab a img {
vertical-align: middle;
}
.header div.buttontab:hover {
background: var(--hover-button-background);
border: var(--hover-button-border);
}
.header div.buttontab:active {
background: var(--active-button-background);
border: var(--active-button-border);
}
@media only screen and (orientation: landscape) {
.heading {
width: calc(100% + 8px);
padding: 2px 4px;
left: 64px;
}
.heading.main,
.heading.sub {
top: 0px;
}
.heading.main { margin: -8px; margin-bottom: 8px; }
.heading.sub { margin: -8px; margin-bottom: 8px; }
.heading.section { margin: 4px -8px; }
body > .header-title {
top: -8px;
margin-bottom: -8px;
}
/* Center header */
body > .header {
max-width: 1200px;
margin-left: auto;
margin-right: auto;
}
}
@media only screen and (orientation: portrait) {
.heading {
margin: -8px;
margin-top: -16px;
margin-bottom: 8px;
padding: 2px 0px;
width: 100%;
left: 0px;
}
.heading.main {
top: 64px;
}
.heading.sub {
top: 128px;
}
body > .header-title {
top: -16px;
margin-bottom: -16px;
}
}
/* == ACCFORM PAGES */
body.accform .page-container .formpart {
max-width: 400px;
margin: 32px;
text-align: center;
}
body.accform .page-container .formpart hr {
border: 1px inset rgba(0,0,0,0.5);
}
body.accform .page-container .formpart .assets,
body.accform .page-container .formpart .accinput {
flex-grow: 1;
padding: 8px;
}
body.accform .options .option { display: flex; }
body.accform .options .option .name {
font-family: var(--primary-font);
flex-shrink: 0;
flex-grow: 1;
text-align: right;
padding: 2px;
}
body.accform .options .option input,
body.accform .options .option select,
body.accform .options .option textarea, {
flex-grow: 0;
}
body.accform .page-container .formpart h2 {
font-family: var(--spfont1);
}
body.accform .page-container .formpart .error {
color: var(--error);
}
body.accform .page-container .formpart .buttonbar {
display: flex;
}
body.accform img.bg-icon-overlay {
position: absolute;
bottom: 0; right: 0;
width: 50vh; height: 50vh;
/* width: 100vh; height: 100vh; */
opacity: 0.25;
z-index: -100;
}
body.accform ul.errors {
text-align: left;
color: red;
}
/* == HOME PAGE */
@media (orientation: portrait) {
body.home .page-container {
display: flex;
flex-direction: column;
}
body.home .page-container .section {
width: 100%;
margin: 0px 4px;
}
}
@media (orientation: landscape) {
body.home .page-container .section { width: 50%; margin: 0px -2px; }
body.home .page-container .section .container { padding: 4px; }
}
body.home .logo img {
max-height: 256px;
max-width: 100%;
}
body.home .logo .slogan {
font-family: var(--primary-font);
font-weight: bold;
font-size: 24px;
text-align: center;
}
body.home .page-container .section .mainbox {
background: var(--primary-container-background);
border: var(--primary-container-border);
padding: 2px;
}
body.home .page-container .section {
display: inline-block;
vertical-align: top;
}
body.home .page-container .section .container {
margin: 8px 0px;
}
body.home .page-container .section .container .title {
border: var(--primary-container-border);
border-bottom: none;
background: var(--primary-container-background);
display: inline-block;
padding: 8px;
font-weight: bold;
font-family: var(--primary-font);
margin-bottom: -2px;
}
body.home .page-container .footer {
display: flex;
}
/* == BLOG */
body.blog .page-container .month {
display: grid;
grid-template-columns: repeat(3, 1fr);
}
body.blog .page-container .article {
background: var(--primary-container-background);
border: var(--primary-container-border);
margin: 4px;
}
body.blog .page-container .article .date,
body.blog .page-container .article .link { padding: 4px; }
body.blog .page-container .article .date { text-align: right; }
body.blog .page-container .article .link { font-weight: bold; }
/* == LIBRARY */
/* == DASHBOARD */
@media (orientation: portrait) {
body.dashboard .dash-container {
display: flex;
flex-direction: column-reverse;
}
body.dashboard .section {
width: 100%;
margin: 0px 4px;
}
}
@media (orientation: landscape) {
body.dashboard .dash-container {
max-width: 1000px;
margin: auto;
}
body.dashboard .section { margin: 0px -2px; }
body.dashboard .section .container { padding: 4px; }
body.dashboard .primary { width: 60%; }
body.dashboard .sidebar { width: 40%; }
}
body.dashboard .dash-container .mainbox:not(.usercard) {
background: var(--primary-container-background);
border: var(--primary-container-border);
padding: 2px;
}
body.dashboard .profile-tag {
font-family: var(--primary-font);
display: flex;
}
body.dashboard .profile-tag img {
padding: 4px;
}
body.dashboard .section {
display: inline-block;
vertical-align: top;
}
body.dashboard .section .container {
margin: 8px 0px;
}
body.dashboard .dash-title {
border: var(--primary-container-border);
border-bottom: none;
background: var(--primary-container-background);
display: inline-block;
padding: 8px;
font-weight: bold;
font-family: var(--primary-font);
margin-bottom: -2px;
}
body.dashboard .dash-title.ulink { padding: 3px 3px 4px 3px; }
body.dashboard .dash-title.currency-mark { position: relative; float: right; top: 24px; }
body.dashboard .dash-title.rlink { float: right; }
body.dashboard .profile-text {
display: flex;
flex-direction: column;
gap: 2px;
}
body.dashboard .profile-role {
font-size: 0.8em;
}
body.dashboard .dash-container .sidebar .userlink.online a {
color: green;
}
body.dashboard .dash-container .sidebar .userlink.invisible {
opacity: 0.3;
}
body.dashboard .stats {
font-family: var(--primary-font);
font-size: 20px;
}
body.dashboard .stats .currency { color: var(--currency); }
body.dashboard .stats .unread { color: var(--alert); }
body.dashboard .userlink img.plan-icon {
position: relative;
margin: 0px 0px 0px -4px;
top: -2px;
}
body.dashboard .dash-container .primary .mainbox .alert {
padding: 4px;
margin: 4px;
background: var(--secondary-container-background);
border: var(--secondary-container-border);
border-style: inset;
}
body.dashboard .dash-container .primary .mainbox .alert.unread .content {
font-weight: bold;
}
body.dashboard .dash-container .primary .mainbox .alert .info {
text-align: right;
color: var(--subtitle);
font-family: var(--primary-font);
}
body.dashboard .dash-container .blogpost {
padding: 4px;
}
body.dashboard .dash-container .blogpost .info {
color: var(--subtitle);
font-family: var(--primary-font);
}
body.dashboard .dash-container .sidebar .container div.filespace meter { flex-grow: 1; margin: 0px 4px;}
body.dashboard .dash-container .sidebar .container div.filespace b { margin-right: 4px;}
body.dashboard .dash-container .sidebar .container div.filespace { display: flex; }
body.dashboard .dash-container .sidebar .container div.filespace a { font-family: var(--primary-font); margin: 0px 2px; }
body.dashboard .dash-container .container.lstann { font-family: var(--primary-font); }
/* == MAIL */
body.mail .page-container table tr:nth-of-type(even) {
background: var(--mail-content-bg);
}
body.message .box {
padding: 0px;
margin: 0px;
}
body.message .box table {
border-collapse: separate;
margin: 0px;
}
body.message .box table th {
text-align: left;
}
body.message .box table tr.title-row {
font-size: 20px;
position: sticky;
top: 0px;
}
body.message .box table tr.title-row th {
background: var(--forum-sub);
border: var(--forum-sub-border);
}
body.message .box table tr.header-row {
background: var(--post);
border-left: var(--post-border); border-right: var(--post-border);
}
body.message .box table:first-of-type(tr.header_row) {
border-top: var(--post-border);
}
body.message .box table:last-of-type(tr.header_row) {
border-bottom: var(--post-border);
}
/* == FORUM */
body.forum table.board-display {
background: var(--forum-header);
border: var(--forum-header-border);
font-family: var(--primary-font);
table-layout: fixed;
margin: 4px;
}
body.forum table.board-display tr.sub-row {
background: var(--forum-sub);
border: var(--forum-sub-border);
}
body.forum table.board-display th,
body.forum table.board-display td {
padding: 4px;
}
body.forum.index .page-container > table.board-display tr.title-row {
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
cursor: pointer;
}
body.forum table.board-display tr.title-row .button { vertical-align: top; }
body.forum table.board-display tr:not(.title-row):not(.sub-row) {
background: var(--forum-content);
border: var(--forum-content-border);
}
body.forum table.board-display.collapsed tr:not(.title-row) {
display: none;
}
body.forum table.board-display tr td.counter-cell a img {
vertical-align: middle;
}
body.forum table.board-display .thread-status {
text-align: right;
position: relative;
height: 0px;
top: -16px;
left: 4px;
}
body.forum table tr.ralign th:last-child,
body.forum table tr.ralign td:last-child {
text-align: right;
}
body.forum table.board-display tr th:nth-of-type(2) {
text-align: left;
}
body.forum.thread table.board-display {
position: sticky;
}
body.forum.thread table.post-display {
background: var(--post);
border: var(--post-border);
margin: 8px 4px;
table-layout: fixed;
}
body.forum.thread table.post-display td.author-cell,
body.forum.thread table.post-display tr.author-row {
background-image: var(--usercard-image);
background-color: var(--usercard-color, var(--post-author));
border: var(--post-author-border);
}
body.forum.thread table.post-display td.author-cell {
vertical-align: top;
text-align: center;
}
body.forum.thread table.post-display td.author-cell img.avatar {
display: inline-block;
}
body.forum.thread table.post-display tr.button-row,
body.forum.thread table.post-display tr.info-row {
background: var(--post-bottombar);
font-family: var(--primary-font);
color: var(--subtitle);
height: 28px;
}
body.forum.thread table.post-display tr.author-row {
font-family: var(--primary-font);
color: var(--subtitle);
}
body.forum.thread table.post-display td { padding: 4px; }
body.forum.thread table.post-display tr.button-row td:nth-of-type(2) a {
padding: 8px;
}
body.forum.thread table.post-display tr.body-row td {
vertical-align: top;
word-wrap: break-word;
}
body.forum.thread table.post-display tr.body-row td * {
max-width: 100%;
}
body.forum.thread table.post-display .author-cell { width: 168px; }
body.forum.thread table.post-display tr td:nth-of-type(3) { width: 168px; }
body.forum.thread table.poll-display {
background: var(--forum-sub);
border: var(--forum-sub-border);
text-align: left;
}
body.forum.thread table.poll-display tr th,
body.forum.thread table.poll-display tr td { padding: 2px; }
body.forum.thread table.poll-display tr td.bar {
background: linear-gradient(0deg, var(--poll-bar-color) 0%, var(--direct) 75%, var(--poll-bar-color) 100%);
background-size: var(--poll-bar-width) 100%;
color: var(--poll-bar-text);
background-repeat: no-repeat;
}
body.forum.thread table.poll-display tr td.bar.p1st { --poll-bar-color: var(--poll-first-bar); }
body.forum.thread table.poll-display tr td.bar.p2nd { --poll-bar-color: var(--poll-second-bar); }
body.forum.thread table.poll-display tr td.bar.p3rd { --poll-bar-color: var(--poll-third-bar); }
body.forum.thread table.poll-display tr:not(.title-row) {
background: var(--post);
border: var(--post-border);
}
body.forum.thread table.poll-display tr.title-row {
font-family: var(--primary-font);
}
body.forum.thread table.poll-display tr td.ralign { text-align: right; }
body.forum.thread table.poll-display tr.title-row th:nth-of-type(2) button {
background: none;
border: none;
text-decoration: underline;
color: #0000ff;
font-size: 16px;
vertical-align: middle;
cursor: pointer;
}
body.forum.thread table.reply-display {
background: var(--forum-sub);
border: var(--forum-sub-border);
}
body.forum.thread table.reply-display tr th,
body.forum.thread table.reply-display tr td { padding: 2px; }
body.forum.thread table.reply-display tr:not(.title-row) {
background: var(--post);
border: var(--post-border);
}
body.forum.thread table.reply-display tr.title-row th:nth-of-type(1) { text-align: left; }
body.forum.thread table.reply-display tr td:nth-of-type(2) { text-align: right; }
body.forum.thread table.reply-display tr.title-row {
font-family: var(--primary-font);
}
body.forum.thread table.reply-display tr.title-row th:nth-of-type(2) button {
background: none;
border: none;
text-decoration: underline;
color: #0000ff;
font-size: 16px;
vertical-align: middle;
cursor: pointer;
}
body.forum.new table.board-display tr.title-row input {
width: 100%;
margin: -4px;
}
table.board-display#poll[enabled="0"] tr:not(:first-of-type) { visibility: collapse; }
table.board-display#poll input[type="text"] { width: 100%; }
@media only screen and (orientation: landscape) {
body.forum.index .page-container .newest {
display: flex;
width: 100%;
margin: 4px;
}
body.forum.thread table.board-display {
top: -24px;
}
body.forum.thread table.board-display colgroup col:nth-of-type(4),
body.forum.thread table.post-display tr.author-row {
display: none;
}
}
@media only screen and (orientation: portrait) {
body.forum.index .page-container > table.board-display tr td:nth-of-type(4),
body.forum.index .page-container > table.board-display tr th:nth-of-type(2),
body.forum.index .page-container > table.board-display colgroup col:nth-of-type(4),
body.forum.board table.board-display tr td:nth-of-type(4),
body.forum.board table.board-display tr.sub-row td:nth-of-type(2),
body.forum.board table.board-display tr th:nth-of-type(2),
body.forum.board table.board-display colgroup col:nth-of-type(5),
body.forum.thread table.board-display colgroup col:nth-of-type(3),
body.forum.thread table.post-display colgroup col:nth-of-type(3),
body.forum.thread table.post-display colgroup col:nth-of-type(4),
body.forum.thread table.post-display td.author-cell,
body.forum.watched table.board-display tr td:nth-of-type(4),
body.forum.watched table.board-display tr th:nth-of-type(3),
body.forum.watched table.board-display colgroup col:nth-of-type(5),
body.forum.newest table.board-display tr td:nth-of-type(4),
body.forum.newest table.board-display tr th:nth-of-type(3),
body.forum.newest table.board-display colgroup col:nth-of-type(5) { display: none; }
body.forum.thread table.board-display {
top: 40px;
}
body.forum.thread table.post-display tr.author-row {
text-align: left;
vertical-align: top;
}
body.forum.thread table.post-display tr.author-row > th {
text-align: center;
vertical-align: middle;
}
}
/* == SHOP */
body.shop:not(.item) .page-container {
display: flex;
}
body.shop .page-container .sidebar .sidelist {
background: var(--secondary-container-background);
border: var(--secondary-container-border);
max-width: 200px;
display: flex;
flex-direction: column;
padding: 8px;
}
body.shop .page-container .sidebar .sidelist h2,
body.shop .page-container .sidebar .sidelist h3 {
margin: 8px 0px;
}
body.shop .page-container .itembox {
margin: 8px;
}
body.shop .page-container .itembox .item {
display: inline-block;
width: 200px;
margin: 8px;
vertical-align: top;
}
body.shop .page-container .itembox .item .image-box img {
max-width: 100%;
}
body.shop.item .page-container {
max-width: 800px;
}
body.shop.item .page-container h1 {
margin: 4px;
}
body.shop.item .page-container .top {
display: flex;
margin: 8px;
}
body.shop.item .page-container .top .appearance {
min-width: 50%;
}
body.shop.item .page-container .top .appearance .item-image {
background: var(--secondary-container-background);
border: var(--secondary-container-border);
padding: 4px;
}
body.shop.item .page-container .top .appearance .item-image img {
display: block;
margin-left: auto; margin-right: auto;
}
body.shop.item .page-container .top .details {
flex-grow: 1;
padding: 2px;
}
body.shop.item .page-container .items details {
margin: 2px;
padding: 2px;
}
body.shop.item .page-container .items details summary {
background: var(--primary-container-background);
border: var(--primary-container-border);
display: flex;
cursor: pointer;
margin: 4px auto;
}
body.shop.item .page-container .items details .usercard {
margin: 0px auto;
}
body.shop.item .page-container .usercard .userlink {
font-size: 20px;
font-weight: bold;
}
body.shop.item .page-container .usercard .userlink .mycon {
width: 32px;
height: 32px;
}
@media only screen and (orientation: landscape) {
}
@media only screen and (orientation: portrait) {
body.shop.item .page-container .top {
flex-direction: column;
}
body.shop.item .page-container .top .details .button {
display: block;
margin-left: auto;
}
}
/* == USER PROFILE */
body.profile .profile-box {
display: flex;
gap: 4px;
}
body.profile .profile-box .mainbar {
flex-grow: 1;
}
body.profile .profile-box .mainbar,
body.profile .profile-box .sidebar {
margin: 0px 2px;
}
@media only screen and (orientation: landscape) {
body.profile .profile-box {
flex-direction: row;
}
}
@media only screen and (orientation: portrait) {
body.profile .profile-box {
flex-direction: column;
}
}
/* == USER SETTINGS */
body.settings.profile .page-container .usercard {
background-image: var(--usercard-image, none);
background-color: var(--usercard-color, var(--secondary-container-background));
border: 1px solid #7e7e7e;
}
body.settings.profile .page-container div.usercard { width: 400px; }
body.settings.profile .page-container .usercard .userlink {
font-size: 20px;
font-weight: bold;
}
body.settings.profile .page-container .usercard .userlink .mycon {
height: 32px;
}
body.settings.profile table.optlist {
width: 418px;
}
body.settings.profile .page-container label { font-weight: bold; }
body.settings.profile .wdropdown#card button.usercard, .wdropdown#frame button { width: 300px; }
body.settings.profile .wdropdown#card .select { overflow-x: hidden; }
body.settings.profile .wdropdown#frame > button { padding: 2px; }
body.settings.profile .wdropdown#frame > div.select .avatar {
float: left;
margin-right: 2px;
}
/* == MISC */
heading .button {
display: inline-block !important;
}
.file-table {
width: calc(100% - 8px);
border: 1px dotted var(--border-line);
}
.file-table tr {
border-bottom: 1px dotted var(--border-line);
}
.userlink {
display: inline-block;
margin: 4px 0px;
}
.userlink a {
color: var(--main-text);
text-decoration: none;
}
.userlink img {
vertical-align: bottom;
margin-right: 4px;
}
.message-container {
background-color: var(--main-background);
border: var(--primary-container-border);
display: block;
padding: 4px;
margin-right: 8px;
}
.message-container > div {
display: block;
}
.message-container .subject a {
font-size: 18px;
font-weight: bold;
vertical-align: top;
}
.message-container .body {
background-color: var(--primary-container-background);
border: var(--primary-container-border);
padding: 8px;
margin: 4px;
}
.message-container .date {
text-align: right;
}
.live-preview {
vertical-align: top;
overflow: auto;
}
.wrapper {
display: block;
padding: 8px;
}
.wrapper table input {
width: calc(100% - 20px);
}
.account-name {
vertical-align: top;
}
.account-name img {
vertical-align: middle !important;
width: 32px;
display: inline-block;
}
.dropdown:hover .menu, .dropdown:active .menu {
display: block;
}
.button.dropdown > a {
cursor: pointer;
}
.dropdown .menu {
background-image: var(--background-image);
display: none;
position: relative;
background-color: var(--primary-container-background);
border: var(--primary-container-border);
padding: 4px;
right: 152px;
width: 140px;
top: -28px;
}
.dropdown:hover {
background-position-y: 100%;
}
.dropdown .menu.below {
right: 124px;
top: 2px;
}
.upload-table {
width: 512px;
max-width: calc(100% - 32px);
margin: 0px auto;
}
.message-table {
width: 768px;
max-width: calc(100% - 32px);
margin: 0px auto;
}
.message-table input, .message-table textarea {
width: 100%;
}
.double-column-table tr td:nth-of-type(1),
.double-column-table tr th:nth-of-type(1) {
text-align: right;
vertical-align: top;
}
.mail-count {
color: var(--alert);
position: relative;
top: -6px;
right: 28px;
}
.form-container {
background-color: var(--primary-container-background);
border: var(--primary-container-border);
padding: 8px;
margin: 4px;
}
.mailbox a,
.mailbox a:link, .mailbox a:visited {
color: var(--main-text);
text-decoration: none;
}
.mailbox .message,
.userbox .member {
background-color: var(--primary-container-background);
border: var(--primary-container-border);
margin: 4px;
padding: 8px;
}
.emote {
image-rendering: crisp-edges;
image-rendering: -moz-crisp-edges;
image-rendering: -webkit-optimize-contrast;
image-rendering: pixelated;
}
.close {
position: absolute;
background-image: url('icons/deny');
background-size: 100%;
width: 48px;
height: 48px;
cursor: pointer;
top: 8px;
right: 8px;
}
.thricon {
height: 16px;
}
.errors .error {
color: var(--error);
display: block;
}
.userlink { font-family: var(--primary-font); }
.posteditor .editor-buttons .button a > input,
.posteditor .editor-buttons .button a > select {
background: none;
border: none;
height: 100%;
width: 100%;
font-family: var(--primary-font);
}
.posteditor .editbox {
display: flex;
}
.posteditor .editbox textarea#editor { flex-grow: 1; }
canvas#snow {
position: fixed;
top: 0px;
bottom: 0px;
left: 0px;
right: 0px;
pointer-events: none;
z-index: 100;
}
div.emotebox {
width: 256px;
overflow-y: auto;
}
div.emotebox .emote-container {
padding: 2px;
cursor: pointer;
border: 1px solid transparent;
}
div.emotebox .emote-container:hover {
border: var(--menu-border, 1px solid #bdbdbd);
background: var(--menu-bg, #d0d0d0);
}
.mailcontainer {
}
.mailcontainer .subject {
font-family: var(--primary-font);
margin: 2px 2px 0px 2px;
background: var(--mail-subject-bg, #b7b7b7);
border: var(--mail-subject-border, 1px solid #8a8a8a);
padding: 2px;
}
.mailcontainer .subject img,
.mailcontainer .trade-icon {
vertical-align: middle;
}
.mailcontainer .sub {
margin: 0px 8px;
background: var(--mail-sub-bg, #cecece);
border: var(--mail-sub-border, 1px solid #a8a8a8);
border-top: none;
padding: 2px 8px;
}
.mailcontainer .content {
background: var(--mail-content-bg, #dbdbdb);
border: var(--mail-content-border, 1px solid #959595);
border-top: none;
margin: 0px 16px;
padding: 8px 4px 4px 4px;
}
.mailcontainer .buttonbar {
display: flex;
border-top: var(--mail-content-border, 1px solid #959595);
background: var(--mail-buttonbar, #cacaca);
margin: 4px -4px -4px -4px;
}
.mailcontainer .buttonbar .date {
flex-grow: 1;
font-family: var(--primary-font);
padding: 4px;
color: var(--subtitle, #525252);
}
.rating .star-container .stars {
background: url('icons/ratings/star');
height: 100%;
background-size: auto 100%;
max-width: 100%;
}
.rating .star-container {
background-image: url('icons/ratings/unstar');
background-size: 20% 100%;
height: 100%;
cursor: pointer;
}
.rating.large {
height: 48px;
display: inline-block;
}
.rating.large .star-container {
width: 240px;
}
.rating.medium {
height: 24px;
display: inline-block;
}
.rating.medium .star-container {
width: 120px;
}
.rating.small {
height: 12px;
display: inline-block;
}
.rating.small .star-container {
width: 60px;
}
a.thumbnail-box {
display: inline-block;
background-color: #0005;
background-size: cover;
background-repeat: no-repeat;
width: 150px;
height: 150px;
color: var(--main-text);
font-family: var(--primary-font);
text-decoration: none;
margin: 2px;
}
a.thumbnail-box::after {
display: block;
content: "View Image";
height: 20px;
margin: 130px 0px 0px 0px;
text-align: center;
border: var(--primary-container-border);
background-color: var(--primary-container-background);
}
button.user-input {
background: var(--primary-container-background);
border: var(--primary-container-border);
width: 184px;
height: 30px;
text-align: left;
font-family: var(--primary-font);
font-size: 14px;
vertical-align: middle;
cursor: pointer;
}
div.user-input-box {
background: var(--primary-container-background);
border: var(--primary-container-border);
display: flex;
flex-direction: column;
position: absolute;
max-height: 300px;
overflow-y: auto;
}
div.user-input-box > input[type="search"] {
border: none;
flex-shrink: 0;
}
div.user-input-box .userlink > * {
pointer-events: none;
}
/* NEWS */
@font-face {
font-family: Alagard;
src: url(/assets/alagard.ttf) format("truetype");
}
body.news:not(.post) {
--main-background: #fff1e0;
--background-image: none;
font-family: Alagard;
}
body.news:not(.post) .page-container {
color: #7d4310;
}
body.news .news-header h1 {
font-size: 4em;
margin: 4px;
}
body.news .news-header {
text-align: center;
}
body.news .news-header .hr {
display: flex;
}
body.news:not(.post) .page-container hr {
---hr-border: 1px double #7d4310;
border: none;
border-top: var(---hr-border);
border-bottom: var(---hr-border);
min-width: 4px;
height: 2px;
}
body.news:not(.post) .news-header a:link {
margin: auto 8px;
}
body.news:not(.post) .page-container hr:not(.nogrow) {
flex-grow: 1;
width: 100%;
}
body.news .article {
margin: 16px;
}
@media only screen and (orientation: landscape) {
body.news .page-container .articles {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 16px;
grid-template-areas:
"top top top2"
"top top top2"
". . .";
}
body.news .page-container .articles .article:nth-of-type(1) {
grid-area: top;
}
body.news .page-container .articles .article:nth-of-type(2) {
grid-area: top2;
}
}
body.news .article {
display: flex;
flex-direction: column;
}
body.news .article .subject {
font-size: 1.5em;
}
body.news .article .summary {
flex-grow: 1;
white-space: pre-wrap;
}
body.news .article .subj-line,
body.news .article .info-line {
display: flex;
padding: 4px;
}
body.news .article div.gap {
flex-grow: 1;
}
body.news.post h1.article-title {
margin: 2px;
}
body.news.post div.subinfo i {
color: var(--subtitle);
}
/* EDITOR */
.tabbed-container._weditor .tablist .buttonrow {
height: 0px;
overflow: hidden;
}
.tabbed-container._weditor .tablist .buttonrow.visible {
background: var(--tab-selected);
border: var(--tab-border);
border-bottom: none;
padding: 4px 0px 0px 4px;
height: unset;
}
.tabbed-container._weditor .tablist .buttonrow .button {
margin: 0px;
}
.tabbed-container._weditor .box[name="edit"] {
display: flex;
margin: 0px;
padding: 0px;
}
.tabbed-container._weditor .box[name="edit"] textarea {
border: none;
margin: 0px;
}
.tabbed-container._weditor .box[name="preview"] {
font-family: initial;
}
body > ._weditdialog {
background: var(--primary-container-background);
border: var(--primary-container-border);
position: absolute;
width: 300px;
}
body > ._weditdialog .chevron {
background: var(--primary-container-background);
border: var(--primary-container-border);
position: relative;
margin-top: -7px;
width: 8px;
height: 8px;
transform: rotate(45deg);
left: 6px;
border-bottom: none;
border-right: none;
}
body > ._weditdialog .titlerow {
display: flex;
}
body > ._weditdialog .titlerow b.name {
flex-grow: 1;
}
body > ._weditdialog table {
margin: 0px;
}
body > ._weditdialog .buttonrow {
display: flex;
}
body > ._weditdialog table tr th {
text-align: left;
}
div.smiley-list {
max-height: 200px;
overflow-y: scroll;
}
div.smiley-list button {
background: none;
border: none;
padding: 2px;
margin: 2px;
cursor: pointer;
}
/* AD STYLING */
.adbanner img {
max-width: 100%;
}