/* ET Monitor widget (self-hosted) */
.etmon-root, .etmon-root *{ box-sizing: border-box; }

/* Hard reset against aggressive host themes (prevents "white boxes" from table/img defaults) */
.etmon-root table{ border-collapse: collapse; border-spacing: 0; margin: 0; background: transparent; }
.etmon-root th, .etmon-root td{ background: transparent; }
.etmon-root img{ display:block; max-width: 100%; height: auto; border: 0 !important; outline: 0 !important; }
.etmon-root button{ -webkit-appearance:none; appearance:none; font: inherit; line-height: inherit; margin:0; }
.etmon-root a{ color: inherit; }

.etmon-root{
  font: var(--et-font-size, 14px)/1.35 var(--et-font-family, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif);
  background: var(--et-bg);
  color: var(--et-text);
  border: 1px solid var(--et-border);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
}
.etmon-header{ padding: 10px 12px; background: var(--et-header); border-bottom: 1px solid var(--et-border); display:flex; align-items:flex-start; justify-content:space-between; gap:10px;}
.etmon-title{ font-weight: 750; letter-spacing:.2px; }
.etmon-sub{ color: var(--et-muted); font-size: 12px; margin-top: 2px; }
.etmon-right{ text-align:right; }
.etmon-meta{ padding: 8px 12px; color: var(--et-muted); border-bottom: 1px solid var(--et-border); display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap;}
.etmon-map{ background: var(--et-panel); border-bottom: 1px solid var(--et-border); display:flex; align-items:center; justify-content:center; position:relative; }
.etmon-mapimg{ width: 100%; height: 100%; object-fit: cover; display:block; filter: saturate(1.05) contrast(1.05); }
.etmon-mapoverlay{ position:absolute; inset:0; background: linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,0)); pointer-events:none; }
.etmon-mapname{ position:absolute; left:10px; bottom:8px; font-weight:700; text-shadow: 0 2px 10px rgba(0,0,0,.6);}
.etmon-players{ background: var(--et-panel); overflow:auto; border-bottom: 1px solid var(--et-border); transition: height .2s ease; }
.etmon-actions{ padding: 10px 12px; background: var(--et-header); display:flex; gap:8px; align-items:center; justify-content:space-between;}
.etmon-btn{ background: var(--et-btn); color: var(--et-btnText); border: 1px solid var(--et-border); padding: 8px 10px; border-radius: 10px; cursor:pointer; }
.etmon-btn:hover{ filter: brightness(1.08); }
.etmon-table{ width:100%; border-collapse: collapse; }
.etmon-table th, .etmon-table td{ padding: 6px 8px; border-bottom: 1px solid var(--et-border); text-align:left; white-space:nowrap; }
.etmon-table thead th{ position:sticky; top:0; background: var(--et-header); z-index:1; }
.etmon-table tr.odd{ background: var(--et-zodd); }
.etmon-table tr.even{ background: var(--et-zeven); }
.etmon-muted{ color: var(--et-muted); padding: 10px 12px; }
.etmon-flag{ width:18px; height:12px; border-radius:3px; overflow:auto; display:inline-block; vertical-align:middle; margin-left:6px; border:1px solid var(--et-border); }
.etmon-flag img{ width:100%; height:100%; object-fit:cover; display:block; }

.etmon-players.is-hidden{ height:0 !important; border-bottom:none; }

.etmon-cc{ white-space: pre; }
.etmon-pname{ font-weight: 600; }

.etmon-root.is-glass{
  background: rgba(11,15,20,.55);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-color: rgba(255,255,255,.12);
}
.etmon-root.is-glass .etmon-header,
.etmon-root.is-glass .etmon-actions{
  background: rgba(11,18,32,.45);
}
.etmon-root.is-glass .etmon-meta{
  background: rgba(15,23,42,.25);
}

.etmon-toggle{
  padding: 4px 8px;
  min-width: 30px;
  line-height: 1;
  font-weight: 700;
}

.etmon-footlink{ margin-left:auto; }
.etmon-actions{ display:flex; gap:8px; align-items:center; }

.etmon-actions{display:flex; gap:8px; align-items:center;}
.etmon-footlink{margin-left:auto;}
.etmon-brandmode{padding:4px 8px; min-width:44px; font-weight:800; letter-spacing:.5px;}

.etmon-created-wrap{padding: 6px 12px 10px; background: var(--et-header); border-top: 1px solid var(--et-border); text-align:center;}
.etmon-created{font-size:11px; opacity:.85;}

.etmon-footlink a:hover{ text-decoration:underline; }

.etmon-ipconnect{ margin-top:4px; font-size:12px; }
.etmon-iplink{ color:#e5e7eb; text-decoration:none; margin-right:8px; }
.etmon-iplink:hover{ text-decoration:underline; }
.etmon-steamlink{
  color:#66c0f4;
  text-decoration:none;
  font-weight:700;
}
.etmon-steamlink:hover{ text-decoration:underline; }

.etmon-ipconnect a{ position:relative; display:inline-flex; align-items:center; gap:6px; }
.etmon-ico{ width:14px; height:14px; display:inline-block; border-radius:4px; opacity:.95; }
.etmon-ico-et{
  background: linear-gradient(135deg, rgba(34,197,94,.9), rgba(34,197,94,.35));
  box-shadow: 0 0 0 1px rgba(34,197,94,.35) inset;
}
.etmon-ico-et::after{
  content:"ET";
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:9px;
  font-weight:900;
  color:#06210f;
  width:100%;
  height:100%;
}
.etmon-ico-steam{
  background: linear-gradient(135deg, rgba(102,192,244,.9), rgba(102,192,244,.35));
  box-shadow: 0 0 0 1px rgba(102,192,244,.35) inset;
}
.etmon-ico-steam::after{
  content:"S";
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:10px;
  font-weight:900;
  color:#04121b;
  width:100%;
  height:100%;
}

/* Tooltip */
.etmon-ipconnect a[data-tip]::before{
  content: attr(data-tip);
  position:absolute;
  bottom: 110%;
  left: 0;
  transform: translateY(4px);
  background: rgba(2,6,23,.92);
  color: #e5e7eb;
  border: 1px solid rgba(148,163,184,.25);
  padding: 6px 8px;
  border-radius: 10px;
  font-size: 11px;
  white-space: nowrap;
  opacity: 0;
  pointer-events:none;
  transition: opacity .15s ease, transform .15s ease;
  box-shadow: 0 10px 24px rgba(0,0,0,.25);
  z-index: 20;
}
.etmon-ipconnect a[data-tip]::after{
  content:"";
  position:absolute;
  bottom: 102%;
  left: 12px;
  border: 6px solid transparent;
  border-top-color: rgba(2,6,23,.92);
  opacity: 0;
  pointer-events:none;
  transition: opacity .15s ease;
  z-index: 20;
}
.etmon-ipconnect a[data-tip]:hover::before{
  opacity: 1;
  transform: translateY(0);
}
.etmon-ipconnect a[data-tip]:hover::after{
  opacity: 1;
}





/* Big PLAY NOW banner */
.etmon-playbanner-wrap{ margin-top:6px; }
.etmon-playbanner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid var(--et-border);
  background: linear-gradient(90deg, rgba(255,42,0,.18), rgba(255,255,0,.12), rgba(13,0,255,.12));
  box-shadow: 0 10px 22px rgba(0,0,0,.25);
}
.etmon-playbanner-text{
  font-weight: 950;
  letter-spacing: 1.4px;
  font-size: 18px;
  line-height: 1;
  text-transform: uppercase;
  text-shadow: 0 2px 12px rgba(0,0,0,.55);
}
.etmon-playbanner-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  min-width:84px;
  border-radius:12px;
  font-weight: 950;
  letter-spacing: 1px;
  text-decoration:none;
  border:2px solid #8b0000;
  background: linear-gradient(45deg,#2b0000,#5c0000,#1a0000);
  color:#fff;
  box-shadow:
    0 0 12px rgba(139,0,0,0.7),
    inset 0 0 8px rgba(0,0,0,0.8);
  transition: transform .15s ease, filter .15s ease, box-shadow .15s ease, background .15s ease;
}
.etmon-playbanner-btn:hover{
  transform: scale(1.06);
  filter: brightness(1.08);
  background: linear-gradient(45deg,#5c0000,#8b0000,#2b0000);
  box-shadow:
    0 0 22px rgba(139,0,0,1),
    inset 0 0 10px rgba(0,0,0,1);
}
.etmon-playbanner.is-offline{ opacity:.75; }

/* Bottom-right Join Server link */
.etmon-joinlink{ font-weight: 850; letter-spacing:.4px; text-decoration:none; }
.etmon-joinlink:hover{ text-decoration: underline; }

/* Bottom-right IP address (requested) */
.etmon-ipaddr{
  font-weight: 900;
  letter-spacing: .6px;
  text-decoration: none;
  font-size: 1.05em;
}
.etmon-ipaddr:hover{ text-decoration: underline; }
