.character {
  max-width: 100%;
  font-family: "Courier New", Courier, monospace;
  margin: 1rem;
  margin-top: 1.5rem;

  h1.name {
    margin: 0;
    margin-block-start: 0;
    margin-block-end: 0;
  }

  .archetype-damage {
    display: flex;
    flex-direction: row;
  }

  .damage {
    display: flex;
    flex-direction: row;
    gap: 0.5rem;
    flex-grow: 1;
    align-items: top;
    justify-content: end;

    input {
      display: none;
    }

    label {
      border: 1px solid #ccc;
      width: 1.5rem;
      height: 1.5rem;
      text-align: center;
      display: flex;
      justify-content: center;
      align-items: center;

      &[for=damage-temp] {
        display: none;
      }
    }

    input:checked + label {
      background-color: #000;
      color: #fff;
    }

    input#damage-third:checked + label:after {
      content: "️💀️";
    }
  }

  .archetype {
    font-size: 1.5rem;
    font-weight: bold;
    color: #666;
    margin-top: 0;
  }
}

.scores {
  display: flex;
  flex-direction: row;
  gap: 0.75rem;
}

.score {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  border: 1px solid #ccc;
  flex-grow: 1;

  .label {
    text-align: center;
    font-size: 0.75rem;
    font-weight: bold;
    text-transform: uppercase;
    padding: 0.5rem 0;
    background-color: #f8f8f8;
    border-bottom: 1px solid #ccc;
  }

  .value {
    text-align: center;
    font-size: 1.5em;
    margin: 0.5rem 0;
    font-weight: bold;
  }
}

.section {
  margin-top: 1rem;
  border-top: 1px solid #ccc;
  padding: 0 0.5rem 0.5rem 0.5rem;

  .label {
    display: inline-block;
    text-align: center;
    font-size: 0.75rem;
    font-weight: bold;
    text-transform: uppercase;
    padding: 0 0.5rem;
    background-color: #fff;
    position: relative;
    top: -0.6rem;
  }
}

.abilities {
  list-style-type: none;
  padding: 0;
  margin-block: 0;

  li {
    display: flex;
    flex-direction: row;
    align-items: start;
    gap: 0.5rem;
  }

  .rank {
    font-size: 0.5rem;
    font-weight: bold;
    text-transform: uppercase;
    padding: 0.25rem;
    display: block;
    border: 1px solid #ccc;
    background-color: #f8f8f8;
  }

  .name {
    font-weight: bold;
  }

  .name-description {
    text-decoration: underline;
    text-underline-offset: 0.3rem;
    text-decoration-color: #ccc;
    line-height: 1.3rem;
  }
}

.character-actions {
  display: flex;
  flex-direction: column;
  margin: 2rem 1rem 0 1rem;
  gap: 0.5rem;
}
body {
  font-family:'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
}

.container {
  width: 100%;
  padding-top: 2rem;

  @media only screen and (min-width: 600px) {
    max-width: 32rem;
  }
}

.button {
  text-align: center;
  appearance: none;
  border: 0;
  background: #888;
  color: #f8f8f8;
  border-radius: 0.25rem;
  padding: 1rem;
  font-size: medium;
  text-decoration: none;
  cursor: default;
  box-sizing: border-box;
}

.button--primary {
  background-color: oklch(0.5 0.134 242.748993);
  color: #fff;
}

.confirmation {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  margin: 2rem;
}

.confirmation--options {
  width: 100%;
  display: flex;
  flex-direction: row;
  margin-top: 1rem;
  gap: 0.5rem;

  form,
  a {
    flex-grow: 1
  }

  button {
    width: 100%;
  };
}

nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background-color: #ccc;
  padding: 0.5rem 1rem;
  display: flex;
  justify-content: end;

  a {
    color: #111;
    text-decoration: none;

    &:hover {
      text-decoration: underline;
    }
  }

  button {
    appearance: none;
    border: 0;
    background-color: transparent;
    padding: 0;
    margin: 0;

    &:hover {
      text-decoration: underline;
    }
  }
}

.button_to {
  display: inline;

  button {
    width: 100%;
  }
}
button[popovertarget] {
  appearance: none;
  border: 0;
  background: none;
  font: inherit;
  display: inline;
  margin: 0;
  padding: 0;

  text-decoration-style: dashed;
  text-decoration-line: underline;
  text-underline-offset: 2px;
  overflow: visible;

  &:hover {
    text-decoration-style: solid;
  }
}
/* 1. Use a more-intuitive box-sizing model */
*, *::before, *::after {
  box-sizing: border-box;
}

/* 2. Remove default margin */
* {
  margin: 0;
}

body {
  /* 3. Add accessible line-height */
  line-height: 1.5;
  /* 4. Improve text rendering */
  -webkit-font-smoothing: antialiased;
}

/* 5. Improve media defaults */
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

/* 6. Inherit fonts for form controls */
input, button, textarea, select {
  font: inherit;
}

/* 7. Avoid text overflows */
p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}

/* 8. Improve line wrapping */
p {
  text-wrap: pretty;
}
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}

/*
  9. Create a root stacking context
*/
#root, #__next {
  isolation: isolate;
}
body.sessions {
  background-color: #eee;
  padding: 1rem;
}

.other-links {
  display: flex;
  flex-direction: column;
  margin-top: 1rem;
}

#clearance form {
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 0.25rem;
  padding: 1rem;

  .text-field,
  .password-field,
  .submit-field {
    display: flex;
    flex-direction: column;
    margin-bottom: 0.5rem;

    label {
      margin-bottom: 0.25rem;
    }

    input {
      appearance: none;
      border: 1px solid #ccc;
      border-radius: 0.25rem;
      padding: 1rem;
      font-size: medium;
    }
  }

  .submit-field {
    margin: 1rem 0 0 0;
  }
}
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *


 */
