details {
  margin: 25px;
  font-size: 18px;
}
details > * {
  padding: .75rem;
}
details > div {
  background: #ffffff;
  border-radius: 0 0 5px 5px;
}
summary {
  border-radius: 5px;
  font-size: 20px;
  font-family: sans-serif;
  font-weight: bold;
  color: #ffffff;
  background: #cccccc;
  cursor: pointer;
  position: relative;
  transition: .3s;
  text-indent: 0px;
}
summary::marker {
  content: "";
   
}
summary::before {
  content:"";
  width: 1.25em;
  height:1.25em;
  position:absolute;
  inset: .75rem;
  left: auto;
  aspect-ratio: 1;
  background: 
   conic-gradient(from 90deg at 26% 26%, #0000 90deg, #fff 0) 
    100% 100%/58% 58%;
  clip-path: inset(1px);
  transition: .3s;
}
details[open] summary::before {
  transform: rotate(45deg);
}
details[open] summary {
  border-radius: 5px 5px 0 0;
  background: #C8102e;
}