-* {
- 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;
- min-height: 100%;
+ color: #EEE;
+ background-color: #000;
+ padding-bottom: 2.5em;
}
+/* ====== TOP CONTROL BAR ====== */
-/* ### Main Page Elements ### */
-
-#navigation{
- position: relative;
+#navigation {
text-align: center;
- border-bottom: 1px solid;
+ margin-bottom: 1em; padding: 0 2em;
background-color: #333;
+ box-shadow: .125em .125em .25em #000;
+}
+#navigation > a {
+ position: absolute; bottom: .25em;
+ padding: 0 .125em;
+ font-size: 1.5em;
+ text-decoration: none;
+}
+#navigation > a[href="#bookmarks"] { left: 0; }
+#navigation > a[href="#prefs"] { right: 0; }
+
+#bookmarks, #advsearch, #prefs, #multitag {
+ -display: none;
+ height: 0;
+ overflow: hidden;
}
-#editing,
-#multitag {
+#editing {
position: fixed;
bottom: 0; width: 100%;
- padding: .25em 0;
- border-top: 1px solid;
+ padding: 0 .5em;
background-color: #333;
}
-#search { display: inline; }
-
-a[href="#prefs"],
-a[href="#bookmarks"] {
+:target a[href="#"] {
position: absolute;
- top: 0;
- margin: 0 .25em;
+ top: 0; right: 0;
font-size: 1.5em;
-}
-a[href="#prefs"] { right: 0; }
-a[href="#bookmarks"] { left: 0; }
-
-a[href="#advsearch"] { margin-left: .5em; }
-a[href="#advsearch"]:before {
- content: '\25b8';
- margin: 0 .5em;
+ font-weight: bold;
+ text-decoration: none;
+ padding: 0 .25em;
+ z-index: 1;
}
+/* ====== MAIN LIST VIEW ====== */
-/* ### 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;
+.itemlist { text-align: center; }
+.itemlist > * { text-align: left; }
+.itemlist .list {
+ display: inline-block;
+ vertical-align: top;
+ width: 99%;
+ -padding: 0 .25em;
+ margin: 0 .5%;
+ margin-bottom: 1em;
overflow: hidden;
- background-color: #333;
- 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;
+
+.itemlist .list img {
+ -width: 1000%; height: 11em;
+ max-width: unset;
+ background-color: #111;
+ object-fit: cover;
+ transform: translate(-05%, 0);
+ margin-left: 50%;
}
-#advsearch {
- text-align: center;
+.itemlist .list:hover img {
+ animation: thumbscroll 8s steps(10, end) infinite;
}
-
-#advsearch:target, #multitag:target,
-#prefs:target, #bookmarks:target {
- max-height: 25em; overflow-y: scroll;
+@keyframes thumbscroll {
+ from { transform: translate(-05%, 0);}
+ to { transform: translate(-105%, 0);}
}
-#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="#"] {
+.itemlist .list label {
display: block;
- line-height: 2em;
- font-weight: bold;
- background-color: inherit;
+ font-weight: bolder;
+ word-break: break-word;
+}
+.itemlist .list .time,
+.itemlist .list .dim {
+ position: absolute; top: 9.75em;
+ background-color: rgba(0,0,0,.5);
+ padding: .125em .25em;
+}
+.itemlist .list .time { right: 0; }
+.itemlist .list .dim { left: 0; }
+.itemlist .list input[type=checkbox] { display: none; }
+.itemlist .list .tag,
+.itemlist .list input[type=checkbox] + label {
+ display: inline-block;
+ background-color: #333;
+ margin-top: .125em;
+ margin-left: 0;
+ padding: 0 .25em;
+ border-radius: 1pt;
+}
+.itemlist .list input[type=checkbox]:checked + label {
+ background-color: #383;
}
--#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 ### */
+/* ====== PAGINATION LIST ====== */
-#prefs label[for=prefs_ps] {
- font-weight: bold;
-}
-#prefs #prefs_ps {
- max-width: 4em;
- margin-bottom: 1em;
-}
-#prefs button {
- margin: 1em 0;
+.pagination {
+ display: block;
+ font-size: 1.25em;
+ max-width: 98%;
+ margin: 0 auto;
+ padding: .25em 0;
+ background-color: #333;
+ border-radius: 2pt;
}
-#prefs input { vertical-align: top; }
-#prefs input[type=radio] + label,
-#prefs input[type=checkbox] + label {
+.pagination a {
display: inline-block;
- margin-bottom: .5em;
- max-width: 85%;
+ padding: 0 .5em;
+ margin: 0 .5em;
+ border-radius: 2pt;
+}
+.pagination a.current {
+ background-color: #BBB;
}
+/* ====== BOOKMARK PANEL ====== */
-/* ### Bookmarks Drawer ### */
-
-#bookmarks input,
-#bookmarks button {
- margin-bottom: 1.25em;
+#bookmarks:target,
+#prefs:target {
+ display: block; position: fixed;
+ top: 50%; left: 50%;
+ transform: translate( -50%, -50% );
+ width: 40em; max-width: 90%;
+ height: 30em; max-height: 90vh;
+ background-color: #333;
+ padding: 0 .5em;
+ z-index: 1;
+ box-shadow: .25em .25em .5em #000;
+ overflow-y: auto;
}
+
#bookmarks label {
display: block;
font-weight: bold;
+ font-size: 1.125em;
+ margin-left: 0;
+ margin-top: .75em;
word-break: break-word;
- overflow: hidden;
-}
-#bookmarks a.link {
- display: inline-block;
- font-size: .75em;
- text-decoration: underline;
- margin: 0 1em 1.25em 0;
}
+/* ====== ADVSEARCH / FILTER PANEL ====== */
-/* ### Advance Search Drawer ###*/
+#advsearch:target {
+ display: block; position: fixed;
+ top: 0; width: 100%;
+ height: 30em; max-height: 90vh;
+ background-color: #333;
+ padding: 0 .5em;
+ z-index: 1;
+ box-shadow: .25em .25em .5em #000;
+ overflow-y: auto;
+}
+
+-#advsearch { text-align: center; }
+-#advsearch > * { text-align: left; }
#advsearch .help {
- display: block;
- margin: 1em .5em 1em .5em;
- padding: .5em 1em;
+ width: 95%;
+ margin: 1em auto; padding: 0 .5em;
background-color: #444;
- line-height: 1.5em;
+ white-space: pre-line;
}
-#advsearch input.and {display: none;}
-#advsearch input.and + label {display: none}
-#advsearch input.and + label + .select {
+#advsearch input.and + label {
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;
+ font-weight: bold;
}
-#advsearch .submit {
+#advsearch fieldset.select {
display: inline-block;
- width: 100%;
- vertical-align: top;
+ width: 99%;
+ margin: 0 .5%; margin-bottom: .75em; padding: 0 .375em;
+ box-shadow: .125em .125em .25em #000;
}
-#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 fieldset.select > label.head {
+ display: none;
+ width: 40%;
+ text-align: right;
}
-#advsearch .select label.head {
+#advsearch fieldset.select > input.cat { display: none; }
+#advsearch fieldset.select > input.cat + label + .catselect { display: none; }
+#advsearch fieldset.select > input.cat + label {
display: block;
- font-weight: bold;
- padding: .5em 0 0 .5em;
- border-bottom: 1px solid;
+ width: 40%;
+ margin: 0; padding: 0 .5em;
+ text-align: right;
}
-
-#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 {
+#advsearch fieldset.select > input.cat:checked + label { background-color: #444; }
+#advsearch fieldset.select > input.cat:checked + label + .catselect {
+ display: block; position: absolute;
+ top: 1.5em; bottom: 0; right: 0;
+ width: 60%;
+ padding: 0 .25em;
background-color: #444;
+ overflow-y: auto;
}
-#advsearch .select input.cat:checked + label + select {
+#advsearch fieldset.select > input.cat + label + .catselect > * {
display: block;
- position: absolute;
- top: 3.5em; bottom: 0;
- right: 0; left: 50%;
- width: 50%;
+ white-space: pre;
}
+#advsearch input.and { display: none; }
+#advsearch input.and + label { display: none; }
+#advsearch input.and + label + fieldset { display: none; }
+#advsearch input.and:checked + label + fieldset,
+#advsearch input.and:first-of-type + label + fieldset { display: inline-block; }
+#advsearch input.and:checked + label + fieldset + input + label,
+#advsearch input.and:first-of-type + label + fieldset + input + label { display: inline-block; }
+#advsearch input.and:checked + label + fieldset + input:checked + label { display: none; }
+#advsearch input.and:first-of-type + label + fieldset + input:checked + label { display: none; }
-/* ### Item Listing ### */
-.list {
- position: relative;
- display: inline-block;
- width: 100%;
- padding: .375em;
- vertical-align: top;
- overflow: hidden;
-}
+/* ====== MULTITAG DIALOG ====== */
-.list.dir { padding: .5em 1em; }
-.list:before {
- position: absolute;
- top: .25em; left: .25em;
- bottom: .25em; right: .25em;
- 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.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;
+#multitag:target {
+ display: block; position: fixed;
+ bottom: 0; left: 0; width: 100%;
+ height: 30em; max-height: 90vh;
+ background-color: #333;
+ padding: 0 .5em;
+ z-index: 1;
+ box-shadow: .25em .25em .5em #000;
+ overflow-y: auto;
}
-.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);
-}
+-#multitag { text-align: center; }
+-#multitag > * { text-align: left; }
-.list.file .tag,
-.list.file input + label {
+#multitag fieldset {
display: inline-block;
- margin: .125em -.125em 0 0;
- padding: .125em .5em;
- color: black;
- background-color: #DCC;
+ width: 99%;
+ margin: 0 .5%; margin-top: 1em;
}
-.list.file input[type="checkbox"] { display: none; }
-.list.file input[type="checkbox"] + label {
- border: 1px solid;
- background-color: #ECC;
+#multitag fieldset select {
+ width: 100%; height: 10em;
}
-.list.file input[type="checkbox"]:checked + label {
- background-color: #8F8;
+#multitag fieldset .tagselect {
+ height: 10em;
+ background-color: #444;
+ overflow-y: auto;
}
-
-.itemlist,
-.pagination {
+#multitag fieldset .tagselect > label {
display: block;
- text-align: center;
- margin-top: 1em;
-}
-.pagination { margin-bottom: 3em;}
-.page {
- display: inline-block;
- margin: 0 .125em;
- padding: .25em .5em;
- color: #DAA;
- background-color: #000;
- border: 1px solid;
-}
-.page.current {
- font-weight: bold;
- color: black;
- background-color: #FDD;
- border-color: #DAA;
+ white-space: pre;
}
-#index label:first-of-type { font-weight: bold; }
-#index input, #index button { margin-left: 1em;}
+/* ====== VIEW PAGE ====== */
-/* ### Video View ### */
-
-body#view { padding-bottom: 6em; }
-
-#view h1 {
- max-width: 100%;
- margin: .5em .75em;
- font-size: 1.25em;
- font-weight: bold;
- word-break: break-word;
- text-decoration: none;
-}
-
-#view #mainvideo {
+body#view video {
display: block;
- width: 98%;
- margin-left: auto; margin-right: auto;
- max-height: 240px;
-}
-@media(min-height: 400px) { #view #mainvideo { max-height: 320px; } }
-@media(min-height: 480px) { #view #mainvideo { max-height: 460px; } }
-@media(min-height: 520px) { #view #mainvideo { max-height: 480px; } }
-@media(min-height: 640px) { #view #mainvideo { max-height: 600px; } }
-@media(min-height: 700px) { #view #mainvideo { max-height: 640px; } }
-@media(min-height: 760px) { #view #mainvideo { max-height: 720px; } }
-@media(min-height: 1000px){ #view #mainvideo { max-height: 960px; } }
-@media(min-height: 1200px){ #view #mainvideo { max-height: 1080px;} }
-
-#view a[href$=download],
-#view a[href^=javascript] {
- margin-left: 1em;
-}
-
-#view .time, #view .dim,
-#view .tag {
- margin-right: -.125em;
- padding: .125em .25em;
- color: black;
+ max-height: 80vh;
+ margin: 0 auto;
}
-#view .time,
-#view .dim { background-color: #CCD; }
-#view .tag { background-color: #DCC; }
-
-
-
-/* ### Multi Tagging Drawer ### */
-#multitag fieldset{
+body#view .tag {
display: inline-block;
- width: 100%;
- vertical-align: top;
+ background-color: #333;
+ margin-top: .125em;
+ margin-left: 0;
padding: 0 .25em;
- border: none;
+ border-radius: 1pt;
}
-@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%; }
+/* ====== SCALE BLOCK ELEMENTS ====== */
+
+@media(min-width: 20em) { .itemlist .list, #advsearch fieldset.select, #multitag fieldset { max-width: 49%; } }
+@media(min-width: 40em) { .itemlist .list, #advsearch fieldset.select, #multitag fieldset { max-width: 32%; } }
+@media(min-width: 60em) { .itemlist .list, #advsearch fieldset.select, #multitag fieldset { max-width: 24%; } }
+@media(min-width: 80em) { .itemlist .list, #advsearch fieldset.select, #multitag fieldset { max-width: 19%; } }
+@media(min-width: 100em) { .itemlist .list, #advsearch fieldset.select, #multitag fieldset { max-width: 19em; } }