styles/xf.theme.less (220 lines of code) (raw):
/* =================================================
Dark theme
==================================================== */
.xf-theme-dark {
@page-bg: #404040;
@text-color: #fff;
@general-border-color: #b2b2b2;
@button-bg-color-start: #fff;
@button-bg-color-end: #bfbfbd;
@button-border-color: rgba(0,0,0,.6);
@button-text-color: #555;
@button-text-shadow-color: rgba(255,255,255,.7);
@button-active-bg-color-start: #6ea5fa;
@button-active-bg-color-end: #2e5fb2;
@button-active-border-color: #315eab;
@button-active-text-color: #fff;
@button-active-text-shadow-color: rgba(0,0,0,.7);
@button-alert-bg-color-start: #fa6e6e;
@button-alert-bg-color-end: #bc0101;
@button-alert-text-color: #fff;
@button-alert-text-shadow-color: rgba(0,0,0,.7);
@input-bg-color: #fff;
@input-active-bg-color: #669cf1;
@input-text-color: #294d8c;
@input-label-color: #333;
@input-placeholder-color: #c8c8cc;
@input-shadow-inset-color: #dcdede;
@header-bg-color-start: #717a80;
@header-bg-color-end: #383d40;
@header-border-color: #212325;
@header-text-color: #e3e3e3;
@header-text-shadow-color: rgba(0,0,0,.7);
/* Footer nav */
@nav-bg-color: #fff;
@nav-item-text-color: #555;
@nav-item-icon-color: #666;
@nav-item-bg-color-start: #fff;
@nav-item-bg-color-end: #bfbfbd;
@nav-item-border-color: #d9d9d9;
@nav-item-active-text-color: #262626;
@nav-item-active-icon-color: #333;
@nav-item-active-bg-color-start: transparent;
@nav-item-active-bg-color-end: transparent;
@nav-item-active-border-color: @nav-item-border-color;
/* Dialogs */
@dialog-dim-color: rgba(255,255,255,.4);
@dialog-box-border-color: transparent;
@dialog-box-bg-color-start: rgba(0,0,0,.7);
@dialog-box-bg-color-end: rgba(0,0,0,.7);
@dialog-box-text-color: #e3e3e3;
@dialog-box-text-shadow-color: #000;
@notification-bg-color: rgba(0,0,0,.7);
@notification-text-color: #e3e3e3;
@notification-text-shadow-color: #000;
/* Page
=========================================== */
body {
background: @page-bg;
color: @text-color;
}
/* Buttons
=========================================== */
.xf-button,
.xf-button-small {
color: @button-text-color;
border:1px solid @button-border-color;
text-shadow: 0 1px 0 @button-text-shadow-color;
//.gradient(@button-bg-color-start, @button-bg-color-end);
background-clip: border-box;
}
.xf-button-small {
}
.xf-button-small-text {
}
.xf-button-back::after {
//.gradient(@button-bg-color-start, @button-bg-color-end, -45deg);
background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0%,@button-bg-color-start), color-stop(100%,@button-bg-color-end));
}
.xf-button-back {
color: @button-text-color;
text-shadow: 0 1px 0 @button-text-shadow-color;
}
.xf-button-back::before {
background: @button-border-color;
}
.xf-button-small:hover {
background-size: 100% 140%;
}
/* Tabs
========================================= */
.xf-tabs {
margin-top: 5px; /* when buttons have borders they are moved 1px up and left */
margin-bottom: 3px; /* so we compensate for the shift here */
padding-left: 1px;
}
.xf-tabs-button {
border: 1px solid @button-border-color;
color: @button-text-color;
text-shadow: 0 1px 0 @button-text-shadow-color;
//.gradient(@button-bg-color-start, @button-bg-color-end);
}
.xf-tabs-button-active {
border-color: @button-active-border-color;
//.gradient(@button-active-bg-color-start, @button-active-bg-color-end);
color: @button-active-text-color;
text-shadow: 0 -1px 0 @button-active-text-shadow-color;
}
.xf-tabs-button:hover {
-webkit-background-size: 100% 150%;
background-size: 100% 150%;
}
.xf-tabs-button-active:hover {
-webkit-background-size: auto;
background-size: auto;
cursor: default;
}
.xf-grid-unit:first-child > .xf-tabs-button {
border-left-width:1px;
}
.xf-tabs-button-text {
font-weight: bold;
}
/* Header
========================================== */
.xf-header {
//.gradient(@header-bg-color-start, @header-bg-color-end);
border-bottom: 1px solid @header-border-color;
}
.xf-header-title {
color: @header-text-color;
text-shadow: 0 1px 0 @header-text-shadow-color;
}
/* Footer nav
===================================== */
.xf-nav {
border-top:1px solid @nav-bg-color;
background: @nav-bg-color;
color: @nav-item-text-color;
}
.xf-nav-item {
color: @nav-item-text-color;
background: -moz-linear-gradient(top, @nav-item-bg-color-start 0%, @nav-item-bg-color-end 50%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, @nav-item-bg-color-start), color-stop(50%,@nav-item-bg-color-end));
background: -webkit-linear-gradient(top, @nav-item-bg-color-start 0%, @nav-item-bg-color-end 50%);
background: -o-linear-gradient(top, @nav-item-bg-color-start 0%, @nav-item-bg-color-end 50%);
background: -ms-linear-gradient(top, @nav-item-bg-color-start 0%, @nav-item-bg-color-end 50%);
background: linear-gradient(top, @nav-item-bg-color-start 0%, @nav-item-bg-color-end 50%);
background-color: #585f63;
border-top: 1px solid @nav-item-border-color;
}
.xf-nav-item .xf-icon {
color: @nav-item-icon-color;
}
.xf-nav-item-active {
//.gradient(@nav-item-active-bg-color-start, @nav-item-active-bg-color-end);
border-color: @nav-item-active-border-color;
color: @nav-item-active-text-color;
}
.xf-nav-item-active .xf-icon {
color: @nav-item-active-icon-color;
}
.xf-nav-item:hover {
background-repeat: no-repeat;
-webkit-background-size: 100% 130%;
background-size: 100% 130%;
}
/* Forms
======================================= */
.xf-input-text,
.xf-input-split,
.xf-input-radio,
.xf-input-checkbox,
.xf-switch {
background: @input-bg-color;
border-color: @general-border-color;
color: @input-label-color;
}
.xf-input-text {
color: @input-text-color;
background: @input-bg-color;
box-shadow: inset 0 1px 2px @input-shadow-inset-color;
}
.xf-input-text:focus {
outline: none;
border-color: darken(@general-border-color, 25%);
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
color: @input-placeholder-color;
}
.xf-input-number-control {
color: @text-color;
}
.xf-input-split-input {
color: @input-text-color;
}
.xf-input-select select {
border-color: @general-border-color;
}
/* Special classes that override others.
* Have to be last
=============================================== */
.xf-button-active,
.xf-button-special {
border: 1px solid @button-active-border-color;
//.gradient(@button-active-bg-color-start, @button-active-bg-color-end);
color: @button-active-text-color;
text-shadow: 0 1px 0 @button-active-text-shadow-color;
}
.xf-button-back.xf-button-active:before,
.xf-button-back.xf-button-special:before {
background: @button-active-border-color;
}
.xf-button-back.xf-button-active:after {
//.gradient(@button-active-bg-color-start, @button-active-bg-color-end, -45deg);
background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0%,@button-active-bg-color-start), color-stop(100%, @button-active-bg-color-end));
}
.xf-button-alert {
//.gradient(@button-alert-bg-color-start, @button-alert-bg-color-end);
color: @button-alert-text-color;
text-shadow: 0 1px 0 @button-alert-text-shadow-color;
}
.xf-button:hover,
.xf-button-small:hover {
background-size: 100% 140%;
}
/* Dialogs
===================================== */
.xf-dialog {
background: @dialog-dim-color;
}
.xf-dialog-box {
border:0px solid @dialog-box-border-color;
//.gradient(@dialog-box-bg-color-start, @dialog-box-bg-color-end);
text-shadow: 0 1px 0 @dialog-box-text-shadow-color;
color: @dialog-box-text-color;
//background-image: none;
background-color: transparent;
}
.xf-notification {
background: @notification-bg-color;
color: @notification-text-color;
text-shadow: 0 1px 0 @notification-text-shadow-color;
}
/* Overrides specific for Dark theme
===================================== */
.xf-header {
.border-box;
border: 1px solid #212325;
-webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.2),
0 1px 1px rgba(0,0,0,.55);
box-shadow: inset 0 1px 0 rgba(255,255,255,.2),
0 1px 1px rgba(0,0,0,.55);
}
}