/* Reserved area: login, logout, profile, password / username recovery and the RSForm lists.
   Loaded by index.php when the page belongs to com_users or to the RSForm directory / submissions views.
   Same look as the forms: white card, paper fields, gold pill buttons. */

.st-page--account {
  max-width: 32rem;
}

.st-page--account-profile,
.st-page--account-registration {
  max-width: 44rem;
}

.st-page--account-table {
  max-width: 80rem;
}

.st-page__lead {
  max-width: 42rem;
  margin: 0.9rem 0 0;
  color: var(--muted);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
}

.st-page--account .st-page__head {
  margin-bottom: 1.6rem;
}

/* ---- card ------------------------------------------------------------ */
.st-page--account form.well,
.st-page--account .com-users-profile {
  margin: 0;
  padding: clamp(1.25rem, 3.5vw, 2.1rem);
  border: 1px solid var(--line);
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 10px 30px rgba(0, 36, 59, 0.06);
}

.st-page--account fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.st-page--account legend {
  float: none;
  width: auto;
  margin: 0 0 0.9rem;
  padding: 0;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* the legend of recovery forms is Joomla's instruction text: readable, not a label */
.st-page--account :is(.com-users-reset, .com-users-remind) legend {
  margin-bottom: 1.1rem;
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.6;
  text-transform: none;
}

/* ---- fields ---------------------------------------------------------- */
.st-page--account .control-group {
  display: block;
  margin: 0 0 1.05rem;
}

.st-page--account .control-label {
  width: auto;
  margin: 0 0 0.35rem;
  padding: 0;
  text-align: left;
}

.st-page--account .control-label label {
  color: var(--navy);
  font-size: 0.84rem;
  font-weight: 700;
}

.st-page--account .star {
  color: #c79a00;
}

.st-page--account .controls {
  margin: 0;
  min-width: 0;
}

.st-page--account .form-control,
.st-page--account input[type="text"],
.st-page--account input[type="email"],
.st-page--account input[type="password"],
.st-page--account select,
.st-page--account textarea {
  display: block;
  width: 100%;
  min-height: 3.15rem;
  padding: 0.8rem 1rem;
  border: 1px solid rgba(0, 51, 82, 0.14);
  border-radius: 0.85rem;
  background-color: var(--paper);
  box-shadow: none;
  color: var(--ink);
  font-family: var(--font);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
}

.st-page--account :is(.form-control, input:not([type="checkbox"]):not([type="radio"]), select, textarea):focus {
  outline: none;
  border-color: var(--navy);
  background-color: #fff;
  box-shadow: 0 0 0 4px rgba(247, 202, 24, 0.45);
}

.st-page--account :is(.form-control, input, select, textarea).invalid {
  border-color: #b3261e;
}

/* password with show / hide button inside the field */
.st-page--account .input-group {
  position: relative;
  display: flex;
  width: 100%;
}

.st-page--account .input-group .form-control {
  padding-right: 3.3rem;
}

.st-page--account .btn.input-password-toggle {
  position: absolute;
  top: 0;
  right: 0;
  display: grid;
  place-items: center;
  width: 3.15rem;
  height: 100%;
  padding: 0;
  border: 0;
  border-radius: 0 0.85rem 0.85rem 0;
  background: transparent;
  color: var(--navy);
  cursor: pointer;
}

.st-page--account .btn.input-password-toggle:hover,
.st-page--account .btn.input-password-toggle:focus-visible {
  background: transparent;
  color: #8a6b00;
}

.st-page--account .input-password-toggle :is(.icon-eye, .icon-eye-slash) {
  display: block;
  width: 1.3rem;
  height: 1.3rem;
  background-color: currentColor;
  -webkit-mask: var(--st-eye) center / contain no-repeat;
  mask: var(--st-eye) center / contain no-repeat;
}

.st-page--account .input-password-toggle .icon-eye {
  --st-eye: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");
}

.st-page--account .input-password-toggle .icon-eye-slash {
  --st-eye: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l18 18'/%3E%3Cpath d='M10.6 6.2A9.9 9.9 0 0 1 12 6c6.4 0 10 6 10 6a17 17 0 0 1-3.2 3.9M6.5 7.7A17 17 0 0 0 2 12s3.6 7 10 7a9.6 9.6 0 0 0 4.1-.9'/%3E%3Cpath d='M9.9 9.9a3 3 0 0 0 4.2 4.2'/%3E%3C/svg%3E");
}

.st-page--account .input-password-toggle :is(.icon-eye, .icon-eye-slash)::before {
  content: none;
}

/* remember me */
.st-page--account .form-check {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1.2rem;
  padding: 0;
}

.st-page--account .form-check-input {
  flex: 0 0 auto;
  width: 1.15rem;
  height: 1.15rem;
  margin: 0;
  accent-color: var(--navy);
}

.st-page--account .form-check-label {
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 600;
  cursor: pointer;
}

/* ---- buttons --------------------------------------------------------- */
.st-page--account .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 1rem 1.4rem;
  border: 0;
  border-radius: 999px;
  background: var(--gold);
  color: var(--navy);
  font-family: var(--font);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  line-height: 1.2;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
}

.st-page--account .btn:hover,
.st-page--account .btn:focus-visible {
  background: #e4b70c;
  color: var(--navy);
}

.st-page--account form .controls > .btn,
.st-page--account .com-users-login__submit .btn {
  width: 100%;
}

.st-page--account .btn:not(.input-password-toggle) [class^="icon-"],
.st-page--account .btn:not(.input-password-toggle) [class*=" icon-"] {
  display: none;
}

.st-page--account .com-users-login__submit,
.st-page--account .com-users-reset__submit,
.st-page--account .com-users-remind__submit,
.st-page--account .com-users-logout__submit {
  margin-bottom: 0;
}

/* ---- links under the login form ------------------------------------- */
.st-page--account .com-users-login__options {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.15rem;
  margin: 1.3rem 0 0;
  padding: 0;
}

.st-page--account .com-users-login__options .list-group-item {
  padding: 0.3rem 0;
  border: 0;
  background: none;
  color: var(--navy);
  font-size: 0.9rem;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: var(--gold);
  text-decoration-thickness: 2px;
  text-underline-offset: 0.2em;
}

.st-page--account .com-users-login__options .list-group-item:hover {
  color: #8a6b00;
}

/* ---- profile --------------------------------------------------------- */
.st-page--account .com-users-profile__edit {
  display: flex;
  justify-content: flex-end;
  float: none !important;
  margin: 0 0 1.2rem;
  padding: 0;
  list-style: none;
}

.st-page--account .com-users-profile__edit .btn {
  padding: 0.7rem 1.2rem;
  background: #fff;
  box-shadow: inset 0 0 0 1.5px var(--navy);
}

.st-page--account .com-users-profile__edit .btn:hover {
  background: var(--paper);
}

.st-page--account .com-users-profile fieldset + fieldset {
  margin-top: 1.6rem;
  padding-top: 1.4rem;
  border-top: 1px solid var(--line);
}

.st-page--account dl.dl-horizontal {
  display: grid;
  grid-template-columns: minmax(8rem, 12rem) 1fr;
  gap: 0;
  margin: 0;
}

.st-page--account dl.dl-horizontal dt,
.st-page--account dl.dl-horizontal dd {
  float: none;
  width: auto;
  margin: 0;
  padding: 0.7rem 0;
  border-bottom: 1px solid var(--line);
  text-align: left;
}

.st-page--account dl.dl-horizontal dt {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.st-page--account dl.dl-horizontal dd {
  color: var(--ink);
  font-size: 0.98rem;
  font-weight: 600;
}

@media (max-width: 520px) {
  .st-page--account dl.dl-horizontal {
    grid-template-columns: 1fr;
  }

  .st-page--account dl.dl-horizontal dt {
    padding-bottom: 0;
    border-bottom: 0;
  }
}

/* ---- messages -------------------------------------------------------- */
.st-page--account #system-message-container {
  margin: 0 0 1.2rem;
}

.st-page--account #system-message-container:empty {
  display: none;
}

/* ---- RSForm lists (directory / submissions) ------------------------- */
.st-page--account-table .rsfp-directory-search {
  max-width: 44rem;
  margin: 0 0 1.2rem;
}

.st-page--account-table .rsfp-directory-search label {
  display: block;
  margin: 0 0 0.35rem;
  color: var(--navy);
  font-size: 0.84rem;
  font-weight: 700;
}

.st-page--account-table .rsfp-directory-search .btn,
.st-page--account-table .directoryTableContainer + .btn {
  margin: 0.6rem 0.4rem 0 0;
  padding: 0.75rem 1.2rem;
}

.st-page--account-table .directoryTableContainer,
.st-page--account-table .table-responsive {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 1rem;
  background: #fff;
}

.st-page--account-table .directoryTableContainer table,
.st-page--account-table .table-responsive table {
  margin: 0;
}

.st-page--account-table input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  flex: none;
  width: 1.2rem;
  height: 1.2rem;
  min-height: 0;
  margin: 0;
  border: 1.5px solid rgba(0, 51, 82, 0.4);
  border-radius: 0.35rem;
  background: #fff center / 78% no-repeat;
  vertical-align: middle;
  cursor: pointer;
  transition: background-color 0.12s ease, border-color 0.12s ease;
}

.st-page--account-table input[type="checkbox"]:hover {
  border-color: var(--navy);
}

.st-page--account-table input[type="checkbox"]:checked,
.st-page--account-table input[type="checkbox"]:indeterminate {
  border-color: var(--navy);
  background-color: var(--navy);
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M3.5 8.5l3 3 6-7' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}

.st-page--account-table input[type="checkbox"]:indeterminate {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M4 8h8' stroke='white' stroke-width='2.2' stroke-linecap='round'/></svg>");
}

/* focus: a discreet ring for keyboard users, nothing that changes the checked look */
.st-page--account-table input[type="checkbox"]:focus {
  outline: none;
  box-shadow: none;
}

.st-page--account-table input[type="checkbox"]:focus-visible {
  outline: 3px solid rgba(247, 202, 24, 0.75);
  outline-offset: 2px;
}

.st-page--account-table table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.92rem;
}

.st-page--account-table th,
.st-page--account-table td {
  padding: 0.65rem 0.8rem;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
}

.st-page--account-table th {
  background: var(--paper);
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  white-space: nowrap;
}

.st-page--account-table th a {
  color: inherit;
  text-decoration: none;
}

.st-page--account-table tbody tr:hover td {
  background: var(--paper);
}

.st-page--account-table a {
  color: var(--navy);
  font-weight: 700;
}

.st-page--account-table .pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin: 1.2rem 0 0;
  padding: 0;
  list-style: none;
}

.st-page--account-table .page-link {
  display: block;
  padding: 0.4rem 0.8rem;
  border-radius: 0.6rem;
  background: var(--paper);
  color: var(--navy);
  font-weight: 700;
  text-decoration: none;
}

.st-page--account-table .active > .page-link {
  background: var(--navy);
  color: #fff;
}

/* ---- navigation between the pages of the reserved area (DJ Select Menu) ---- */
.st-areanav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.6rem 1rem;
  margin: 0 0 1.6rem;
  padding: 0.9rem 1.2rem;
  border: 1px solid var(--line);
  border-radius: 1.2rem;
  background: #fff;
  box-shadow: 0 10px 30px rgba(0, 36, 59, 0.06);
}

.st-areanav__label {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.st-areanav .djselect_menu {
  display: flex;
  flex: 1 1 16rem;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
}

.st-areanav select {
  appearance: none;
  flex: 1 1 14rem;
  width: 100%;
  max-width: 30rem;
  min-height: 3rem;
  padding: 0.7rem 2.6rem 0.7rem 1rem;
  border: 1px solid rgba(0, 51, 82, 0.14);
  border-radius: 0.85rem;
  background-color: var(--paper);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%23003352' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 0.7rem;
  color: var(--ink);
  font-family: var(--font);
  font-size: 0.95rem;
  font-weight: 700;
  cursor: pointer;
}

.st-areanav select:focus {
  outline: none;
  border-color: var(--navy);
  background-color: #fff;
  box-shadow: 0 0 0 4px rgba(247, 202, 24, 0.45);
}

.st-areanav .djsm-select-hidden {
  display: none;
}

/* ---- RSForm lists: shared layout (replaces the CSS pasted in each directory) ---- */
.st-page--account-table .form-actions,
.st-page--account-table .rsfp-directory-search {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  margin: 0 0 1.2rem;
}

.st-page--account-table .form-actions > button,
.st-page--account-table .form-actions > .btn,
.st-page--account-table .rsfp-directory-search > button {
  margin: 0;
  padding: 0.6rem 1.1rem;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--navy);
  font-size: 0.9rem;
  font-weight: 700;
  text-transform: capitalize;
  cursor: pointer;
}

.st-page--account-table .form-actions > button:hover,
.st-page--account-table .rsfp-directory-search > button:hover {
  border-color: var(--gold);
}

.st-page--account-table .table-responsive,
.st-page--account-table .directoryTableContainer {
  margin-top: 0;
}

.st-page--account-table table {
  max-width: 100%;
  margin-top: 0;
  white-space: nowrap;
}

/* Detail: two-column rows (rsform-table-row) and single rows (rsform-table-item) */
.st-page--account-table .rsform-table {
  max-width: 56rem;
  border: 1px solid var(--line);
  border-radius: 1rem;
  background: #fff;
  overflow: hidden;
}

.st-page--account-table .rsform-table-row {
  display: grid;
  grid-template-columns: minmax(9rem, 14rem) 1fr;
  gap: 0.8rem;
  padding: 0.65rem 1rem;
  border-bottom: 1px solid var(--line);
}

.st-page--account-table .rsform-left-col {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.st-page--account-table .rsform-right-col {
  color: var(--navy);
  font-weight: 600;
  overflow-wrap: anywhere;
}

.st-page--account-table .rsform-field-title {
  margin: 0;
  padding: 0.7rem 1rem;
  background: var(--paper);
  color: var(--navy);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.st-page--account-table .rsform-table-item {
  padding: 0.6rem 1rem;
  border-bottom: 1px solid var(--line);
}

.st-page--account-table .rsform-field-value {
  color: var(--navy);
  font-weight: 600;
  overflow-wrap: anywhere;
}

.st-page--account-table .rsform-small-subtitle {
  float: right;
  margin-left: 0.8rem;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

/* Guest accordion (Ospite 01/02/03) */
.st-page--account-table .accordion .card {
  border: 0;
  background: transparent;
}

.st-page--account-table .ospite-collapse-btn {
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.st-page--account-table .ospite-collapse-btn .rsform-field-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.st-page--account-table .ospite-collapse-btn .rsform-field-title::after {
  content: "+";
  margin-left: auto;
  padding-left: 1rem;
  font-size: 1.2rem;
  line-height: 1;
}

.st-page--account-table .ospite-collapse-btn[aria-expanded="true"] .rsform-field-title::after {
  content: "\2212";
}

.st-page--account-table .collapse:not(.show) {
  display: none;
}

/* Attachment: PDF or image icon depending on the file extension */
.st-page--account-table .file-checker .link-pdf,
.st-page--account-table .file-checker .link-img {
  display: none;
}

.st-page--account-table .file-checker[data-filepath$=".pdf" i] .link-pdf,
.st-page--account-table .file-checker[data-filepath$=".jpg" i] .link-img,
.st-page--account-table .file-checker[data-filepath$=".jpeg" i] .link-img,
.st-page--account-table .file-checker[data-filepath$=".png" i] .link-img {
  display: inline-block;
}

@media (max-width: 653px) {
  .st-page--account-table .rsform-table-row {
    grid-template-columns: 1fr;
    gap: 0.15rem;
  }

  .st-page--account-table .rsform-small-subtitle {
    float: none;
    display: block;
    margin: 0.15rem 0 0;
  }
}

/* ---- search: one row, placeholder instead of the label, live search (no "Go" button) ---- */
.st-page--account-table .rsfp-directory-search {
  max-width: none;
  font-size: 0; /* hides the bare "Cerca" text node until account.js turns it into the placeholder */
}

.st-page--account-table .rsfp-directory-search input[type="text"] {
  flex: 1 1 16rem;
  min-width: 0;
  width: auto;
  margin: 0;
  font-size: 1rem;
}

.st-page--account-table .rsfp-directory-search > button {
  font-size: 0.9rem;
}

.st-page--account-table .rsfp-directory-search > button[data-directory-click="submit"] {
  display: none;
}

.st-page--account-table .rsfp-directory-search .clearfix {
  display: none;
}

/* ---- event hero on the lists ---- */
.st-fhead--list {
  min-height: 11rem;
  justify-content: flex-end;
  margin-bottom: 1.4rem;
  padding-bottom: 3rem;
}

.st-fhead--list .st-fhead__title {
  font-size: clamp(1.7rem, 3.6vw, 2.3rem);
}

@media (max-width: 640px) {
  .st-fhead--list {
    min-height: 9.5rem;
  }
}

.st-page--account-table.is-searching .directoryTableContainer {
  opacity: 0.55;
  transition: opacity 0.15s ease;
}

/* ---- row actions (view / edit / delete): line icons instead of the RSForm icon font ---- */
.st-page--account-table .directoryActions {
  white-space: nowrap;
}

.st-page--account-table .directoryActions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.1rem;
  height: 2.1rem;
  margin: 0 0.15rem;
  border-radius: 0.65rem;
  background: var(--paper);
  color: var(--navy);
  transition: background-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

.st-page--account-table .directoryActions a:hover,
.st-page--account-table .directoryActions a:focus-visible {
  background: var(--navy);
  color: #fff;
  transform: translateY(-1px);
}

.st-page--account-table .directoryActions a:has(.rsficon-remove) {
  color: #b3261e;
}

.st-page--account-table .directoryActions a:has(.rsficon-remove):hover,
.st-page--account-table .directoryActions a:has(.rsficon-remove):focus-visible {
  background: #b3261e;
  color: #fff;
}

.st-page--account-table .directoryActions .rsficon {
  display: block;
  width: 1.15rem;
  height: 1.15rem;
  background: currentColor;
  font-size: 0;
  -webkit-mask: var(--st-act) center / contain no-repeat;
  mask: var(--st-act) center / contain no-repeat;
}

.st-page--account-table .directoryActions .rsficon::before {
  content: none;
}

.st-page--account-table .directoryActions .rsficon-zoom-in {
  --st-act: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12Z'/><circle cx='12' cy='12' r='3'/></svg>");
}

.st-page--account-table .directoryActions .rsficon-edit {
  --st-act: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 20h9'/><path d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4Z'/></svg>");
}

.st-page--account-table .directoryActions .rsficon-remove {
  --st-act: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 6h18'/><path d='M8 6V4h8v2'/><path d='M19 6l-1 14H6L5 6'/><path d='M10 11v5M14 11v5'/></svg>");
}

/* ---- passkey button of Joomla's WebAuthn plugin (shown only over HTTPS: not visible on localhost) ---- */
.st-page--account .com-users-login .btn.plg_system_webauthn_login_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  width: 100%;
  margin: 0.2rem 0 0.6rem;
  padding: 0.8rem 1.2rem;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--navy);
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.2;
  text-transform: none;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}

.st-page--account .com-users-login .btn.plg_system_webauthn_login_button:hover,
.st-page--account .com-users-login .btn.plg_system_webauthn_login_button:focus-visible {
  border-color: var(--gold);
  background: var(--paper);
  color: var(--navy);
}

.st-page--account .com-users-login .btn.plg_system_webauthn_login_button svg {
  flex: none;
  width: 1.35rem;
  height: 1.35rem;
  fill: currentColor;
}

/* ---- pagination: first / previous / next / last arrows (the icon font of Joomla is not loaded here) ---- */
.st-page--account-table .page-link [class^="icon-angle"] {
  display: inline-block;
  font-family: inherit;
  font-size: 1.15rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1;
}

.st-page--account-table .page-link .icon-angle-double-left::before { content: "\00ab"; }
.st-page--account-table .page-link .icon-angle-left::before { content: "\2039"; }
.st-page--account-table .page-link .icon-angle-right::before { content: "\203a"; }
.st-page--account-table .page-link .icon-angle-double-right::before { content: "\00bb"; }

.st-page--account-table .page-item.disabled .page-link {
  opacity: 0.4;
  cursor: default;
}

.st-page--account-table .page-link {
  min-width: 2.2rem;
  text-align: center;
}
