html.rwz-modal-open{overflow:hidden}

.rwz-backdrop{
  position:fixed;
  inset:0;
  z-index:1180;
  display:none;
  align-items:flex-start;
  justify-content:center;
  padding:26px 14px;
  overflow:auto;
  background:rgba(0,0,0,.82);
  backdrop-filter:blur(4px);
}
.rwz-backdrop.is-open{display:flex}

.rwz-modal{
  position:relative;
  width:min(1180px,100%);
  margin:auto;
  border:1px solid #5b472f;
  border-radius:12px;
  background:linear-gradient(180deg,#141619,#090b0d);
  box-shadow:0 28px 85px rgba(0,0,0,.76),inset 0 1px 0 rgba(255,255,255,.035);
  color:#d9d0c2;
}

.rwz-close{
  position:absolute;
  top:11px;
  right:12px;
  z-index:5;
  width:38px;
  height:38px;
  border:1px solid #59462d;
  border-radius:8px;
  background:#0d0f11;
  color:#d8bc83;
  font-size:26px;
  line-height:1;
  cursor:pointer;
}
.rwz-close:hover,.rwz-close:focus-visible{border-color:#a2763f;color:#fff0d1;outline:none}

.rwz-frame{padding:24px}
.rwz-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding:0 48px 18px 0;
  border-bottom:1px solid #3b3126;
}
.rwz-kicker{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:7px;
  color:#7cd2c6;
  font-size:10px;
  font-weight:850;
  letter-spacing:.14em;
}
.rwz-kicker span{width:7px;height:7px;border-radius:50%;background:#7cd2c6;box-shadow:0 0 8px rgba(124,210,198,.65)}
.rwz-header h2{
  margin:0;
  font-family:"Cinzel Decorative","Cinzel",Georgia,serif;
  color:#ddb978;
  font-size:clamp(25px,3vw,36px);
  letter-spacing:.035em;
  text-shadow:0 2px 0 #21160b;
}
.rwz-header p{margin:8px 0 0;color:#989083;font-size:13px;line-height:1.5}
.rwz-reset{
  flex:0 0 auto;
  min-height:36px;
  margin-top:12px;
  padding:0 12px;
  border:1px solid #55442e;
  border-radius:7px;
  background:linear-gradient(180deg,#17191c,#0e1012);
  color:#cab995;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
}
.rwz-reset:hover,.rwz-reset:focus-visible{border-color:#9d723d;color:#f0d4a0;outline:none}

.rwz-filter-panel{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(240px,.55fr);
  gap:14px;
  margin-top:16px;
}
.rwz-filter-block{
  min-width:0;
  padding:14px;
  border:1px solid #40372d;
  border-radius:9px;
  background:linear-gradient(180deg,#151411,#0d0f11);
}
.rwz-filter-block h3,.rwz-subtype-label{
  margin:0 0 9px;
  color:#c8ae7c;
  font-family:"Cinzel",Georgia,serif;
  font-size:11px;
  font-weight:850;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.rwz-type-buttons,.rwz-subtype-buttons,.rwz-socket-buttons{display:flex;flex-wrap:wrap;gap:7px}
.rwz-filter-button,.rwz-subtype-button,.rwz-socket-button{
  min-height:34px;
  padding:0 10px;
  border:1px solid #4a4033;
  border-radius:6px;
  background:#0b0d0f;
  color:#b8ad9a;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
}
.rwz-filter-button:hover,.rwz-subtype-button:hover,.rwz-socket-button:hover,
.rwz-filter-button:focus-visible,.rwz-subtype-button:focus-visible,.rwz-socket-button:focus-visible{
  border-color:#8f6939;
  color:#e7c995;
  outline:none;
}
.rwz-filter-button.is-active,.rwz-subtype-button.is-active,.rwz-socket-button.is-active{
  border-color:#b48748;
  background:linear-gradient(180deg,#241c12,#17120d);
  color:#f1d39a;
  box-shadow:inset 0 0 0 1px rgba(220,175,99,.08),0 0 12px rgba(151,100,34,.08);
}
.rwz-socket-button{
  width:48px;
  min-height:42px;
  padding:0;
  font-family:"Cinzel",Georgia,serif;
  font-size:17px;
  color:#d8c6a7;
}
.rwz-socket-button:disabled{opacity:.28;cursor:not-allowed;border-color:#38332c;color:#756e64}
.rwz-subtype-wrap{margin-top:12px;padding-top:11px;border-top:1px solid #342d25}
.rwz-subtype-label{margin-bottom:8px;color:#8d8374;font-size:9px}

.rwz-status{
  min-height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:10px 0 2px;
  color:#80b8af;
  font-size:11px;
  font-weight:750;
  letter-spacing:.025em;
  text-align:center;
}

.rwz-results{min-height:170px}
.rwz-empty{
  display:flex;
  min-height:170px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:6px;
  padding:24px;
  border:1px dashed #3b342c;
  border-radius:9px;
  background:#0b0d0f;
  color:#7f786e;
  text-align:center;
}
.rwz-empty strong{color:#cdb78e;font-family:"Cinzel",Georgia,serif;font-size:15px}
.rwz-empty span{font-size:11px}

.rwz-card-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.rwz-card{
  min-width:0;
  padding:15px;
  border:1px solid #3d352c;
  border-radius:9px;
  background:linear-gradient(180deg,#111315,#0a0c0e);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
}
.rwz-card:hover{border-color:#665037}
.rwz-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.rwz-name-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.rwz-name-row h3{
  margin:0;
  color:#e1c17f;
  font-family:"Cinzel",Georgia,serif;
  font-size:18px;
  line-height:1.25;
}
.rwz-version{
  display:inline-flex;
  align-items:center;
  min-height:20px;
  padding:0 6px;
  border:1px solid #3c726b;
  border-radius:999px;
  background:rgba(70,133,124,.12);
  color:#8ed9ce;
  font-size:8px;
  font-weight:900;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.rwz-runes{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:7px}
.rwz-runes span{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:0 7px;
  border:1px solid #57442c;
  border-radius:5px;
  background:#15110d;
  color:#e3c98f;
  font-size:10px;
  font-weight:850;
}
.rwz-runes b{color:#6e6558;font-size:9px}
.rwz-level{
  flex:0 0 auto;
  min-width:66px;
  padding:7px 8px;
  border:1px solid #3c3630;
  border-radius:7px;
  background:#0a0c0e;
  text-align:center;
}
.rwz-level span{display:block;color:#7d756a;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.rwz-level strong{display:block;margin-top:2px;color:#7fd4c7;font-family:"Cinzel",Georgia,serif;font-size:20px}
.rwz-card-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px 12px;
  margin-top:11px;
  padding:8px 0;
  border-top:1px solid #2e2923;
  border-bottom:1px solid #2e2923;
  color:#92897c;
  font-size:9px;
  line-height:1.35;
}
.rwz-card-meta strong{color:#c7af80}
.rwz-stat-list{
  margin:11px 0 0;
  padding-left:18px;
  color:#cfc5b6;
  font-size:10.5px;
  line-height:1.48;
}
.rwz-stat-list li{margin:2px 0}
.rwz-stat-list li::marker{color:#705a3b}
.rwz-no-stats{margin-top:11px;color:#81796f;font-size:10px;font-style:italic}
.rwz-wiki-link{
  display:inline-block;
  margin-top:11px;
  color:#bda06e;
  font-size:9px;
  font-weight:800;
  text-decoration:none;
}
.rwz-wiki-link:hover,.rwz-wiki-link:focus-visible{color:#ead09d;outline:none}

.rwz-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid #332c24;
  color:#736c63;
  font-size:9px;
  line-height:1.5;
}
.rwz-footer a{color:#c4a875;text-decoration:none;font-weight:750}
.rwz-footer a:hover,.rwz-footer a:focus-visible{color:#ead1a0;outline:none}

@media(max-width:900px){
  .rwz-filter-panel{grid-template-columns:1fr}
  .rwz-card-grid{grid-template-columns:1fr}
  .rwz-header{flex-direction:column}
  .rwz-reset{margin-top:0}
}

@media(max-width:620px){
  .rwz-backdrop{padding:10px 6px}
  .rwz-frame{padding:18px 9px 12px}
  .rwz-header{padding-right:38px}
  .rwz-header p{font-size:11px}
  .rwz-card{padding:12px}
  .rwz-card-head{gap:8px}
  .rwz-name-row h3{font-size:16px}
  .rwz-footer{flex-direction:column;align-items:flex-start}
}
