@import url("https://fonts.googleapis.com/css2?family=Rubik:wght@400;700&display=swap");
*,
*::after,
*::before {
  margin: 0;
  padding: 0;
  box-sizing: inherit; }

html {
  font-size: 62.5%; }
  @media (max-width: 75em) {
    html {
      font-size: 56.25%; } }
  @media (max-width: 56.25em) {
    html {
      font-size: 50%; } }

body {
  box-sizing: border-box; }

:root {
  --clr-primary: #D8E3E7;
  --clr-secondary: #51C4D3;
  --clr-tertiary: #126E82;
  --clr-quaternary: #132C33; }

body {
  font-size: 2.5rem;
  font-family: 'Rubik', sans-serif;
  background: var(--clr-secondary);
  padding: 2.5rem 5rem;
  display: flex;
  flex-direction: column; }

h1 {
  text-align: center;
  color: var(--clr-quaternary);
  background: var(--clr-primary);
  border-radius: 2rem;
  width: 30rem;
  align-self: center;
  padding: 1rem 2rem;
  box-shadow: 0.3rem 0.3rem 1.8rem rgba(0, 0, 0, 0.3);
  margin-bottom: 4rem;
  cursor: pointer;
  user-select: none; }
  h1:hover {
    filter: brightness(110%); }
  h1:active {
    box-shadow: none;
    transform: translateY(0.5rem); }

.bookmark__container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around; }
  @media (max-width: 37.5em) {
    .bookmark__container {
      justify-content: center; } }

.bookmark__card {
  position: relative;
  background: var(--clr-tertiary);
  color: #fff;
  padding: 2rem 3rem;
  border-radius: 2rem;
  margin-bottom: 3rem;
  text-align: center;
  transition: transform .2s;
  margin-left: 1rem; }
  .bookmark__card:hover {
    transform: scale(1.1); }
  @media (max-width: 37.5em) {
    .bookmark__card {
      width: 80%; } }

.bookmark__delete {
  position: absolute;
  top: 1rem;
  right: 1rem;
  font-size: 2rem;
  cursor: pointer; }
  @media (max-width: 37.5em) {
    .bookmark__delete {
      top: 2rem;
      right: 2rem;
      font-size: 4rem; } }
  .bookmark__delete:hover {
    transform: scale(1.2) rotate(-20deg); }

.bookmark__icon {
  vertical-align: middle;
  width: 2rem;
  margin-right: 1rem; }

.bookmark__url {
  margin-right: 1.5rem;
  text-decoration: none;
  color: inherit; }

.modal__page {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5; }

.modal__container {
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  justify-content: center;
  align-items: center; }
  .modal__container .modal {
    background: var(--clr-primary);
    padding: 3rem;
    border-radius: 1rem;
    width: 50rem;
    position: relative; }
    .modal__container .modal .close-modal {
      position: absolute;
      top: 1.5rem;
      right: 1.5rem;
      font-size: 2.5rem;
      cursor: pointer;
      color: var(--clr-tertiary); }
      .modal__container .modal .close-modal:hover {
        transform: scale(1.2) rotate(-20deg); }
    .modal__container .modal form {
      display: flex;
      flex-direction: column; }
      .modal__container .modal form label {
        margin-bottom: 1rem; }
      .modal__container .modal form input {
        font-size: 2rem;
        border: 2px solid transparent;
        border-radius: 1rem;
        padding: .5rem .5rem;
        margin-bottom: 3rem; }
        .modal__container .modal form input:active, .modal__container .modal form input:focus {
          outline: none;
          border: 2px solid var(--clr-secondary); }
      .modal__container .modal form button {
        font-size: 2.5rem;
        padding: .5rem 1rem;
        border: none;
        border-radius: 1rem;
        width: 60%;
        align-self: center;
        cursor: pointer;
        background: var(--clr-tertiary);
        color: #fff;
        transition: background .1s; }
        .modal__container .modal form button:hover {
          background: var(--clr-quaternary); }
        .modal__container .modal form button:active {
          transform: translateY(0.3rem); }
