html {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Arial, Meiryo, sans-serif;
}

* {
  margin: 0;
  padding: 0;
}

.js-hidden {
  display: none;
}

span.author-link-hidden {
  display: none;
}

html {
  background-color: #ffffff;
  color: #000000;
}

@media (prefers-color-scheme: dark) {
  html {
    color: #ffffff;
    background-color: #151517;
  }
}
body.login main div {
  max-width: 940px;
  width: 90%;
  margin: 1em auto;
  background-color: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 4px;
  padding: 1em;
}

nav#mainnav {
  max-width: 940px;
  width: 90%;
  margin: 10px auto 0 auto;
}
nav#mainnav ul {
  display: flex;
  align-items: center;
}
nav#mainnav ul li {
  list-style-type: none;
}
nav#mainnav ul li a {
  display: block;
  padding: 10px;
  position: relative;
  text-decoration: none;
}
nav#mainnav ul li a.active {
  font-weight: bold;
  color: #8c8c8c;
  border-bottom: 3px solid #BE3455;
}

footer#footernav {
  max-width: 940px;
  width: 90%;
  margin: 0.5em auto 10em auto;
}
footer#footernav ul {
  display: flex;
  align-items: center;
}
footer#footernav ul li {
  list-style-type: none;
}
footer#footernav ul li a {
  display: block;
  padding: 0.5em 1em;
  position: relative;
}
footer#footernav ul li a.active {
  font-weight: bold;
  color: #8c8c8c;
}

main {
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  background-color: #f7f9f9;
  padding: 1em;
}
main.today form {
  background-color: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 4px;
  max-width: 940px;
  width: 90%;
  margin: 1em auto;
  padding: 1em;
}
main.today form div {
  padding: 0;
  margin: 0;
  border: none;
  width: 100%;
}
main.today div {
  background-color: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 4px;
  max-width: 940px;
  width: 90%;
  margin: 1em auto;
  padding: 1em;
}
main.today div h1 {
  text-align: center;
}
main div {
  background-color: #ffffff;
  border: 1px solid #e6e6e6;
}
main div.error {
  border-color: #ff0000;
}
main div.error h1 {
  text-align: center;
}
main div.home, main div.offline, main div.error, main div.stream, main div.media {
  border-radius: 4px;
  max-width: 940px;
  width: 90%;
  margin: 1em auto;
  padding: 1em 0;
}
main div.home h1, main div.home p, main div.home details, main div.offline h1, main div.offline p, main div.offline details, main div.error h1, main div.error p, main div.error details, main div.stream h1, main div.stream p, main div.stream details, main div.media h1, main div.media p, main div.media details {
  margin: 0 auto 1em auto;
  max-width: 60ch;
  line-height: 1.7;
  padding: 0 1em;
}
main div.home details, main div.offline details, main div.error details, main div.stream details, main div.media details {
  margin: 0 auto 1em auto;
  max-width: 60ch;
}
main div.home details ul, main div.offline details ul, main div.error details ul, main div.stream details ul, main div.media details ul {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
}
main div.home details ul li, main div.offline details ul li, main div.error details ul li, main div.stream details ul li, main div.media details ul li {
  list-style-type: none;
}

@media (prefers-color-scheme: dark) {
  main {
    border-top: 1px solid #3a3a3a;
    background: linear-gradient(300deg, #BE3455, blue, #BE3455);
    background-size: 180% 180%;
    animation: gradient-animation 18s ease infinite;
  }
  main a {
    color: #ffffff;
    text-decoration: underline #e6e6e6;
  }
  main div {
    background-color: #3a3a3a;
    border: 1px solid #BE3455;
  }
}
@keyframes gradient-animation {
  0% {
    background-position: 0 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
article {
  max-width: 940px;
  width: 90%;
  margin: 1em auto;
  background-color: #ffffff;
  border: 1px solid #e6e6e6;
}

.today article, .links article {
  border: none;
  border-radius: 0;
  width: 100%;
}
.today article div, .links article div {
  border: none;
}

@media (prefers-color-scheme: dark) {
  article {
    background-color: #3a3a3a;
    border: 1px solid #e6e6e6;
  }
}
img {
  max-width: 100%;
  height: auto;
}

a {
  color: #3a3a3a;
}

a:hover, a:active {
  text-decoration: underline #BE3455;
}

@media (prefers-color-scheme: dark) {
  a {
    color: #ffffff;
  }
}
form div, form details {
  border: none;
  margin: 1em 0;
}
form div label {
  display: block;
}
form div div label {
  display: inline;
}
form div div label img {
  height: auto;
  width: 200px;
}
form textarea {
  width: 100%;
}

div.topbar {
  max-width: 940px;
  width: 90%;
  margin: 0 auto;
  padding: 0.5em 0;
  border-bottom: 1px solid #e6e6e6;
  text-align: right;
  min-height: 1em;
}
div.topbar span {
  font-size: 0.8em;
}

@media (prefers-color-scheme: dark) {
  div.topbar {
    border-bottom: 1px solid #3a3a3a;
  }
}
header.h-card {
  max-width: 940px;
  width: 90%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 60px 1fr;
  grid-column-gap: 0;
  grid-row-gap: 1em;
  align-items: center;
  padding-top: 1em;
  padding-bottom: 1em;
  border-bottom: 1px solid #e6e6e6;
}
header.h-card a {
  text-decoration: none;
}
header.h-card > * {
  align-self: center;
  justify-self: center;
}
header.h-card img {
  border-radius: 50%;
  width: 60px;
}

@media screen and (min-width: 600px) {
  header.h-card {
    grid-template-columns: 60px 1fr;
    grid-template-rows: 1fr;
    grid-column-gap: 1em;
    grid-row-gap: 0;
  }
  header.h-card > * {
    align-self: center;
    justify-self: left;
  }
}
@media (prefers-color-scheme: dark) {
  header.h-card {
    border-bottom: 1px solid #3a3a3a;
  }
}
article.h-entry h1.p-name {
  padding: 0;
  margin: 20px;
}
article.h-entry p.p-summary {
  padding: 0;
  margin: 20px;
}
article.h-entry div.e-content {
  padding: 0;
  margin: 20px;
}
article.h-entry footer {
  margin-top: 1em;
  padding: 20px;
  border-top: 1px solid #6667ab;
}
article.h-entry footer p {
  margin: 0;
  padding: 0;
}
article.h-entry footer a.p-author {
  display: none;
}

.today article *:first-child {
  border-radius: 0;
}
.today article a.u-url {
  margin-right: 10px;
  float: left;
}

div.date-archive {
  max-width: 940px;
  width: 90%;
  margin: 1em auto;
  background-color: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 4px;
}
div.date-archive h2, div.date-archive ul {
  margin: 20px;
}
div.date-archive ul {
  display: flex;
  flex-wrap: wrap;
  align-items: start;
}
div.date-archive ul li {
  list-style: none;
  display: flex;
  align-items: flex-start;
  margin: 0 20px 20px 0;
}
div.date-archive ul li h3 {
  display: inline;
  margin: 0 20px 20px 0;
}
div.date-archive ul li ul {
  display: block;
  margin: 0;
}
div.date-archive ul li ul li {
  margin: 0;
}

div.links {
  max-width: 940px;
  width: 90%;
  margin: 1em auto;
  border-radius: 4px;
}
div.links div {
  border: none;
}
div.links div.e-content {
  margin: 0;
}
div.links p.feedlink {
  margin: 2em 20px 0.5em 20px;
}
div.links p.feedlink a {
  text-decoration: none;
}
div.links p.feedlink img {
  padding: 0;
  margin: 0;
  vertical-align: top;
  width: 16px;
  height: auto;
}
div.links h3 {
  margin: 2em 20px 0.5em 20px;
}
div.links h2, div.links h4 {
  font-size: 1em;
  margin: 2em 20px 0.5em 20px;
  color: #8c8c8c;
}
div.links h2:first-child, div.links h4:first-child {
  margin-top: 1em;
}
div.links article {
  margin: 0.5em 20px 1em 20px;
  width: auto;
  color: #3a3a3a;
}
div.links article img.link_favicon {
  vertical-align: top;
}
div.links article blockquote {
  margin-top: 1em;
  margin-bottom: 1em;
  border-left: 3px solid #e6e6e6;
  padding-left: 0.5em;
}
div.links article p {
  margin-top: 1em;
  margin-bottom: 1em;
}
div.links article a {
  color: #8c8c8c;
}
div.links article a.u-bookmark-of {
  color: #000000;
  font-weight: bold;
  text-decoration: underline #8c8c8c;
}
div.links article a.u-url {
  text-decoration: none;
}
div.links article a.meta-domain {
  font-size: 0.9em;
}
div.links article footer.meta {
  padding: 0;
  margin-top: 0.5em;
  border: none;
  font-size: 0.8em;
  color: #8c8c8c;
}
div.links article footer.meta a {
  color: #8c8c8c;
}
div.links section.relatedLinks h2 {
  color: #3a3a3a;
}
div.links section.relatedLinks h3 {
  font-size: 1em;
  margin: 2em 20px 0.5em 20px;
  color: #8c8c8c;
}
div.links section.relatedLinks h3:first-of-type {
  margin-top: 1em;
}

@media (min-width: 800px) {
  div.multiple-links {
    display: grid;
    grid-template-columns: 3fr 1fr;
    grid-template-areas: "feedlink feedlink" "links current";
  }
  div.multiple-links p.feedlink {
    grid-area: feedlink;
  }
  div.multiple-links div.links-main {
    grid-area: links;
    margin-bottom: 2em;
  }
  div.multiple-links div.current-stories {
    grid-area: current;
  }
  div.multiple-links div.current-stories :first-child h3 {
    margin-top: 0;
  }
}
@media (prefers-color-scheme: dark) {
  div.links article {
    color: #ffffff;
  }
  div.links article a {
    color: #e6e6e6;
  }
  div.links article a.u-bookmark-of {
    color: #e6e6e6;
  }
}
div.notes {
  max-width: 940px;
  width: 90%;
  margin: 1em auto;
  border-radius: 4px;
}
div.notes nav {
  margin: 2em 20px;
}
div.notes h3 {
  margin: 2em 20px 0.5em 20px;
}
div.notes h2, div.notes h4 {
  font-size: 1em;
  margin: 2em 20px 0.5em 20px;
  color: #8c8c8c;
}
div.notes h2:first-child, div.notes h4:first-child {
  margin-top: 1em;
}
div.notes article {
  margin: 1em 20px 1.5em 20px;
  width: auto;
  color: #3a3a3a;
  border: none;
}
div.notes article p.replyTo {
  font-size: 0.8em;
  color: #8c8c8c;
  margin-bottom: 0.5em;
}
div.notes article p.replyTo a {
  color: #8c8c8c;
}
div.notes article img.u-photo {
  margin: 1em 0;
}
div.notes article figure {
  border-left: 3px solid #BE3455;
  margin: 1em 0;
  padding-left: 0.5em;
}
div.notes article table.poll {
  width: 50%;
  margin: 1em 0;
}
div.notes article table.poll th {
  text-align: left;
  font-weight: normal;
}
div.notes article table.poll td progress {
  min-width: 150px;
  width: 100%;
}
div.notes article table.poll td.percentage {
  text-align: right;
}
div.notes article footer.meta {
  padding: 0;
  margin-top: 0.5em;
  border: none;
  font-size: 0.8em;
  color: #8c8c8c;
}
div.notes article footer.meta a {
  color: #8c8c8c;
}

@media (prefers-color-scheme: dark) {
  div.notes article {
    color: #ffffff;
  }
  div.notes article a {
    color: #e6e6e6;
  }
}
div.flights {
  max-width: 940px;
  width: 90%;
  margin: 1em auto;
  border-radius: 4px;
}
div.flight-cards {
  display: flex;
  flex-wrap: wrap;
}
div.flight {
  max-width: 940px;
  width: 90%;
  margin: 1em auto;
  border-radius: 4px;
}
div.big-flight-map {
  line-height: 0;
}
div.flight-map {
  margin: 1rem;
  border-radius: 10px;
  border: 1px #e6e6e6 solid;
  line-height: 0;
}
div.flight-map img {
  border-radius: 10px;
}
div.flight-card {
  width: calc(33% - 3em);
  min-width: 250px;
  margin: 1rem;
  border-radius: 10px;
  border: 1px #e6e6e6 solid;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto;
  gap: 0 0;
  grid-template-areas: "header header" "departure arrival";
}
div.flight-card header {
  padding: 10px;
  grid-area: header;
  border-bottom: 1px solid #3a3a3a;
}
div.flight-card header img {
  margin-top: 1em;
  margin-bottom: 1em;
  max-width: 100%;
  height: 20px;
  width: auto;
}
div.flight-card header a {
  text-decoration: none;
}
div.flight-card div {
  padding-top: 10px;
  padding-bottom: 10px;
  border: none;
}
div.flight-card div.flight-date {
  color: #3a3a3a;
}
div.flight-card div.departure {
  padding-left: 10px;
  border-bottom-left-radius: 10px;
}
div.flight-card div.arrival {
  text-align: right;
  padding-right: 10px;
  border-bottom-right-radius: 10px;
}

@media (min-width: 800px) {
  div.flight {
    display: grid;
    grid-template-columns: 1fr 2.5fr;
    grid-template-rows: 1fr;
    grid-column-gap: 0;
    grid-row-gap: 0;
  }
}
div.week h1 {
  margin: 0.5em 20px 0.5em 20px;
}
div.week div.flight-card, div.week div.flight-map {
  border: 1px #e6e6e6 solid;
}
div.week div.flight-card h1, div.week div.flight-map h1 {
  margin: 0;
}

div.stream article {
  margin: 1em auto;
  max-width: 520px;
  padding: 10px;
  border: none;
  border-left: 3px solid #3a3a3a;
  border-radius: 10px;
  background-color: #f7f9f9;
}
div.stream article p:has(time) {
  text-align: right;
  margin: 0;
  padding: 0;
  float: right;
}
div.stream article time {
  font-size: 0.8em;
  color: #8c8c8c;
}
div.stream article h2 {
  font-size: inherit;
}
div.stream article p {
  padding: 0;
  margin: 1em 0;
  line-height: 1.2em;
}
div.stream article p:last-child {
  margin-bottom: 0;
}

@media (prefers-color-scheme: dark) {
  div.stream article {
    border: 1px solid #8c8c8c;
    border-left: 3px solid #f7f9f9;
    background-color: #3a3a3a;
  }
}
div.media h2 {
  font-size: 1em;
  margin: 2em 20px 0.5em 20px;
  color: #8c8c8c;
}
div.media h2:first-child {
  margin-top: 1em;
}
div.media h3 {
  font-size: 1.2em;
  margin: 2em 20px 0.5em 20px;
}
div.media h3:first-child {
  margin-top: 1em;
}
div.media li {
  list-style: none;
}
div.media div {
  border: none;
}
div.media div p, div.media div details {
  width: auto;
  margin: 0 20px 0.5em 20px;
}
div.media div.comment {
  border-bottom: 1px solid #8c8c8c;
  margin-top: 1.5em;
  margin-bottom: 1.5em;
  padding-bottom: 1.5em;
}
div.media div.comment:last-of-type {
  border-bottom: none;
  margin-bottom: 0;
}
div.media div.comment p.timestamp {
  color: #8c8c8c;
}

/*# sourceMappingURL=app.output.css.map */
