]> jfr.im git - irc/freenode/web-7.0.git/blobdiff - static/css/style.css
Merge pull request #116 from tinyhippw/tinyhippo-whitespace
[irc/freenode/web-7.0.git] / static / css / style.css
index 17c1feb88dbe3568ed93c3054e64a04416a758e5..3893d8543d62f2a95b54ffdeb7b98de388739e82 100644 (file)
@@ -1,21 +1,44 @@
 /* vars */
 :root {
-    --navbar-bg: #292f2f;
-    --jumbotron-bg: #3a4346;
-    --copyright-bg: #292f2f;
-    --link-color: #2fa6bc;
-    --footer-link-color: #ecf7fa;
-    --nlink-col: #000;
-    --text-color: #292f2f;
-    --footer-text-color: #ecf7fa;
-    --copyright-text-color: #ecf7fa;
-    --jumbotron-text-color: #ecf7fa;
-    --border-color: #292f2f;
-    --box-color: #4c5456;
-    --box-hover-color: #292f2f;
-    --box-round: 10px;
-    --max-width: 600px;
-}
+    --c-dark:     #292f2f;
+    --c-bg-dark:  #3a4346;
+    --c-bg-light: #4c5456;
+    --c-light:    #ecf7fa;
+    --c-hl-dark:  #008499;
+    --c-hl-light: #3baec4;
+
+    /* backgrounds */
+    --navbar-bg:    var(--c-dark);
+    --jumbotron-bg: var(--c-bg-dark);
+    --copyright-bg: var(--c-dark);
+
+    /* link colors */
+    --link-color:         var(--c-hl-dark);
+    --link-hover-color:   var(--c-hl-light);
+    --footer-link-color:  var(--c-light);
+    --footer-hover-color: #fff;
+
+    /* text colors */
+    --text-color:           var(--c-dark);
+    --footer-text-color:    var(--c-light);
+    --copyright-text-color: var(--c-light);
+    --jumbotron-text-color: var(--c-light);
+    --art-date-color:       color(var(--c-dark) tint(50%));
+
+    /* box colors */
+    --border-color:    var(--c-dark);
+    --box-color:       var(--c-bg-light);
+    --box-hover-color: var(--c-dark);;
+    --box-round:       10px;
+
+    /* other */
+    --max-width:     1200px;
+    --max-width-box: 800px;
+    --margin-box-fa: 5px;
+}
+@custom-media --max-sm all and (max-width: 600px);
+@custom-media --max-md all and (max-width: 800px);
+@custom-media --max-rem all and (max-width: 60rem);
 
 /* reset css for browser compat */
 * {
@@ -40,6 +63,13 @@ a {
     text-decoration: none;
 }
 
+a:hover {
+    color: var(--link-hover-color);
+}
+img {
+    max-width: 100%;
+}
+
 /* navbar */
 .navbar {
     width: 100%;
@@ -58,18 +88,8 @@ a {
     z-index: 100;
     padding-right: 5px;
 }
-[class*='fn-'] {
-    margin-top: auto;
-    margin-bottom: auto;
-    font-size: 30px;
-    color: #E6E6E6;
-    text-shadow: .5px .5px #000;
-}
-.green {
-    color: #4BEB4A;
-}
 
-@media all and (max-width: 600px) {
+@media (--max-sm); {
     .navbar {
         position: absolute;
     }
@@ -84,31 +104,26 @@ a {
     height: 40px;
 }
 
-.navlinks {
-    display: flex;
-    justify-content: space-around;
-    flex-wrap: nowrap;
-}
-
-.nlink {
-    text-decoration: none;
-    color: var(--nlink-col);
+.tlogo {
+    height: 40px;
+    margin-bottom: -9px;
+    margin-left: -10px;
+    margin-right: -10px;
 }
 
 /* main */
 .container {
     width: 100%;
-    min-height: 98vh;
+    min-height: 100vh;
     padding-top: 50px;
-    padding-bottom: 11.5rem;
+    padding-bottom: 12.5rem;
 }
 
 .main {
-    margin: 0 auto;
-    margin-top: .75em;
+    margin: 2em auto;
     padding: 0 .75em;
     max-width: var(--max-width);
-    line-height: 1.4;
+    line-height: 1.8;
 }
 
 .main h1,
@@ -128,11 +143,16 @@ a {
     margin-top: 0;
 }
 
-.main ul {
+ul {
     padding-left: 2em;
     list-style-type: disc;
 }
 
+ol {
+    padding-left: 2em;
+    list-style-type: decimal;
+}
+
 hr {
     margin-top: .8em;
     margin-bottom: .8em;
@@ -142,11 +162,37 @@ hr {
 .jumbotron {
     position: relative;
     width: 100%;
-    margin-top: -16px;
+    margin-top: -50px;
     background: var(--jumbotron-bg);
     box-shadow: 0 1px 5px rgba(0, 0, 0, 0.6);
     color: var(--jumbotron-text-color);
-    padding: 2em 0;
+    padding: 4em 0 4em 0;
+}
+
+.jindex {
+    z-index: 99;
+}
+
+.jlogo {
+    display: block;
+    margin: 25px auto;
+}
+
+.jpia {
+    position: absolute;
+    height: 40px;
+    right: 0; 
+    top: 0;
+    margin: 25px;
+}
+
+@media (--max-sm) {
+    .jlogo {
+        margin: 2em auto -2em auto;
+    }
+    .jumbotron {
+        padding-bottom: 2em;
+    }
 }
 
 .child {
@@ -162,7 +208,7 @@ hr {
     flex-wrap: wrap;
     justify-content: space-around;
     align-items: stretch;
-    max-width: 800px;
+    max-width: var(--max-width-box);
     margin: 0 auto;
 }
 
@@ -171,45 +217,89 @@ hr {
     text-decoration: none;
     color: var(--jumbotron-text-color);
     margin-bottom: 5px;
-    padding: 5px;
     flex-basis: 30%;
+    min-width: 26%;
     background-color: var(--box-color);
     border-radius: var(--box-round);
+    padding: 1em;
 }
 
 .box:hover,.box:active {
+    color: var(--jumbotron-text-color);
     background-color: var(--box-hover-color);
 }
 
-.box div{
+.box span {
     position: relative;
     top: initial;
     font-size: 20px;
     font-weight: 600;
     line-height: 16px;
-    padding: 10px 0;
     display: block;
+    margin-top: .75em;
 }
 
 .fa-users {
-    margin-top: 5px;
+    margin-top: var(--margin-box-fa);
 }
 
-.fa-comment,.fa-question {
-    margin-bottom: 5px;
+.fa-comments,.fa-question {
+    margin-bottom: var(--margin-box-fa);
 }
 
 .title {
     text-align: center;
 }
 
+@media (--max-md) {
+    .box {
+        text-align: center;
+    }
+
+    .child {
+        font-size: 20px;
+        line-height: 30px;
+        padding: 10px 0 5px;
+    }
+
+    .fa-4x {
+        padding: 0;
+        margin: 0;
+        width: 60px;
+        text-align: center;
+        font-size: 28px;
+    }
+
+    .box-container {
+        flex-direction: column;
+        margin: 0 .5em;
+    }
+
+    .box span {
+        font-size: 22px;
+        line-height: 22px;
+        padding-left: 8px;
+        font-weight: bold;
+        position: relative;
+        display: inline-block;
+        text-align: center;
+        margin-top: 0;
+    }
+
+    .box {
+        text-align: left;
+        border-radius: calc(var(--box-round) / 2);
+        margin: 5px 0;
+    }
+}
+
 /* articles */
 h1 {
     margin: 0;
 }
 
 .art-info {
-    line-height: 1.6;
+    margin-top: 2.1em;
     display: flex;
     flex-direction: row;
     flex-wrap: wrap;
@@ -220,6 +310,7 @@ h1 {
 .art-info h1 {
     margin-top: 0;
     display: inline;
+    margin-right: 2em;
 }
 
 .art-body {
@@ -232,16 +323,21 @@ h1 {
     margin-top: .5em;
 }
 
+.artlist.heading {
+    margin: 8em auto 2em auto;
+    padding: 0 0.75em;
+}
+
 .artlist .art-info:not(:first-child) {
     border-top: 1px solid var(--border-color);
 }
 
 .art-date {
     display: inline-block;
-    text-align: baseline;
+    vertical-align: baseline;
     line-height: 1;
     white-space: nowrap;
-    color: #ccc;
+    color: var(--art-date-color);
     font-feature-settings: "tnum";
     font-variant-numeric: tabular-nums;
 }
@@ -253,7 +349,7 @@ h1 {
     width: 100%;
 }
 
-@media all and (max-width: 600px) {
+@media (--max-md) {
     .main.artlist {
         padding-left: 0;
         padding-right: 0;
@@ -264,91 +360,86 @@ h1 {
     }
 }
 
-/* help */
-.hmain {
+/* faq */
+.kb-index {
+    list-style-type: none;
+    padding-left: 0;
     display: flex;
+    flex-direction: row;
     flex-wrap: wrap;
-    justify-content: space-around;
-    align-items: stretch;
+    justify-content: stretch;
 }
 
-a.hchild {
-    color: var(--text-color);
-/*height: 40px;*/
-    width: 95%;
-    text-align: center;
-    border-top: 1px solid var(--border-color);
-    border-left: 1px solid var(--border-color);
-    border-right: 1px solid var(--border-color);
+.kb-index li {
+    display: block;
+    flex: 1 1 15em;
+    height: 7em;
+    margin: 1em;
 }
 
-a.hchild:hover,a.hchild:active {
-    background-color: var(--box-hover-color);
+.kb-index li h2 {
+    margin-top: 0;
 }
 
-.hchild:first-child {
-    margin-top: 10px;
-    -webkit-border-top-left-radius: var(--box-round);
-    -webkit-border-top-right-radius: var(--box-round);
-    -moz-border-radius-topleft: var(--box-round);
-    -moz-border-radius-topright: var(--box-round);
-    border-top-left-radius: var(--box-round);
-    border-top-right-radius: var(--box-round);
+.kb-index a {
+    display: block;
+    color: var(--text-color);
+    width: 100%;
+    height: 100%;
 }
-
-.hchild:last-child {
-    margin-bottom: 10px;
-    border-bottom: 1px solid var(--border-color);
-    -webkit-border-bottom-right-radius: var(--box-round);
-    -webkit-border-bottom-left-radius: var(--box-round);
-    -moz-border-radius-bottomright: var(--box-round);
-    -moz-border-radius-bottomleft: var(--box-round);
-    border-bottom-right-radius: var(--box-round);
-    border-bottom-left-radius: var(--box-round);
+.kb-index a h2 {
+    color: var(--link-color);
+}
+.kb-index a:hover h2 {
+    color: var(--link-hover-color);
 }
 
 /* footer */
 .footers {
     /*min-height: 30vh;*/
-    margin-top: -11rem;
-    min-height: 11rem;
+    margin-top: -12rem;
+    min-height: 12rem;
 }
 
 .footer {
     background: var(--jumbotron-bg);
     color: var(--footer-text-color);
-    margin-top: 2vh;
+    width: 100%;
+    box-shadow: 0 -3px 5px rgba(150,150,150,.36);
+    min-height: 10.5rem;
+    padding: 3em 0;
+}
+
+.footer-container {
     display: flex;
     flex-wrap: wrap;
-    justify-content: space-between;
+    justify-content: center;
     align-items: flex-start;
-    box-shadow: 0 -3px 5px rgba(150,150,150,.36);
-    min-height: 9.5rem;
+    margin: 0 auto;
 }
 
 .footerchild {
+    margin: 0 2em;
     margin-top: .5em;
-    flex: 1 1 1px;
-    min-width: 12rem;
+    flex-grow: 1;
+    flex-shrink: 0;
 }
 
 .footerchild:last-child {
-    margin-bottom: 1em;
+    margin-bottom: .5em;
 }
 
-@media all and (max-width: 60rem) {
-    .footer-push {
-        margin-left: auto;
-        width: max-content;
-    }
+.footer-push {
+    margin-left: auto;
+    width: max-content;
 }
 
-.footer a {
+footer a {
     color: var(--footer-link-color);
 }
 
-.footer a:hover {
-    color: #fff;
+footer a:hover {
+    color: var(--footer-hover-color);
 }
 
 .footer h2 {
@@ -356,7 +447,8 @@ a.hchild:hover,a.hchild:active {
     display: inline-block;
 }
 
-.footerchild ul,.footerchild ul ul {
+.footerchild ul, .footerchild ul ul {
+    padding-left: 0;
     margin-left: 10px;
     margin-right: 10px;
     list-style-type: none;
@@ -366,102 +458,90 @@ a.hchild:hover,a.hchild:active {
     padding-left: 30px;
 }
 
-@media all and (max-width: 600px) {
-    .footer {
+@media (--max-sm) {
+    .footer-container {
         flex-direction: column;
     }
 
-    .footerchild {
-        width: 100%;
-    }
-
     .footer-push {
         margin-left: 0;
+        width: 100%;
     }
 
     .footerchild ul li:last-child {
         margin-bottom: .5em;
     }
 
-    .hdn {
-        display: none;
+    .footer-push ul li:last-child {
+        margin-bottom: .1em;
     }
 
-    .box {
-        text-align: center;
+    .hdn {
+        display: none;
     }
-
-    .child {
-        font-size: 20px;
-        line-height: 30px;
-        padding: 10px 0 5px;
+    .footer {
+        padding: .5em 0;
     }
-
-    .fa-4x {
-        padding: 0;
-        margin: 0;
-        width: 60px;
+    .footer-push ul {
+        display: flex;
+        flex-wrap: wrap;
+        flex-direction: row;
+        justify-content: space-between;
+        align-items: flex-start;
         text-align: center;
-        font-size: 28px;
     }
-
-    .box-container {
-        flex-direction: column;
-        margin: 0 .5em;
+    .footer-push ul li {
+        display: inline-block;
+        font-size: 12vw;
     }
-
-    .box div {
-        font-size: 22px;
-        line-height: 22px;
-        padding-left: 8px;
-        font-weight: 700;
-        position: relative;
-        display: inline;
-        text-align: center;
-
-    }
-
-    .box {
-        text-align: left;
-        border-radius: calc(var(--box-round) / 2);
-        margin: 5px 0;
+    .footer-push ul li img {
+        height: 12vw;
     }
 }
 
-.footer h2,.footer h3 {
+.footer h2, .footer h3 {
     margin-left: 10px;
     margin-right: 10px;
 }
 
-.copyright {
+footer.copyright {
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
-    align-items: center;
     background: var(--copyright-bg);
     min-height: 1.5rem;
     color: var(--copyright-text-color);
+    padding-left: .5em;
+    padding-right: .5em;
+    overflow: hidden;
 }
 
-a.copyright {
-    background: var(--copyright-bg);
-    margin-bottom: 0;
-    margin-top: 0;
-    margin-left: .5em;
-    margin-right: .5em;
-    width: auto;
-    height: auto;
+footer.copyright div {
+    display: flex;
+    align-items: center;
+    height: 1.5rem;
+    line-height: 1.5rem;
+    vertical-align: top;
 }
 
-.copyright a img {
+.copyright * {
+    margin: 0;
     height: 1.5rem;
-    width: auto;
+    line-height: 1.5rem;
 }
 
-.copyright p {
-    margin-bottom: 0;
-    margin-top: 0;
-    margin-left: .5em;
+.copyright .fa {
+    height: 100%;
+    vertical-align: top;
+    font-size: 1.4em;
+}
+
+.copyright .footer-link {
+    height: 28px;
     margin-right: .5em;
-    text-align: right;
+}
+
+.copyright img {
+    height: 1.5rem;
+    width: auto;
 }