]> git.plutz.net Git - serve0/blobdiff - style.css
stable sort (keep name order when sorting by lenght)
[serve0] / style.css
index bcd6e378a9e6e105ddfd2dd7d5b12eb7bfcc85a4..f1e18816f4613b9fd78f3fe795f5d3f9186239c8 100644 (file)
--- a/style.css
+++ b/style.css
 * {
   box-sizing: border-box;
+  margin: 0; padding: 0;
+  text-align: left;
 }
+button { padding: .125em .5em; }
+a { color: inherit; text-decoration: none;}
+
+input {
+  border: 1px solid;
+  padding: .25em .5em;
+  line-height: 1em;
+  vertical-align: bottom;
+}
+input[type=number] { padding-right: 0; }
+input[type=radio], input[type=checkbox] { vertical-align: baseline; }
+select {
+  border: 1px solid;
+  padding: .125em .5em;
+}
+select[multiple] { padding: 0; }
+select[multiple] option { padding: .25em .5em; }
 
 body {
   color: white;
   background-color: black;
-  margin: 0;
-  padding: 0;
+  min-height: 100%;
 }
 
-input.toggle {
-  display: none;
-}
-input.toggle + label + * {
-  display: block;
-  overflow: hidden;
-  height: 0;
-}
-input.toggle:checked + label + * { height: auto; }
 
-#search {
+/* ###  Main Page Elements ### */
+
+#navigation{
+  position: relative;
   text-align: center;
-  background-color: #333;
-  padding: .25em;
   border-bottom: 1px solid;
-  margin: 0;
+  background-color: #333;
 }
 
-label[for=t_prefs] {
+#editing,
+#multitag {
+  position: fixed;
+  bottom: 0; width: 100%;
+  padding: .25em 0;
+  border-top: 1px solid;
+  background-color: #333;
+}
+
+#search { display: inline; }
+
+a[href="#prefs"],
+a[href="#bookmarks"] {
   position: absolute;
+  top: 0;
+  margin: 0 .25em;
   font-size: 1.5em;
-  top: 0; right: .25em;
 }
+a[href="#prefs"] { right: 0; }
+a[href="#bookmarks"] { left: 0; }
 
-#t_prefs:checked + label + #prefs {
+a[href="#advsearch"] { margin-left: .5em; }
+a[href="#advsearch"]:before {
+  content: '\25b8';
+  margin: 0 .5em;
+}
+
+
+/* ###  Expandable Drawers  ### */
+
+#prefs, #bookmarks, #multitag, #advsearch {
+  display: block; position: absolute;
+  max-height: 0; width: 100%; max-width: 100%;
+  margin-top: -1px;
+  padding: 0 1em;
+  border: 1px none;
+  overflow: hidden;
   background-color: #333;
-  border: 1px solid;
-  border-top: none;
-  border-right: none;
-  padding: .5em 1em;
-  margin: 0;
-  position: relative;
-  top: -1px;
-  width: 13em;
+  transition: max-height .3s linear;
+  z-index: 1;
+}
+#bookmarks {
+  left: 0; width: 30%;
+  min-width: 300px;
+  margin-right: auto;
+}
+#prefs {
+  right: 0; width: 20%;
+  min-width: 200px;
   margin-left: auto;
 }
+#advsearch {
+  text-align: center;
+}
+
+#advsearch:target, #multitag:target,
+#prefs:target, #bookmarks:target {
+  max-height: 25em; overflow-y: scroll;
+}
+#advsearch:target { border-style: none none solid none; }
+#prefs:target { border-style: none none solid solid; }
+#bookmarks:target { border-style: none solid solid none; }
+#multitag:target { border-style: solid none none none; }
+
+#advsearch a[href="#"],
+#multitag a[href="#"],
+#bookmarks a[href="#"],
+#prefs a[href="#"] {
+  display: block;
+  line-height: 2em;
+  font-weight: bold;
+  background-color: inherit;
+}
+-#prefs a[href="#"] { width: 2.5em; left: auto; }
+-#bookmarks a[href="#"] { width: 2.5em; right: auto; }
+#advsearch a[href="#"] { border-bottom: 1px solid; }
+
+
+/* ###  Preferences Drawer  ### */
 
 #prefs label[for=prefs_ps] {
   font-weight: bold;
 }
 #prefs #prefs_ps {
-  max-width: 3em;
+  max-width: 4em;
   margin-bottom: 1em;
 }
 #prefs button {
-  margin-top: 1em;
+  margin: 1em 0;
 }
 #prefs input { vertical-align: top; }
 #prefs input[type=radio] + label,
@@ -64,43 +135,276 @@ label[for=t_prefs] {
   max-width: 85%;
 }
 
-.itemlist { overflow: hidden;}
+
+/* ###  Bookmarks Drawer  ### */
+
+#bookmarks input,
+#bookmarks button {
+  margin-bottom: 1.25em;
+}
+#bookmarks label {
+  display: block;
+  font-weight: bold;
+  word-break: break-word;
+  overflow: hidden;
+}
+#bookmarks a.link {
+  display: inline-block;
+  font-size: .75em;
+  text-decoration: underline;
+  margin: 0 1em 1.25em 0;
+}
+
+
+/* ###  Advance Search Drawer  ###*/
+
+#advsearch .help {
+  display: block;
+  margin: 1em .5em 1em .5em;
+  padding: .5em 1em;
+  background-color: #444;
+  line-height: 1.5em;
+}
+
+#advsearch input.and {display: none;}
+#advsearch input.and + label {display: none}
+#advsearch input.and + label + .select {
+  display: inline-block;
+  position: relative;
+  width: 100%; min-width: 0; max-width: 0;
+  min-height: 12em;
+  overflow: hidden;
+  vertical-align: top;
+  border: none;
+  transition: max-width .3s linear;
+}
+#advsearch .submit {
+  display: inline-block;
+  width: 100%;
+  vertical-align: top;
+}
+
+#advsearch input.and + label:nth-of-type(2),
+#advsearch input.and:checked + label + .select + input + label {
+  display: inline-block;
+  vertical-align: top;
+  margin: 0 .5% 1em .5%;
+  width: 4%; min-width: 4em;
+  padding: .5em 0;
+  text-align: center;
+  font-weight: bold;
+  border: 1px solid;
+}
+
+#advsearch input.and:checked + label + .select + input:checked + label,
+#advsearch input.and:checked + label:nth-of-type(2),
+#advsearch input.and:checked + label { display: none; }
+
+#advsearch input.and + label + .select:first-of-type,
+#advsearch input.and:checked + label + .select {
+  min-width: 200px; max-width: 100%;
+  margin: 0 .5% 1em .5%;
+  border: 1px solid;
+}
+
+@media (min-width: 460px){
+#advsearch .submit,
+#advsearch input.and + label + .select:first-of-type,
+#advsearch input.and:checked + label + .select {
+  width: 49%;
+} }
+@media (min-width: 660px){
+#advsearch .submit,
+#advsearch input.and + label + .select:first-of-type,
+#advsearch input.and:checked + label + .select {
+  width: 32%;
+} }
+@media (min-width: 860px){
+#advsearch .submit,
+#advsearch input.and + label + .select:first-of-type,
+#advsearch input.and:checked + label + .select {
+  width: 24%;
+} }
+@media (min-width: 1060px){
+#advsearch .submit,
+#advsearch input.and + label + .select:first-of-type,
+#advsearch input.and:checked + label + .select {
+  width: 19%;
+} }
+
+#advsearch .submit { min-height: 0; }
+#advsearch .submit * { width: 50%; }
+
+#advsearch .select input.pol {
+  margin: .5em .25em 0 .5em;
+}
+#advsearch .select input.pol + label {
+  font-weight: bold;
+}
+#advsearch .select label.head {
+  display: block;
+  font-weight: bold;
+  padding: .5em 0 0 .5em;
+  border-bottom: 1px solid;
+}
+
+#advsearch .select select {display: none;}
+#advsearch .select input.cat { display: none; }
+#advsearch .select input.cat + label {
+  display: block;
+  margin-right: 50%;
+  padding: .25em .5em;
+  font-size: 1.125em;
+  border-bottom: 1px solid;
+}
+#advsearch .select input.cat:checked + label {
+  background-color: #444;
+}
+#advsearch .select input.cat:checked + label + select {
+  display: block;
+  position: absolute;
+  top: 3.5em; bottom: 0;
+  right: 0; left: 50%;
+  width: 50%;
+}
+
+
+/* ###  Item Listing  ### */
+
 .list {
   position: relative;
-  display: block; float: left;
-  width: 25%;
-  min-width: 250px;
-  padding: .5em 1em;
-  margin: 0;
-  overflow: none;
-  word-wrap: break-word;
+  display: inline-block;
+  width: 100%;
+  padding: .375em;
   vertical-align: top;
+  overflow: hidden;
 }
-.list, .list a { color: black; }
+
+.list.dir { padding: .5em 1em; }
 .list:before {
   position: absolute;
   top: .25em; left: .25em;
   bottom: .25em; right: .25em;
-  z-index: -2;
   content: '';
+  z-index: -2;
 }
+.list.dir:before { background-color: #CCF; color: black; }
+.list.file:before { background-color: #333; }
 .list.file:first-of-type { clear: left; }
-.list.dir:before { background-color: #CCF; }
-.list.file:before { background-color: #FDD; }
 
-.list.file img {
+.list.file a img{
   display: block;
   width: 100%;
+  min-height: 4em;
+  border-bottom: 1px solid black;
+}
+.list.file a + label{
+  display: inline-block;
+  width: 100%; max-height: 2.5em;
+  margin-right: -10em;
+  padding: .25em .5em;
+  word-break: break-word;
+  background-color: #222;
+  overflow: hidden;
 }
+
+.list.file .time, .list.file .dim {
+  float: right; position: relative;
+  display: inline-block;
+  top: -1.5em; bottom: 1.5;
+  margin-right: .125em;
+  padding: .125em .25em;
+  background-color: rgba(0,0,0,.75);
+}
+
+.list.file .tag,
+.list.file input + label {
+  display: inline-block;
+  margin: .125em -.125em 0 0;
+  padding: .125em .5em;
+  color: black;
+  background-color: #DCC;
+}
+
+.list.file input[type="checkbox"] { display: none; }
+.list.file input[type="checkbox"] + label {
+  border: 1px solid;
+  background-color: #ECC;
+}
+.list.file input[type="checkbox"]:checked + label {
+  background-color: #8F8;
+}
+
+.itemlist,
 .pagination {
   display: block;
   text-align: center;
   margin-top: 1em;
 }
+.pagination { margin-bottom: 3em;}
 .page {
   display: inline-block;
+  margin: 0 .125em;
   padding: .25em .5em;
-  background-color: #FAA;
+  color: #DAA;
+  background-color: #000;
   border: 1px solid;
 }
-.page:nth-of-type(1) {clear: left;}
+.page.current {
+  font-weight: bold;
+  color: black;
+  background-color: #FDD;
+  border-color: #DAA;
+}
+
+#index label:first-of-type { font-weight: bold; }
+#index input, #index button { margin-left: 1em;}
+
+
+/* ###  Video View  ### */
+
+body#view { padding-bottom: 6em; }
+
+#view h1 {
+  max-width: 100%;
+  margin: 1em 0; padding: 0 .5em;
+  font-size: 1.25em;
+  font-weight: bold;
+  word-break: break-word;
+  text-decoration: none;
+}
+
+#view #mainvideo {
+  display: inline;
+  width: 100%;
+  max-height: 70%;
+}
+
+#view .time, #view .dim,
+#view .tag {
+  margin-right: -.125em;
+  padding: .125em .25em;
+  color: black;
+}
+#view .time,
+#view .dim { background-color: #CCD; }
+#view .tag { background-color: #DCC; }
+
+
+
+/* ###  Multi Tagging Drawer  ### */
+
+#multitag fieldset{
+  display: inline-block;
+  width: 100%;
+  vertical-align: top;
+  padding: 0 .25em;
+  border: none;
+}
+
+@media (min-width: 520px) { .list, #multitag fieldset { width: 50%; min-width: 250px; } }
+@media (min-width: 760px) { .list, #multitag fieldset { width: 33%; } }
+@media (min-width: 1020px){ .list, #multitag fieldset { width: 25%; } }
+
+#multitag fieldset * { width: 100%; }
+#multitag fieldset button { width: 50%; }