:root {
    --color-bg: oklch(100% 0.00011 271.152);
    --color-text: oklch(0% 0 0);
    --color-border: oklch(80% 3% 200);
    --color-accent: oklch(87.266% 0.07276 351.978 / 0.87);
}

:root[data-theme="dark"] {
    --color-bg: oklch(20% 5% 220);
    --color-text: oklch(95% 2% 220);
    --color-border: oklch(60% 3% 200);
    --color-accent: oklch(70% 60% 40);
}

html {
    background-color: var(--color-bg);
    color: var(--color-text);
    accent-color: var(--color-accent);
}

nav {
    font: 100%/1.5 system-ui;
    display: flex;
    margin-bottom: 50px;
    border-bottom: 1px solid var(--color-border);
}

nav a {
    display: flex;
    text-decoration: none;
    color: inherit;
    text-align: center;
    padding: 0.5em;
}

a.current {
    border-bottom: 0.4em solid oklch(81.177% 0.13863 342.95);
    padding-bottom: 0.1em;
}

nav a:hover {
    border-bottom: 0.4em solid var(--color-accent);
    padding-bottom: 0.1em;
}

body {
    font: 100%/1.5 system-ui;
    max-width: 100ch;
    margin-inline: auto;
    padding: 50px;
}
form{
    display: grid;
    font: inherit;
}

.projects{
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(15em, 1fr));
}

.projects img{
    padding: 5px;
}


body.CV{
  margin-inline: auto;
  padding: 40px 24px;
  line-height: 1.35;
}

body.CV section > article{
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 12px;
  padding-block: 10px;
  margin-block: 6px;
}


body.CV .date{
  margin-left: auto;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  line-height: 1.2;
  padding-left: 12px;
}

@media (max-width: 680px){
  body.CV .date{
    flex-basis: 100%;
    margin-left: 0;
    padding-left: 0;
    margin-top: 2px;
  }
}



