/* 5amのサイト。本人が2017年に作った個人サイト、という体裁。少し古く、素朴に */

.site {
  background: radial-gradient(circle at 50% 0, #151d27 0, #0b0e12 50%);
}
.site-wrap {
  width: min(860px, calc(100% - 2rem));
  margin: auto;
  padding: 1.5rem 0 4rem;
}

.site-head {
  display: flex;
  align-items: baseline;
  gap: 1.5rem;
  flex-wrap: wrap;
  padding-bottom: .8rem;
  border-bottom: 1px solid var(--line);
  margin-bottom: 3rem;
}
.site-logo { font-size: 1.4rem; letter-spacing: .2em; font-weight: 300; }
.site-nav { display: flex; gap: 1.2rem; font-size: .85rem; }
.site-nav a[aria-current="page"] { color: var(--blue); border-bottom: 1px solid var(--blue); }
.site-nav .lock { color: var(--muted); }
.site-chat { margin-left: auto; font-size: .78rem; color: var(--muted); }

.site-eyebrow { color: var(--muted); font-size: .78rem; letter-spacing: .14em; margin: 0; }
.site-title { font-size: clamp(1.8rem, 5vw, 3rem); font-weight: 300; margin: .1em 0 .8em; }
.site-note { color: var(--muted); font-size: .9rem; }
.site-back { display: inline-block; color: var(--muted); font-size: .85rem; margin-bottom: 1.5rem; }
.site-main h2 { font-size: .8rem; letter-spacing: .14em; color: var(--muted); font-weight: 400; margin: 2.5rem 0 .8rem; }

.site-hero h1 { font-size: clamp(3rem, 10vw, 6rem); font-weight: 200; letter-spacing: .1em; margin: 0 0 .3em; }
.site-lead { font-size: 1.05rem; }
.site-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--line); margin-top: 3rem; }
.site-card { background: var(--panel); padding: 1.6rem; }
.site-card b { display: block; font-size: 1.3rem; font-weight: 400; }
.site-card small { color: var(--muted); }
.site-card.locked b::after { content: " *"; color: var(--muted); }

/* song */
.song-list { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--line); }
.song-list a { display: grid; grid-template-columns: 3rem 1fr auto; gap: 1rem; padding: 1.1rem 0; border-bottom: 1px solid var(--line); align-items: baseline; }
.song-list .no, .song-list small { color: var(--muted); font-size: .8rem; }
.song { max-width: 680px; }
.song-cover { height: 220px; background: linear-gradient(135deg, #172331, #080a0d); border: 1px solid var(--line); margin: 1.5rem 0; }
.song-player { border-block: 1px solid var(--line); padding: 1rem 0; margin: 1.5rem 0; }
.song-player audio { width: 100%; display: block; margin-bottom: .4rem; }
.audio-status { font-size: .75rem; color: var(--muted); }
.song-desc { color: #c7d5e2; }
.song-desc a { color: var(--blue); text-decoration: underline dotted; }
.song-file { color: var(--muted); font-size: .8rem; }
.song-lyrics { white-space: pre-wrap; font: inherit; color: #c7d5e2; margin: 0; }
.song-note { border-left: 2px solid var(--blue); padding-left: 1rem; color: var(--muted); margin: 2rem 0; }
.diff { padding-left: 1.2rem; color: #c7d5e2; }
.memo { color: #b9cad9; border-left: 1px dashed var(--line); padding-left: 1rem; }

.comments { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--line); }
.comments li { display: grid; grid-template-columns: 5rem 1fr; gap: 1rem; padding: .6rem 0; border-bottom: 1px solid var(--line); font-size: .9rem; }
.comments b { color: var(--muted); font-weight: 400; }
.report p { color: #c7d5e2; margin: 0; }

/* log */
.log { max-width: 620px; }
.log-post { border-bottom: 1px solid var(--line); padding: 1rem 0; }
.log-post.reply { background: #0c1117; padding: .8rem 1rem; border-left: 2px solid var(--line); }
.log-post.repost { background: #0e141b; padding: 1rem; border: 1px solid var(--line); margin-bottom: 1.5rem; }
.log-label { color: var(--muted); font-size: .75rem; margin: 0 0 .4rem; }
.log-head { display: flex; align-items: center; gap: .5rem; font-size: .85rem; color: var(--muted); }
.log-head b { color: var(--ink); }
.log-head time { margin-left: auto; font-size: .78rem; }
.log-post p { margin: .5rem 0 0; }
.log .media { display: inline-block; margin-top: .5rem; padding: .3rem .6rem; border: 1px solid var(--line); color: var(--blue); font-size: .78rem; }
.log-link { color: var(--blue); text-decoration: underline dotted; }
.related { margin-top: 3rem; }

/* history */
.tl { list-style: none; padding: 0; max-width: 680px; }
.tl li { display: grid; grid-template-columns: 10rem 1fr; gap: 1rem; padding: .7rem 0; border-bottom: 1px solid var(--line); }
.tl time { color: var(--blue); font-size: .9rem; }
.tl .missing { color: var(--muted); }
.interview { max-width: 680px; background: #0e141b; border: 1px solid var(--line); padding: 1.5rem 1.8rem; }
.interview h3 { font-weight: 400; font-size: 1.15rem; margin: .3rem 0 1.2rem; }
.interview dl { margin: 0 0 1.2rem; }
.interview dt { color: var(--muted); }
.interview dd { margin: .3rem 0 0; color: #c7d5e2; }

/* diary */
.diary-list { list-style: none; padding: 0; max-width: 620px; border-top: 1px solid var(--line); }
.diary-list li { border-bottom: 1px solid var(--line); }
.diary-list a, .diary-list span { display: grid; grid-template-columns: 8rem 1fr auto; gap: 1rem; padding: 1rem 0; align-items: baseline; }
.diary-list time { color: var(--muted); font-size: .85rem; }
.diary-list b { font-weight: 400; }
.diary-list .locked { color: var(--muted); }
.diary-list small { font-size: .75rem; letter-spacing: .1em; }
.diary-entry { max-width: 620px; }
.diary-body { color: #c7d5e2; line-height: 2.1; }

.site-foot { margin-top: 5rem; border-top: 1px solid var(--line); padding-top: 1rem; color: var(--muted); font-size: .75rem; letter-spacing: .08em; }

@media (max-width: 600px) {
  .site-head { gap: .8rem 1rem; }
  .site-chat { margin-left: 0; width: 100%; }
  .site-cards { grid-template-columns: 1fr; }
  .song-list a { grid-template-columns: 2.2rem 1fr; }
  .song-list small { grid-column: 2; }
  .tl li { grid-template-columns: 1fr; gap: .2rem; }
  .diary-list a, .diary-list span { grid-template-columns: 1fr; gap: .1rem; }
}
