*, *::before, *::after { 
      box-sizing: border-box; 
      margin: 0; 
      padding: 0; 
    }
      /*
      --mio-b:          #33f;
      --mio-y:          #ffdd33;
      */
    :root {
      --bg:             #fafafa;
      --fg:             #fff;
      --txtp:           #09090b;
      --txts:           #717171;
      --border:         1px solid #e4e4e7;
      --muted:          #f4f4f5;

      --mio:            #0077ff; /* softer #2F62FC */
      --mioi:           #ffdd33; /* amarelo */
      --mioia:          rgba(250, 210, 10, 0.2); /* amarelo transparente */
      --bg-mio:         var(--mio);
      --tom:            #50f;

      --logo:           none;
      --sun:            none;
      --moon:           static;
      --scroll:         var(--mio) transparent;

      /*so far only for search*/
      --bg-badge:       var(--mio);
      --fg-badge:       transparent;
      --bg-check:       var(--mio); /* was 55f */
      --fg-check:       var(--mio);
      --chover:         lightyellow;
      /* constant across brightness */
      --input:          var(--border);
      --radius:         6px;

      --tree-indent:    16px; /*only for search*/
    }

    [data-theme="dark"] {
      --bg:             #050505;
      --fg:             #111;
      --txtp:           #fafafa;
      --txts:           #ccc;
      --border:         1px solid #444;
      --muted:          #333;

      --mio:            #ffdd33; /*#fc2?*/
      --mioi:           #0077ff;
      --bg-mio:         #4C00FF; /*#ffdd33*/

      --logo:           invert(1);
      --sun:            static;
      --moon:           none;
      --scroll:         var(--mio) transparent;

      --bg-badge:       #115;
      --fg-badge:       var(--tom);
      --bg-check:       #115; /* was 55f */
      --fg-check:       var(--tom);
      --chover:         #115;
    }

    @font-face {
          font-family: "HeptaSlab";
          src: url("assets/fonts/HeptaSlab-VariableFont_wght.ttf") format("truetype");
        }
    @font-face {
          font-family: "IBMPlex";
          src: url("assets/fonts/IBMPlexSans-VariableFont_wdth,wght.ttf") format("truetype");
        }

    html {
      scrollbar-color: var(--scroll);
      background: var(--bg-mio);
      font-size: 16px;
      font-family: ui-sans-serif, system-ui, sans-serif;
    }

    /* ================== HEADER ================== */
    header {
      background: var(--fg);
      color: var(--txtp);
      border-bottom: var(--border);
      width: 100%;
      z-index: 2;
      display: flex;
      justify-content: space-between;
      padding: 1rem 1.5rem;
    }
    .navlinks {
      display: flex;
      justify-content: space-evenly;
      align-items: center;
      gap: 1rem;
    }
    .navlinks a {
      text-decoration: none;
      font-family: ui-sans-serif, system-ui, sans-serif;
      font-size: 0.8rem;
      font-weight: bold;
      color: var(--txtp);
      margin-right: 8px;
      padding-top: 5px;
      border-bottom: 2px dotted var(--fg);
    }
    .navlinks a:hover {
      /*border-bottom: 2px dotted var(--mio);*/
      color: var(--mio);
    }
    .switch {
      background: none;     
      border: 2px dotted var(--fg);
      color: var(--txtp);
      padding: 0px;
      cursor: pointer;
      width: 24px;
      height: 24px;
      position: relative;
    }
    .switch:hover {
      border-radius: 50%;
      border: 2px dotted var(--mio);
      .tooltip {
      visibility: visible;
      transition-delay: 0.5s;
      transition-property: visibility;
      }
    }
    #lang {
      width: 22px;
      height: 22px;
    }
    .sun {
      color: var(--mio);
      display: var(--sun);
    }
    .moon {
      color: var(--mio);
      display: var(--moon);
      width: 20px;
    }
    .logo {
      height: 25px;
    }
    .logo img {
      height: 23px;
      filter: var(--logo);
    }
    .slash {
      color: var(--slash);
      font-weight: bold;
      font-family: Rockwell, sans-serif;
      font-size: 1.8rem;
    }
    .tooltip {
      padding: 4px;
      background: var(--muted);
      color: var(--txts);
      font-size: 0.7rem;
      font-weight: normal;
      border-radius: var(--radius);
      margin: auto;
      position: absolute;
      text-align: center;
      min-width: 50px;
      top: 32px;
      left: -15px;
      visibility: hidden;
      overflow: none;
    }
    .tooltip::before {
      content: '';
      position: absolute;
      top: -10px;
      left: calc(50% - 5px);
      border: 5px solid #000;
      border-color: transparent transparent var(--muted) transparent;
    }
    #lang-drop {
      appearance: none;
      background: var(--fg);
      color: var(--txtp);
      border: none;
      opacity: 0%;
      width: 20px;
      height: 20px;
      cursor: pointer;
      position: absolute;
      left: 0px;
    }

    /* CARD STYLES */
    .card-preview {
      background: var(--fg);
      font-family:'HeptaSlab',sans-serif; 
      padding: 0.8rem 1rem;
    }
    .cloc, .ctrabalho, .ctexto, .ctags {
      font-family: 'IBMPlex', sans-serif;
    }
    .cnome, .ctrabalho {
      padding-right: 70px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      color: var(--txtp);
    }
    .cnome {
      font-size: 1.1rem;
      font-weight: 500;
    }
    .ctrabalho {
      font-weight: 600;
      font-size: 0.85rem;
    }
    .cloc {
      font-size: 0.7rem;
      color: var(--txts);
      font-weight: 400;
      margin-bottom: 0.4rem;
    }
    .ctexto {
      height: 45px;
      overflow: hidden;
      margin-top: 0px;
      font-size: 0.75rem;
      line-height: 0.9rem;
      color: var(--txtp);
    }
    .cpic {
      position: absolute;
      right: 12px;
      top: 12px;
      height: 55px;
      border-radius: 50%;
      transition: all 0.1s ease;
      object-fit: cover;
       aspect-ratio: 1/1;
    }
    .cpic:hover {
      border-radius: 6px;
      height: calc(100% - 18px);
      right: 8px;
      top: 8px;
      box-shadow: -20px 0px 10px var(--fg);
    }

