:root{
  --espada-bg:#07090d;
  --espada-magenta:#FF00FF;
  --espada-yellow:#FFFF00;
  --espada-line:rgba(255,255,255,.065);
  --espada-line-soft:rgba(255,255,255,.045);
  --espada-card:linear-gradient(180deg,rgba(18,22,30,.95),rgba(10,13,18,.97));
}

html{
  background:var(--espada-bg)!important;
}

body{
  position:relative!important;
  isolation:isolate;
  overflow-x:hidden;
  background:var(--espada-bg)!important;
}

body::before,
body::after{
  content:"";
  position:fixed;
  width:min(82vw,1180px);
  aspect-ratio:1;
  border-radius:50%;
  pointer-events:none;
  z-index:-1;
  filter:blur(165px);
  transform:translateZ(0);
}

body::before{
  top:-48vw;
  left:-30vw;
  background:rgba(255,0,255,.24);
}

body::after{
  right:-30vw;
  bottom:-48vw;
  background:rgba(255,255,0,.17);
}

html::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:9999;
  opacity:.018;
  mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.85'/%3E%3C/svg%3E");
}

.guild-name,
.title,
.home-logo{
  font-family:Arial,sans-serif!important;
  font-weight:500!important;
  text-shadow:
    0 0 10px rgba(255,0,255,.34),
    0 0 24px rgba(255,0,255,.09)!important;
}

.guild-line{
  height:1px!important;
  box-shadow:
    0 0 8px rgba(255,0,255,.12),
    0 0 8px rgba(255,255,0,.045)!important;
}

.card,
.panel,
.login-card,
.table-card{
  background:var(--espada-card)!important;
  border:1px solid rgba(255,0,255,.18)!important;
  box-shadow:
    0 22px 64px rgba(0,0,0,.30),
    0 0 28px rgba(255,0,255,.035)!important;
}

.card::before,
.panel::before,
.login-card::before,
.table-card::before{
  height:1px!important;
  opacity:.34!important;
}

.item,
.loot,
.history-row,
.edit-loot-row,
.poll-card,
.result-item,
.request-row,
.class-summary-item,
.option,
.change-vote-option{
  border-width:1px!important;
  border-color:rgba(255,255,255,.075)!important;
  box-shadow:0 6px 18px rgba(0,0,0,.10)!important;
}

.profession-icon-wrap{
  border-width:1px!important;
  border-color:rgba(255,0,255,.18)!important;
  box-shadow:inset 0 0 14px rgba(255,0,255,.025)!important;
}

input:not([type="radio"]):not([type="checkbox"]),
select,
textarea{
  border-width:1px!important;
  border-color:rgba(255,255,255,.09)!important;
}

input:not([type="radio"]):not([type="checkbox"]):focus,
select:focus,
textarea:focus{
  border-color:rgba(255,255,0,.38)!important;
  box-shadow:0 0 0 2px rgba(255,255,0,.025)!important;
}

button,
.button,
.admin-link,
.members-link,
.poll-link,
.poll-results-link,
.party-survey-link,
.trade-link,
.loot-link,
.issued-loot-link,
.register-item,
.add-loot-link,
.toolbar-button,
.change-vote,
.edit-poll,
.delete-results,
.role-toggle,
.demote,
.logout-button,
.submit,
.login-button,
.register-button,
.ok,
.save-button,
.edit-save,
.issue-button,
.want-button,
.button-register,
.button-login,
.no,
.delete-entry,
.delete-lot,
.delete-button,
.admin-delete-response{
  border-width:1px!important;
  font-weight:600!important;
  box-shadow:none!important;
}

.members-link,
.poll-results-link,
.loot-link,
.button-login,
.change-vote,
.edit-poll,
.role-toggle,
.category-button,
.demote{
  border-color:rgba(255,0,255,.28)!important;
  background:rgba(255,0,255,.025)!important;
}

.members-link:hover,
.poll-results-link:hover,
.loot-link:hover,
.button-login:hover,
.change-vote:hover,
.edit-poll:hover,
.role-toggle:hover,
.category-button:hover,
.demote:hover{
  border-color:rgba(255,0,255,.46)!important;
  box-shadow:0 6px 16px rgba(255,0,255,.04)!important;
}

.admin-link,
.poll-link,
.submit,
.login-button,
.register-button,
.register-item,
.add-loot-link,
.ok,
.save-button,
.edit-save,
.issue-button,
.want-button,
.button-register{
  border-color:rgba(255,255,0,.30)!important;
  box-shadow:none!important;
}

.admin-link:hover,
.poll-link:hover,
.submit:hover:not(:disabled),
.login-button:hover:not(:disabled),
.register-button:hover:not(:disabled),
.register-item:hover,
.add-loot-link:hover,
.ok:hover:not(:disabled),
.save-button:hover:not(:disabled),
.edit-save:hover:not(:disabled),
.issue-button:hover:not(:disabled),
.want-button:hover:not(:disabled),
.button-register:hover{
  border-color:rgba(255,255,0,.48)!important;
  box-shadow:0 6px 16px rgba(255,255,0,.035)!important;
}

.trade-link,
.issued-loot-link{
  border-color:rgba(255,255,0,.24)!important;
  background:rgba(255,255,0,.018)!important;
}

.trade-link:hover,
.issued-loot-link:hover{
  border-color:rgba(255,255,0,.40)!important;
  box-shadow:0 6px 16px rgba(255,255,0,.03)!important;
}

.no,
.delete-results,
.delete-entry,
.delete-lot,
.delete-button,
.admin-delete-response{
  border-color:rgba(255,79,163,.28)!important;
  background:rgba(255,79,163,.025)!important;
}

.no:hover,
.delete-results:hover,
.delete-entry:hover,
.delete-lot:hover,
.delete-button:hover,
.admin-delete-response:hover{
  border-color:rgba(255,79,163,.46)!important;
  box-shadow:0 6px 16px rgba(255,79,163,.035)!important;
}

.role,
.badge,
.admin-badge,
.active-badge{
  font-weight:500!important;
}

.nick,
.nickname,
.entry-name,
.poll-question,
.question{
  font-weight:650!important;
}

.field label,
.filter-label,
.requests-title,
.history-title,
.voters-title,
.change-vote-title{
  font-weight:500!important;
}

th{
  font-weight:600!important;
}

.back{
  border-width:1px!important;
  border-color:rgba(255,255,255,.045)!important;
  box-shadow:none!important;
}

@media(max-width:760px){
  body::before,
  body::after{
    width:110vw;
    filter:blur(125px);
  }

  body::before{
    top:-58vw;
    left:-52vw;
  }

  body::after{
    right:-52vw;
    bottom:-58vw;
  }
}


/* Final control treatment: outlined actions instead of solid fills */
.submit,
.poll-link,
.ok,
.issue-button,
.save-button {
  border: 1px solid rgba(255,255,0,.30) !important;
  background: rgba(255,255,0,.028) !important;
  color: #eaea9a !important;
  box-shadow: none !important;
}

.submit:hover:not(:disabled),
.poll-link:hover,
.ok:hover:not(:disabled),
.issue-button:hover:not(:disabled),
.save-button:hover:not(:disabled) {
  border-color: rgba(255,255,0,.50) !important;
  background: rgba(255,255,0,.055) !important;
  color: #ffffb8 !important;
  box-shadow: 0 6px 16px rgba(255,255,0,.035) !important;
}

#partySurveyLink {
  margin-bottom: 14px !important;
}


/* Loot page actions */
.add-loot-link{
  min-height:40px!important;
  padding:8px 13px!important;
  border:1px solid rgba(255,0,255,.22)!important;
  border-radius:10px!important;
  background:rgba(255,0,255,.022)!important;
  color:#d8b5d8!important;
  font-size:13px!important;
  font-weight:600!important;
  letter-spacing:.01em;
  box-shadow:none!important;
  transition:
    border-color .16s ease,
    background-color .16s ease,
    color .16s ease,
    transform .16s ease!important;
}

.add-loot-link.active{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
}

.add-loot-link::before{
  content:"+";
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  flex:0 0 18px;
  border:1px solid rgba(255,0,255,.28);
  border-radius:6px;
  color:#efb8ef;
  font-size:14px;
  font-weight:600;
  line-height:1;
}

.add-loot-link:hover{
  border-color:rgba(255,0,255,.42)!important;
  background:rgba(255,0,255,.045)!important;
  color:#f0d2f0!important;
  box-shadow:0 6px 16px rgba(255,0,255,.03)!important;
}

.add-loot-link:hover::before{
  border-color:rgba(255,0,255,.46);
  color:#ffd7ff;
}

.add-loot-link:active{
  transform:translateY(1px);
}

.want-button{
  min-height:34px!important;
  padding:6px 10px!important;
  border:1px solid rgba(255,255,0,.22)!important;
  border-radius:9px!important;
  background:rgba(255,255,0,.018)!important;
  color:#dddd9f!important;
  font-size:12px!important;
  font-weight:600!important;
  letter-spacing:.01em;
  box-shadow:none!important;
  transition:
    border-color .16s ease,
    background-color .16s ease,
    color .16s ease,
    transform .16s ease!important;
}

.want-button:hover:not(:disabled){
  border-color:rgba(255,255,0,.42)!important;
  background:rgba(255,255,0,.045)!important;
  color:#ffffbd!important;
  box-shadow:0 6px 14px rgba(255,255,0,.025)!important;
}

.want-button:active:not(:disabled){
  transform:translateY(1px);
}

.add-loot-link:focus-visible,
.want-button:focus-visible{
  outline:2px solid rgba(255,255,255,.18);
  outline-offset:2px;
}

.want-button:disabled,
.add-loot-link[aria-disabled="true"]{
  opacity:.5!important;
}

/* Trade page primary utility */
.register-item{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:40px!important;
  padding:8px 13px!important;
  border:1px solid rgba(255,0,255,.22)!important;
  border-radius:10px!important;
  background:rgba(255,0,255,.022)!important;
  color:#d8b5d8!important;
  font-size:13px!important;
  font-weight:600!important;
  letter-spacing:.01em;
  box-shadow:none!important;
  transition:
    border-color .16s ease,
    background-color .16s ease,
    color .16s ease,
    transform .16s ease!important;
}

.register-item::before{
  content:"+";
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  flex:0 0 18px;
  border:1px solid rgba(255,0,255,.28);
  border-radius:6px;
  color:#efb8ef;
  font-size:14px;
  font-weight:600;
  line-height:1;
}

.register-item:hover{
  border-color:rgba(255,0,255,.42)!important;
  background:rgba(255,0,255,.045)!important;
  color:#f0d2f0!important;
  box-shadow:0 6px 16px rgba(255,0,255,.03)!important;
}

.register-item:hover::before{
  border-color:rgba(255,0,255,.46);
  color:#ffd7ff;
}

.register-item:active{
  transform:translateY(1px);
}

.register-item:focus-visible{
  outline:2px solid rgba(255,255,255,.18);
  outline-offset:2px;
}

