@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600&display=swap');

.blog-post-meta { margin: -10px 0px 0px 2px; color: #888; }
.tags { margin: 0px 0px 0px 2px; color: #888; }
.version { color: #bbb; font-size: 10px; margin-bottom: 20px; }
.profile { max-width:300px; margin-top: 30px; }
.footer { margin-top: 20px; }
html { height: 100%; }
body { font-family: 'Inter', sans-serif; min-height:100vh; display:flex; flex-direction:column; color: #1a1a1a; }
.wrapper { flex: 1; }
.menu a, .footer a { color: rgba(0,0,0,.60); }
.footer a:hover { color: #2563eb; }
.logo { background: #2563eb; color: #fff; font-size: 28px; padding: 10px 15px; float:left; border-radius: 4px; }
.logo:hover { background: #1d4ed8; color: #fff; text-decoration: none; }
.cover { padding-top: 35%; }
.menu { padding-top: 20px; }
.menu a { padding: 0px 10px; }
.full-height { height: 100%; }
.keywords {
  border-right: solid 3px #2563eb;
  white-space: nowrap;
  overflow: hidden;
  font-size: 14px;
  color: rgba(0,0,0,.60);
  animation: animated-text 4s steps(29,end) 1s 1 normal both,
             animated-cursor 600ms steps(29,end) infinite;
}
.admin-posts { list-style: none; text-align: left; }
.admin-posts li { padding-bottom: 10px; }
.research { background:#f8fafc; margin-bottom: 5px; padding:8px; border-radius: 4px; }
.research:nth-child(even) { background: #fff; }
.bottom { min-height: 200px; width: 100%; background-color: #1e293b; color: #e2e8f0; }
.bottom a { color: #93c5fd; }
.bottom a:hover { color: #fff; }
/* text animation */
@keyframes animated-text{  from{width: 0;} to{width: 350px;} }
/* cursor animations */
@keyframes animated-cursor{ from{border-right-color: rgba(0,0,0,.75);} to{border-right-color: transparent;}  }

video {
  left: 50%;
  min-height: 100%;
  min-width: 100%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

/* 1. No object-fit support: */
@media (min-aspect-ratio: 16/9) { #video-bg > video { height: 300%; top: -100%; }  }
@media (max-aspect-ratio: 16/9) { #video-bg > video { width: 300%; left: -100%; }  }

/* 2. If supporting object-fit, overriding (1): */
@supports (object-fit: cover) {  #video-bg > video { top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; } }

/* Markdown tables */
#html table, #page-content table {
  width: 100%;
  margin-bottom: 1rem;
  border-collapse: collapse;
}
#html th, #html td, #page-content th, #page-content td {
  padding: 0.5rem;
  border: 1px solid #e2e8f0;
  text-align: left;
}
#html thead th, #page-content thead th {
  border-bottom: 2px solid #e2e8f0;
  background-color: #f8fafc;
}

/* Comments */
.comment { border-bottom: 1px solid #e2e8f0; padding: 15px 0; text-align: left; }
.comment-meta { color: #888; font-size: 13px; margin-bottom: 5px; }
.comment-content { font-size: 14px; }

/* Search */
.nav-search { display: inline; margin-left: 10px; }
.nav-search-input { font-family: 'Inter', sans-serif; font-size: 13px; padding: 2px 8px; border: 1px solid #d1d5db; border-radius: 6px; width: 140px; vertical-align: baseline; }
.nav-search-input:focus { outline: none; border-color: #2563eb; box-shadow: 0 0 0 2px rgba(37,99,235,0.2); }
.search-page-form { margin: 20px 0; }
.search-page-input { font-family: 'Inter', sans-serif; font-size: 14px; padding: 6px 10px; border: 1px solid #d1d5db; border-radius: 6px; width: 300px; }
.search-page-btn { font-family: 'Inter', sans-serif; font-size: 14px; padding: 6px 16px; border: none; border-radius: 6px; background: #2563eb; color: #fff; cursor: pointer; }
.search-page-btn:hover { background: #1d4ed8; }

/* External backlinks table: keep every row to a single line, truncating long referer URLs */
.backlinks-table .backlinks-referer {
  width: 100%;
  max-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* The "Powered by goblog" credit is goblog's shared _powered_by partial; its
   link takes the colour of the footer line around it. */
.powered-by a { color: inherit; }
