body {
  font-family: 'Segoe UI', sans-serif;
  background: linear-gradient(to bottom, #1c0f2e, #0a0510);
  color: #f4e9ff;
  line-height: 1.6;
}

.container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 40px 20px;
}

/* Header */
header {
  background: #1a0c2e;
  border-bottom: 1px solid #3b1f4d;
  box-shadow: 0 2px 10px rgba(255, 110, 199, 0.1);
}

iframe {
  display: absolute;
  width: 100%;
}

.header-content {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.profile-pic {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid #ff6ec7;
  box-shadow: 0 0 15px rgba(255, 110, 199, 0.4);
}

h1 {
  font-size: 2.5rem;
  color: #ffffff;
}

.dot {
  color: #ff6ec7;
}

nav {
  margin-top: 10px;
}

a, a:hover, a:focus, a:active {
      text-decoration: none;
      color: inherit;
 }

nav a {
  margin-right: 20px;
  text-decoration: none;
  color: #ddb3f8;
  transition: color 0.3s;
}

nav a:hover {
  color: #ff6ec7;
}

/* Sections */
h2 {
  font-size: 1.8rem;
  margin-bottom: 15px;
  color: #ff6ec7;
}

ul {
  padding-left: 20px;
}

.box {
	display: flex;
	flex-direction: row;
  	align-items: baseline;
  	justify-content: center; /* ou space-between si tu préfères */
  	gap: 2rem; /* ajuste à ton goût */
}

.fields {
  margin: 4rem 0;
  padding: 2.5rem 3rem;
  border-radius: 1.5rem;
  background: linear-gradient(
    135deg,
    rgba(230, 230, 230, 0.04),
    rgba(255, 110, 199, 0.2)
  );
  backdrop-filter: blur(8px);
}

.projects {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.card {
  background-color: #2b1c3a;
  border-radius: 8px;
  padding: 15px;
  flex: 1 1 280px;
  transition: transform 0.3s ease, box-shadow 0.3s;
  border-left: 4px solid #ff6ec7;
  box-shadow: 0 0 5px rgba(255, 110, 199, 0.2);
}

.card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 20px rgba(255, 110, 199, 0.3);
}

.project-img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  border-radius: 6px;
  margin-bottom: 10px;
}

/* Contact */
section#contact a {
  color: #a29bfe;
  text-decoration: none;
  transition: color 0.3s;
}

section#contact a:hover {
  color: #ff6ec7;
}

footer {
  background: #1a0c2e;
  padding: 20px;
  text-align: center;
  font-size: 0.9rem;
  color: #caa9dd;
}

.nav-link {
  display:block;
  padding:15px
 }

/* Active nav link */
nav a.active {
  color: #ff6ec7;
}

/* ===== Terminal window wrapping the whole page content ===== */
.terminal-window {
  position: relative;
  background: #0d0716;
  border: 1px solid #ff6ec7;
  border-radius: 10px;
  box-shadow:
    0 0 12px rgba(255, 110, 199, 0.35),
    0 0 40px rgba(140, 80, 255, 0.15),
    inset 0 0 30px rgba(255, 110, 199, 0.04);
  overflow: hidden;
  font-family: 'Consolas', 'Courier New', monospace;
}

/* scanline overlay for a cyberpunk CRT feel */
.terminal-window::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: repeating-linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.025) 0px,
    rgba(255, 255, 255, 0.025) 1px,
    transparent 2px,
    transparent 4px
  );
  mix-blend-mode: overlay;
}

.terminal-titlebar {
  display: flex;
  align-items: center;
  gap: 16px;
  background: linear-gradient(90deg, #1a0c2e, #2b1340);
  border-bottom: 1px solid #3b1f4d;
  padding: 10px 16px;
}

.terminal-dots {
  display: flex;
  gap: 8px;
}

.terminal-dots span {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  display: inline-block;
  box-shadow: 0 0 6px currentColor;
}

.terminal-dots .red { background: #ff5f56; color: #ff5f56; }
.terminal-dots .yellow { background: #ffbd2e; color: #ffbd2e; }
.terminal-dots .green { background: #27c93f; color: #27c93f; }

.terminal-titlebar .terminal-title {
  font-size: 0.85rem;
  color: #ddb3f8;
  letter-spacing: 0.5px;
}

.terminal-body {
  position: relative;
  padding: 22px 26px 36px;
}

.terminal-line {
  font-size: 0.95rem;
  margin-bottom: 18px;
}

.terminal-line .prompt {
  color: #ff6ec7;
  text-shadow: 0 0 6px rgba(255, 110, 199, 0.6);
}

.terminal-line .path {
  color: #a29bfe;
}

.terminal-line .cmd-text {
  color: #a8ff8c;
  text-shadow: 0 0 6px rgba(168, 255, 140, 0.5);
}

.cursor {
  display: inline-block;
  width: 8px;
  background: #a8ff8c;
  box-shadow: 0 0 6px rgba(168, 255, 140, 0.8);
  margin-left: 2px;
  animation: blink 1s steps(1) infinite;
}

.cursor.hidden {
  display: none;
}

@keyframes blink {
  0%, 50% { opacity: 1; }
  50.01%, 100% { opacity: 0; }
}

/* output revealed once the command "finishes" typing */
.terminal-output {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.terminal-output.show {
  opacity: 1;
  transform: translateY(0);
}

/* tone down the sections so they read as terminal output, not a separate page */
.terminal-output section,
.terminal-output .fields {
  background: rgba(255, 255, 255, 0.02);
}

/* ===== Markdown writeup rendering ===== */
.md-content {
  font-family: 'Segoe UI', sans-serif;
  line-height: 1.7;
}

.md-content h1,
.md-content h2,
.md-content h3 {
  color: #ff6ec7;
  text-shadow: 0 0 6px rgba(255, 110, 199, 0.3);
  margin-top: 1.8rem;
  margin-bottom: 0.8rem;
}

.md-content h1 { font-size: 1.9rem; }
.md-content h2 { font-size: 1.5rem; }
.md-content h3 { font-size: 1.2rem; }

.md-content p {
  margin-bottom: 1rem;
}

.md-content a {
  color: #a29bfe;
  text-decoration: underline;
}

.md-content a:hover {
  color: #ff6ec7;
}

.md-content ul,
.md-content ol {
  margin-bottom: 1rem;
  padding-left: 1.5rem;
}

.md-content blockquote {
  border-left: 3px solid #ff6ec7;
  margin: 1rem 0;
  padding: 0.4rem 1rem;
  color: #ddb3f8;
  background: rgba(255, 110, 199, 0.05);
}

.md-content code {
  font-family: 'Consolas', 'Courier New', monospace;
  background: #1a0c2e;
  color: #a8ff8c;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 0.9em;
}

.md-content pre {
  background: #1a0c2e;
  border: 1px solid #3b1f4d;
  border-radius: 8px;
  padding: 14px 16px;
  overflow-x: auto;
  margin-bottom: 1.2rem;
  box-shadow: 0 0 8px rgba(255, 110, 199, 0.1);
}

.md-content pre code {
  background: none;
  padding: 0;
}

.md-content img {
  max-width: 100%;
  border-radius: 8px;
  margin: 1rem 0;
  border: 1px solid #3b1f4d;
}

.md-content table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1.2rem;
}

.md-content th,
.md-content td {
  border: 1px solid #3b1f4d;
  padding: 8px 12px;
  text-align: left;
}

.md-content th {
  background: rgba(255, 110, 199, 0.1);
  color: #ff6ec7;
}

.md-content hr {
  border: none;
  border-top: 1px solid #3b1f4d;
  margin: 2rem 0;
}

.md-back {
  display: inline-block;
  margin-bottom: 1.5rem;
  color: #ddb3f8;
  font-family: 'Consolas', 'Courier New', monospace;
}

.md-back:hover {
  color: #ff6ec7;
}

.md-loading,
.md-error {
  font-family: 'Consolas', 'Courier New', monospace;
  color: #a8ff8c;
}

.md-error {
  color: #ff5f56;
}