/* CV para imprimir / guardar em PDF (A4). No ecrã segue o Terra; em papel fica claro. */
@font-face { font-family: "Geist"; src: url("/fonts/Geist-Variable.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "Geist Mono"; src: url("/fonts/GeistMono-Variable.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }
:root { --bg: #17110D; --ink: #F3EDE3; --muted: #B8A893; --line: #4A3A2C; --accent: #D2B13C; --accent-text: #E2C866; color-scheme: dark; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--ink); font: 15px/1.55 "Geist", system-ui, sans-serif; }
.cv { max-width: 820px; margin: 0 auto; padding: 48px 28px 80px; }
header { border-bottom: 2px solid var(--accent); padding-bottom: 18px; margin-bottom: 8px; position: relative; }
h1 { margin: 0; font-size: 40px; font-weight: 600; letter-spacing: -.03em; }
.kicker { font-family: "Geist Mono", monospace; font-size: 12px; letter-spacing: .12em; color: var(--muted); margin: 6px 0; }
header p { margin: 4px 0; color: var(--muted); }
.print { position: absolute; right: 0; top: 6px; font: inherit; font-size: 14px; font-weight: 600; height: 40px; padding: 0 16px; border-radius: 12px; border: 0; background: var(--accent); color: var(--bg); cursor: pointer; }
section { padding: 18px 0 6px; break-inside: avoid-page; }
h2 { font-size: 13px; font-family: "Geist Mono", monospace; letter-spacing: .14em; text-transform: uppercase; color: var(--accent-text); margin: 0 0 10px; }
ul { list-style: none; padding: 0; margin: 0; }
li { display: grid; grid-template-columns: 9.5rem 1fr; gap: 14px; padding: 8px 0; border-bottom: 1px solid var(--line); break-inside: avoid; }
li:last-child { border-bottom: 0; }
.when { font-family: "Geist Mono", monospace; font-size: 12px; color: var(--muted); padding-top: 3px; }
li strong { display: block; font-weight: 600; }
.muted { color: var(--muted); display: block; font-size: 14px; }
li p, section > p { margin: 4px 0 0; font-size: 14px; white-space: normal; }
@media (max-width: 600px) { li { grid-template-columns: 1fr; gap: 2px; } .print { position: static; margin-top: 12px; } }
@media print {
  :root { --bg: #fff; --ink: #1a1410; --muted: #5d5246; --line: #ddd5c9; --accent: #9c7f12; --accent-text: #7d650c; color-scheme: light; }
  @page { size: A4; margin: 16mm 14mm; }
  .cv { padding: 0; max-width: none; }
  .print { display: none; }
  body { font-size: 12.5px; }
  h1 { font-size: 30px; }
}

.tools { position: absolute; right: 0; top: 6px; display: flex; gap: 8px; align-items: center; }
.tools .print { position: static; }
.lang { font-family: "Geist Mono", monospace; font-size: 13px; height: 40px; min-width: 44px; display: inline-grid; place-items: center; border-radius: 12px; border: 1px solid var(--line); color: var(--muted); text-decoration: none; }
li a { color: inherit; }
@media (max-width: 600px) { .tools { position: static; margin-top: 12px; } }
@media print { .tools { display: none; } li a { text-decoration: none; } }
