/*! HTML5 Boilerplate v7.3.0 | MIT License | https://html5boilerplate.com/ */

/* main.css 2.0.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
  resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
.header {
  background-color: #f1f1f1;
  padding: 30px;
  text-align: center;
}

#navbar ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #333;
  position: -webkit-sticky; /* Safari */
  position: sticky;
  top: 0;
}

#navbar li {
  float: left;
}

#navbar li a {
  display: block;
  color: white;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
}

#navbar li a:hover {
  background-color: #111;
}

#navbar .active {
  background-color: #4CAF50;
}

.content {
  padding: 16px;
}

#navbar.sticky {
  position: fixed;
  top: 0;
  width: 100%;
}

#navbar.sticky + #navbar.content {
  padding-top: 60px;
}

.authform {
  background-color: #fefefe;
  margin: 5% auto 15% auto; /* 5% from the top, 15% from the bottom and centered */
  border: 1px solid #888;
  width: 80%; /* Could be more or less, depending on screen size */
}

.authform input[type=text],
.authform input[type=password] {
  width: 100%;
  padding: 12px 20px;
  margin: 8px 0;
  display: inline-block;
  border: 1px solid #ccc;
  box-sizing: border-box;
}

.authform button {
  background-color: #4CAF50;
  color: white;
  padding: 14px 20px;
  margin: 8px 0;
  border: none;
  cursor: pointer;
  width: 100%;
}

.authform button:hover {
  opacity: 0.8;
}

.authform .container {
  padding: 16px;
}

.authform span.psw {
  float: right;
  padding-top: 16px;
}

.authform .cancelbtn {
  width: auto;
  padding: 10px 18px;
  background-color: #f44336;
}

@media screen and (max-width: 300px) {
  .authform span.psw {
     display: block;
     float: none;
  }
  .authform cancelbtn {
     width: 100%;
  }
}

table {
  background-color: #F3F3F3;
	border-collapse: collapse;
	width: 100%;
	margin: 15px 0;
}

th {
  background-color: #333;
  color: #FFF;
  cursor: pointer;
  padding: 5px 10px;
}

th small {
  font-size: 9px;
}

td, th {
  text-align: left;
}

a {
  text-decoration: none;
}

td a {
  color: #663300;
  display: block;
  padding: 5px 10px;
}

th a {
  padding-left: 0;
}

td:first-of-type a {
  background: url(/img/bin.png) no-repeat 10px 50%;
  padding-left: 40px;
}

th:first-of-type {
  padding-left: 40px;
}

td:not(:first-of-type) a {
  background-image: none !important;
}

tr:nth-of-type(odd) {
  background-color: #E6E6E6;
}

tr:hover td {
  background-color:#CACACA;
}

tr:hover td a {
  color: #000;
}

/* Text */
table tr td:first-of-type a[href$=".log"] {
  background-image: url(/img/log.png);
}
table tr td:first-of-type a[href$=".pas"],
table tr td:first-of-type a[href$=".inc"],
table tr td:first-of-type a[href$=".txt"] {
  background-image: url(/img/txt.png);
}
table tr td:first-of-type a[href$=".ini"] {
  background-image: url(/img/ini.png);
}

/* images */
table tr td:first-of-type a[href$=".jpg"],
table tr td:first-of-type a[href$=".jpeg"] {
  background-image: url(/img/jpg.png);
}
table tr td:first-of-type a[href$=".png"] {
  background-image: url(/img/png.png);
}
table tr td:first-of-type a[href$=".gif"] {
  background-image: url(/img/gif.png);
}
table tr td:first-of-type a[href$=".svg"] {
  background-image: url(/img/svg.png);
}

/* zips */
table tr td:first-of-type a[href$=".7z"] {
  background-image: url(/img/7z.png);
}
table tr td:first-of-type a[href$=".rar"] {
  background-image: url(/img/rar.png);
}
table tr td:first-of-type a[href$=".zip"] {
  background-image: url(/img/zip.png);
}

/* css */
table tr td:first-of-type a[href$=".css"] {
  background-image: url(/img/css.png);
}

/* docs */
table tr td:first-of-type a[href$=".doc"],
table tr td:first-of-type a[href$=".dochtml"],
table tr td:first-of-type a[href$=".dot"],
table tr td:first-of-type a[href$=".dothtml"] {
  background-image: url(/img/doc.png)
}
table tr td:first-of-type a[href$=".docm"],
table tr td:first-of-type a[href$=".docx"],
table tr td:first-of-type a[href$=".dotm"] ,
table tr td:first-of-type a[href$=".dotx"] {
  background-image: url(/img/docx.png)
}
table tr td:first-of-type a[href$=".pot"],
table tr td:first-of-type a[href$=".potm"],
table tr td:first-of-type a[href$=".potx"] {
  background-image: url(/img/office.png)
}
table tr td:first-of-type a[href$=".ppt"],
table tr td:first-of-type a[href$=".pptm"],
table tr td:first-of-type a[href$=".pptx"],
table tr td:first-of-type a[href$=".pps"],
table tr td:first-of-type a[href$=".ppsm"],
table tr td:first-of-type a[href$=".ppsx"] {
  background-image: url(/img/office.png)
}
table tr td:first-of-type a[href$=".xls"],
table tr td:first-of-type a[href$=".xlshtml"],
table tr td:first-of-type a[href$=".xlt"],
table tr td:first-of-type a[href$=".xlthtml"] {
  background-image: url(/img/xls.png)
}
table tr td:first-of-type a[href$=".xlsm"],
table tr td:first-of-type a[href$=".xlsx"],
table tr td:first-of-type a[href$=".xltm"],
table tr td:first-of-type a[href$=".xltx"] {
  background-image: url(/img/xlsx.png)
}

/* videos */
table tr td:first-of-type a[href$=".avi"]{
  background-image: url(/img/avi.png);
}
table tr td:first-of-type a[href$=".wmv"] {
  background-image: url(/img/wmv.png);
}
table tr td:first-of-type a[href$=".mp4"] {
  background-image: url(/img/mp4.png);
}
table tr td:first-of-type a[href$=".mov"] {
  background-image: url(/img/mov.png);
}
table tr td:first-of-type a[href$=".m4a"] {
  background-image: url(/img/m4a.png);
}

/* audio */
table tr td:first-of-type a[href$=".mp2"],
table tr td:first-of-type a[href$=".mp3"] {
  background-image: url(/img/mp3.png);
}
table tr td:first-of-type a[href$=".ogg"] {
  background-image: url(/img/ogg.png);
}
table tr td:first-of-type a[href$=".aac"] {
  background-image: url(/img/aac.png);
}
table tr td:first-of-type a[href$=".wav"] {
  background-image: url(/img/wav.png);
}
table tr td:first-of-type a[href$=".wma"] {
  background-image: url(/img/wma.png);
}

/* web pages */
table tr td:first-of-type a[href$=".html"],
table tr td:first-of-type a[href$=".htm"] {
  background-image: url(/img/html.png);
}
table tr td:first-of-type a[href$=".xml"] {
  background-image: url(/img/xml.png);
}

table tr td:first-of-type a[href$=".php"] {
  background-image: url(/img/php.png);
}

table tr td:first-of-type a[href$=".js"] {
  background-image: url(/img/js.png);
}

/* directories */
table tr.dir td:first-of-type a {
  background-image: url(/img/folder.png);
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden {
  display: none !important;
}

/*
* Hide only visually, but have it available for screen readers:
* https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*
* 1. For long content, line feeds are not interpreted as spaces and small width
*    causes content to wrap 1 word per line:
*    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
*/

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}

/*
* Extends the .sr-only class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/

.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
* Hide visually and from screen readers, but maintain layout
*/

.invisible {
  visibility: hidden;
}

/*
* Clearfix: contain floats
*
* For modern browsers
* 1. The space content is one way to avoid an Opera bug when the
*    `contenteditable` attribute is included anywhere else in the document.
*    Otherwise it causes space to appear at the top and bottom of elements
*    that receive the `clearfix` class.
* 2. The use of `table` rather than `block` is only necessary if using
*    `:before` to contain the top-margins of child elements.
*/

.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.clearfix:after {
  clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster */
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  /*
     * Printing Tables:
     * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
     */
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}

