memex/asset/style.css
2018-07-18 06:18:42 +12:00

243 lines
5.2 KiB
CSS

/* VARIABLES */
:root {
/* COLOR */
--color-menu0: #000; /* bg */
--color-menu1: #333; /* low */
--color-menu2: #999; /* mid */
--color-menu3: #ddd; /* high */
--color-bg: #ddd; /* bg main */
--color-content0: #ccc; /* bg */
--color-content1: #bbb; /* low */
--color-content2: #999; /* mid */
--color-content3: #000; /* high */
/* SIZE */
--menu-width: 150px;
--menu-item-vert-sep: 20px; /*vertical space between menu items*/
--menu-item-elem-sep: 10px; /*horizontal space between menu item count and icon*/
--menu-item-spacer: 30px; /*vertical space between menu types (types to terms, terms to tags)*/
--menu-tag-sep: 10px; /*space between tag items*/
--size-gutter: 20px;
--size-grid-column: 350px;
--size-item-corner: 3px;
--size-item-elem-padding: 1em; /*vertical space between grid item internal elements (tags, notes, quotes etc)*/
--size-item-elem-sep: 0.75em; /*horizontal space between item element icon and element text (tag icon and tags)*/
--size-font-title: 1em;
--size-font-body: 0.8em;
--type-icon-size: 24px; /*font size of type icon/count*/
}
html {
font-family: 'Monaco', 'Andale Mono', 'Deja Vu Sans Mono', 'Consolas', monospace;
background: var(--color-bg);
box-sizing: border-box;
padding: 0em;
margin: 0;
}
* {
box-sizing: border-box;
}
body {
padding: 0em;
margin: 0;
}
/* MENU */
.menu {
background: var(--color-menu0);
padding-top: var(--size-gutter);
width: var(--menu-width);
position: fixed;
height: 100%;
z-index: 100;
left: 0px;
top: 0px;
}
.menu a {
color: var(--color-menu1);
}
.menu:hover a {
color: var(--color-menu2);
}
.menu:hover a:hover {
color: var(--color-menu3);
}
.menu-spacer {
height: var(--menu-item-spacer);
width: 100%;
float: left;
}
/* MENU ITEMS */
.menu-item {
padding-top: calc(var(--menu-item-vert-sep) / 2);
padding-bottom: calc(var(--menu-item-vert-sep) / 2);
font-size: var(--type-icon-size);
box-sizing: border-box;
margin: 0px auto;
width: 100%;
float: left;
}
.menu-item .count {
padding-right: calc(var(--menu-item-elem-sep) / 2);
display: inline-block;
text-align: right;
float: left;
width: 50%;
}
.menu-item i {
margin-left: calc(var(--menu-item-elem-sep) / 2);
margin-top: calc(var(--type-icon-size) / 10);
width: calc(var(--type-icon-size) * 1.25);
display: inline-block;
text-align: center;
float: left;
}
/* MENU TAGS */
.menu-tag-container {
margin: 0 auto;
display: table;
}
.menu-tag-container i {
padding-bottom: calc(var(--menu-item-vert-sep) / 2);
padding-top: calc(var(--menu-item-vert-sep) / 2);
font-size: var(--type-icon-size);
color: var(--color-menu1);
display: table-row;
text-align: center;
width: 100%;
float: left;
}
.menu:hover .menu-tag-container i {
color: var(--color-menu2);
}
.menu-tag {
padding-bottom: calc(var(--menu-tag-sep) / 2);
padding-top: calc(var(--menu-tag-sep) / 2);
font-size: var(--size-font-body);
display: table-row;
width: 100%;
float: left;
clear: left;
}
.menu-tag-count {
padding-right: var(--menu-tag-sep);
text-align: right;
float: left;
}
.menu-tag-label {
text-align: left;
float: left;
}
/* CONTENT */
.container {
margin-left: var(--menu-width);
}
.grid {
margin: var(--size-gutter) auto;
}
.grid:after {
/* clearfix */
display: block;
content: '';
clear: both;
}
.grid-item, .grid-item--width2 {
border-radius: var(--size-item-corner);
margin-bottom: var(--size-gutter);
background: var(--color-content0);
width: var(--size-grid-column);
padding: var(--size-gutter);
box-sizing: border-box;
float: left;
}
@media screen and (min-width: 886px) {
.grid-item--width2 {
width: calc(var(--size-grid-column) * 2 + var(--size-gutter));
}
}
.grid-item:hover {
box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, .1);
background: var(--color-content1);
}
/* LINK */
a#url, a#urlseen {
color: var(--color-content2);
text-decoration: underline;
}
.grid-item:hover a#url, .grid-item:hover a#urlseen {
color: var(--color-content3);
}
.grid-item:hover a#url:hover, .grid-item:hover a#urlseen:hover {
background-color: var(--color-content3);
color: var(--color-content1);
}
/* TITLE */
.title {
margin-right: calc(var(--type-icon-size) * 2);
font-size: var(--size-font-title);
color: var(--color-content3);
}
/* LINK, NOTE, QUOTE, TERM, TAGS */
.link, .note, .quote, .term, .tags, .prog {
padding-top: var(--size-item-elem-padding);
font-size: var(--size-font-body);
color: var(--color-content2);
}
.grid-item:hover .link,
.grid-item:hover .note,
.grid-item:hover .quote,
.grid-item:hover .term,
.grid-item:hover .prog
{
color: var(--color-content3);
}
.tags a {
color: var(--color-content2);
text-decoration:none;
}
.grid-item:hover .tags a {
color: var(--color-content3);
}
.grid-item:hover .tags a:hover {
background-color: var(--color-content3);
color: var(--color-content1);
}
.textIcon {
color: var(--color-content1);
margin-right: var(--size-item-elem-sep);
}
.grid-item:hover .textIcon {
color: var(--color-content2);
}
/* TYPE */
#type a {
color: var(--color-content1);
font-size: var(--type-icon-size);
padding: var(--size-gutter);
vertical-align: top;
text-align: center;
position: absolute;
right: 0px;
top: 0px;
}
.grid-item:hover #type a {
color: var(--color-content2);
}
.grid-item:hover #type a:hover {
color: var(--color-content3);
}