/* Dark theme overrides for tiny-brutalism-css
   Loaded after CDN stylesheet — same or lower specificity wins via cascade */

:root {
  --bg:      #0a0a0a;
  --text:    #e8e8e8;
  --muted:   #aaa;
  --dim:     #555;
  --text-sm: 0.8rem;
  --text-xs: 0.75rem;
}

/* Base */
html, body {
  background-color: var(--bg);
  color: var(--text);
}

/* Links */
a {
  color: var(--text);
}
a:hover {
  color: var(--muted);
}

/* Terminal window */
.terminal {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 4rem);
  max-width: 850px;
  font-family: 'Roboto Mono', monospace;
  font-size: 0.875rem;
  background: var(--bg);
  display: flex;
  flex-direction: column;
}
.terminal-titlebar {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.6rem 1rem;
  background: #1a1a1a;
  border-bottom: 1px solid #2a2a2a;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
}
.terminal-dots { display: none; }
.terminal-title { position: absolute; left: 50%; transform: translateX(-50%); color: var(--dim); font-size: var(--text-xs); }
.terminal-body { padding: 1rem 2rem 1.5rem; line-height: 1.5; flex: 1; overflow-y: auto; scrollbar-width: none; }
.terminal-body::-webkit-scrollbar { display: none; }
.out { color: var(--muted); padding-left: 0.5rem; }
.cursor { animation: blink 1s step-end infinite; display: inline-block; }

/* MOTD banner */
.banner { margin-bottom: 0.75rem; }
.banner-last-login { color: var(--dim); font-size: var(--text-xs); margin-bottom: 0.25rem; }
.banner-ascii { color: var(--dim); margin: 0; padding: 0; line-height: 1.2; font-size: 0.78rem; white-space: pre; font-family: inherit; }
.banner-sep { color: #333; margin-top: 0.4rem; }
@keyframes blink { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }

/* Terminal typewriter animation — clip-path never affects layout, no gaps */
.command {
  white-space: nowrap;
  overflow: hidden;
}
.command::before,
.command-end::before {
  content: '$ ';
  color: var(--dim);
}
.log + .command,
.command-end {
  margin-top: 0.75rem;
}


/* Projects list */
.project-list { padding-left: 1rem; }
.project-row {
  display: flex;
  gap: 1.5rem;
  align-items: baseline;
  line-height: 1.5;
  overflow: hidden;
}
.project-row .project-name {
  color: var(--muted);
  font-weight: 400;
  font-size: var(--text-sm);
  min-width: 7.5rem;
  flex-shrink: 0;
  text-decoration: underline dashed;
}
.project-row .project-name:hover { color: var(--muted); }
.project-row .project-desc {
  color: var(--dim);
  font-size: var(--text-xs);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Mobile: full-bleed terminal */
@media (max-width: 600px) {
  .terminal { width: 100%; }
}

/* About / cat output */
.about-block { padding-left: 0.5rem; }
.exp-list { display: flex; flex-direction: column; gap: 0.25rem; }
.exp-row { font-size: var(--text-sm); line-height: 1.5; }
.exp-org { color: var(--text); }
.exp-year { color: var(--dim); }
.exp-detail { color: #666; font-size: var(--text-xs); line-height: 1.5; padding-left: 0.5rem; }
.contact-links { display: flex; gap: 1rem; }
.contact-links a { color: var(--muted); font-size: var(--text-sm); text-decoration: underline dashed; }

/* Interactive terminal */
.current-input { color: var(--text); }
.tap-hint { color: var(--dim); font-size: var(--text-xs); margin-top: 0.5rem; opacity: 1; transition: opacity 0.4s; }
.tap-hint.hidden { opacity: 0; }

