/* http://meyerweb.com/eric/tools/css/reset/ 
  v2.0 | 20110126
  License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/**
* https://github.com/csstools/sanitize.css/blob/master/typography.css
* Use the default user interface font in all browsers (opinionated).
*/

html {
  font-family: system-ui, /* macOS 10.11-10.12 */ -apple-system,
    /* Windows 6+ */ Segoe UI, /* Android 4+ */ Roboto,
    /* Ubuntu 10.10+ */ Ubuntu, /* Gnome 3+ */ Cantarell,
    /* KDE Plasma 5+ */ Noto Sans, /* fallback */ sans-serif,
    /* macOS emoji */ "Apple Color Emoji",
    /* Windows emoji */ "Segoe UI Emoji",
    /* Windows emoji */ "Segoe UI Symbol",
    /* Linux emoji */ "Noto Color Emoji";
}

/**
* https://github.com/csstools/sanitize.css/blob/master/forms.css
* 1. Use standards-like styling in all browsers (opinionated).
* 2. Inherit typography styling in all browsers (opinionated).
*/

button,
input,
select,
textarea {
  background-color: transparent; /* 1 */
  border: 0 solid; /* 1 */
  border-radius: 0.25em; /* 1 */
  box-shadow: inset 0 0 0 1px WindowFrame; /* 1 */
  color: inherit; /* 1 */
  font-family: inherit; /* 2 */
  font-size: inherit; /* 2 */
  line-height: inherit; /* 2 */
  padding: 0.25em 0.375em; /* 1 */
}

/* CO SNOW specific */

:root {
  /* https://www.nordtheme.com/docs/colors-and-palettes */
  /* Polar night */
  --color-nord-0: #2e3440;
  --color-nord-1: #3b4252;
  --color-nord-2: #434c5e;
  --color-nord-3: #4c566a;

  /* Snow storm */
  --color-nord-4: #d8dee9;
  --color-nord-5: #e5e9f0;
  --color-nord-6: #eceff4;

  /* Frost */
  --color-nord-7: #8fbcbb;
  --color-nord-8: #88c0d0;
  --color-nord-9: #81a1c1;
  --color-nord-10: #5e81ac;

  /* Aurora */
  --color-nord-11: #bf616a;
  --color-nord-12: #d08770;
  --color-nord-13: #ebcb8b;
  --color-nord-14: #a3be8c;
  --color-nord-15: #b48ead; 


  --grid-container-max-width-lg:  960px;
  --grid-container-max-width-md:  720px;
  --grid-container-max-width-sm:  540px;
  --grid-container-max-width-xl:  1140px;
  --grid-section-max-width:       1600px;
  --grid-gutter-width:            30px;
}


* {
  color: var(--color-nord-2);
}
html {
  background: #fff;
}

section {
  padding: 0 10px;
  margin: 0 auto;
}

.header {
  margin: 40px auto;
}

h1 {
  font-size: 2em;
  margin: 20px 0 10px 0;
  font-weight: 500;
  color: var(--color-nord-10);
}
h2 {
  font-size: 1.4em;
  margin: 10px 0 20px 0;
  color: var(--color-nord-0);
  font-weight: 300;
}

h3 {
  font-size: 1.4em;
  margin: 20px 0 10px 0;
  font-weight: 500;
  color: var(--color-nord-10);
}

p, li {
  line-height: 1.5em;
  font-size: .9em;
}

a {
  color: var(--color-nord-10);
}

ul {
  list-style: circle;
  margin: 20px 0;
}
li {
  margin-left: 20px;
}

p.instructions {
  margin: -10px 0 20px 0;
}

p i.material-icons-round {
  color: var(--color-nord-15);
  font-size: 1.2em;
  position: relative; top: 4px;
}

.hide-mobile {
  display: none;
}

.date {
  margin: 40px 0 10px 0;
  font-size: 1.4em;
  font-weight: 500;
  position: relative;
  top: 3px;
}
#map {  
  height: 520px;  
  border: 6px solid var(--color-nord-6); 
  border-radius: 5px;
  margin-bottom: 40px;
}

.controls {
  margin: 40px 0 0 0;
  /* background: var(--color-nord-6); */
  /* border: 1px solid var(--color-nord-6);  */
  width: 100%;
  padding: 20px 0;
}

.button-group {
  float: right;
  background-color: var(--color-nord-6);
  border-radius: 5px;
  padding: 0 8px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 10px;
}

button {
  background: none;
  color: var(--color-nord-10);
  border: none;
  box-shadow: none;
  padding: 2px;
  margin: 0;
  cursor: pointer;
  outline: none;
}

/* button.disabled {
  color: var(--color-nord-4);
  cursor: not-allowed;
} */

.button-group span {
  font-size: .8em;
  color: #999;
  display: inline-block;
  width: 15px;
  text-align: center;
}


table {
  width: 100%;
}

[v-cloak] {
  display: none;
}

th {
  font-weight: 500;
}
td, th {
  line-height: 1.6em;
  text-align: left;
  width: 30%;
}

th small {
  display: block;
  font-size: .8em;
  color: #666;
  margin-top: -10px;
  font-weight: normal;
}

th.station-name,
td.station-name {
  width: 40%;
}

/* save table col space on small devices */
th.county, td.county {
  display: none;
}

table .numeric {
  text-align: right;
}

th.numeric small,
td.numeric {
  padding-right: 10px;
}

.about {
  margin-top: 80px;
}

.footer {
  margin-top: 60px;
}

.footer a {
  color: var(--color-nord-2);
  text-decoration: none;
}


/* tablets and up */
@media screen and (min-width: 768px) {
  section {
    width: 700px;
    padding: 0;
    margin: 0 auto;
  } 
  /* mapbox occassionally flakes if width is not defined */
  #map {
    width: 688px;
  }
  th.county, td.county {
    display: table-cell;
  }
  td, th {
    width: 15%;
  }
  th.station-name,
  td.station-name {
    width: 40%;
  }
  
  .hide-mobile {
    display: inline;
  }
}
