.is-hidden {
  display: none !important;
}

.auth-trigger,
.account-control button {
  padding: 8px 12px;
  border: 1px solid #dce2d5;
  border-radius: 3px;
  background: #f7f8f2;
  color: #60745d;
  font: 10px "Noto Serif SC", serif;
  cursor: pointer;
}

.account-control {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #69745f;
  font: 10px "Noto Serif SC", serif;
}

.auth-dialog {
  width: min(390px, calc(100% - 28px));
  padding: 0;
  border: 1px solid #e6e4db;
  border-radius: 5px;
  background: #fbfaf6;
  color: #344638;
  box-shadow: 0 24px 90px #24322642;
}

.auth-dialog::backdrop {
  background: #26322870;
  backdrop-filter: blur(3px);
}

.auth-content {
  padding: 32px 32px 24px;
}

.auth-content h2 {
  margin: 9px 0 5px;
  color: #3e4d3d;
  font: 600 23px "Noto Serif SC", serif;
}

.auth-intro,
.auth-note {
  color: #92958a;
  font: 10px/1.8 "Noto Serif SC", serif;
}

.auth-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: 22px 0 17px;
}

.auth-tab {
  padding: 9px;
  border: 1px solid #e6e5db;
  background: transparent;
  color: #858b7e;
  font: 11px "Noto Serif SC", serif;
  cursor: pointer;
}

.auth-tab.active {
  border-color: #788a70;
  background: #788a70;
  color: #fff;
}

#auth-form label {
  display: block;
  margin: 13px 0 6px;
  color: #64715f;
  font: 10px "Noto Serif SC", serif;
}

#auth-form input {
  width: 100%;
  height: 42px;
  padding: 0 12px;
  border: 1px solid #e4e3da;
  border-radius: 2px;
  outline: none;
  background: #fffefa;
  color: #344638;
  font: 12px "DM Sans", sans-serif;
}

#auth-form input:focus {
  border-color: #87967a;
  box-shadow: 0 0 0 2px #87967a22;
}

.auth-error {
  min-height: 18px;
  margin: 8px 0 2px;
  color: #a45f53;
  font: 10px "Noto Serif SC", serif;
}

.auth-submit {
  width: 100%;
  height: 42px;
  border: 1px solid #657b62;
  background: #657b62;
  color: white;
  font: 11px "Noto Serif SC", serif;
  cursor: pointer;
}

.auth-submit:disabled {
  opacity: .65;
  cursor: wait;
}

.auth-note {
  margin: 15px 0 0;
  font-size: 9px;
}

@media (max-width: 760px) {
  .auth-trigger,
  .account-control button {
    padding: 7px 8px;
    font-size: 9px;
  }

  .account-control {
    gap: 5px;
    font-size: 9px;
  }

  .account-control span {
    max-width: 60px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .auth-content {
    padding: 28px 23px 20px;
  }
}
