/* Strong dark theme overrides for WEBRIZ */
:root{
  --bg: #0b0f13;
  --panel: rgba(255,255,255,0.04);
  --muted: rgba(255,255,255,0.62);
  --text: #e6eef8;
  --accent-start: #7c3aed;
  --accent-end: #06b6d4;
  --glass: rgba(255,255,255,0.03);
  --card-border: rgba(255,255,255,0.06);
}

html,body {
  background:
    radial-gradient(1200px 600px at 10% 10%, rgba(124,58,237,0.06), transparent),
    radial-gradient(900px 400px at 90% 90%, rgba(6,182,212,0.04), transparent),
    var(--bg) !important;
  color: var(--text) !important;
}

/* Layout containers */
.container, .header, .grid, .right-column { background: transparent !important; }

/* Cards / panels */
.card, .ip-card, .password-card, .whois-card {
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01)) !important;
  border: 1px solid var(--card-border) !important;
  box-shadow: 0 6px 30px rgba(2,6,23,0.6) !important;
  color: var(--text) !important;
}

/* Logo */
.logo-circle {
  background: linear-gradient(135deg, var(--accent-start), var(--accent-end)) !important;
  color: #071024 !important;
  box-shadow: 0 6px 20px rgba(6,182,212,0.08) !important;
}

/* Links / nav */
a, .nav-button {
  color: var(--muted) !important;
  background: transparent !important;
  border-color: transparent !important;
}
a:hover, .nav-button:hover {
  color: #fff !important;
  background: var(--glass) !important;
  transform: translateY(-2px) !important;
}

/* Buttons */
.submit-button, .btn, .view-button {
  background-image: linear-gradient(90deg, var(--accent-start), var(--accent-end)) !important;
  color: #041025 !important;
  border: none !important;
  box-shadow: 0 8px 30px rgba(7,9,21,0.6) !important;
}

/* Inputs */
input, textarea, select, .form-input {
  background: transparent !important;
  border: 1px solid rgba(255,255,255,0.06) !important;
  color: var(--text) !important;
  caret-color: var(--text) !important;
}
.form-input::placeholder, input::placeholder, textarea::placeholder {
  color: rgba(230,238,248,0.5) !important;
}

/* Password items */
.password-item, .result-section, .results {
  background: rgba(255,255,255,0.02) !important;
  color: var(--text) !important;
}

/* Copy buttons */
.copy-btn, .copy-button {
  background: transparent !important;
  border: 1px solid rgba(255,255,255,0.06) !important;
  color: var(--muted) !important;
}
.copy-btn:hover, .copy-button:hover {
  color: #fff !important;
  background: var(--glass) !important;
}

/* Footer */
footer { color: var(--muted) !important; }

/* High specificity fallbacks for repeated selectors in style.css */
body[class], html[class] { background: var(--bg) !important; }

/* Accessibility */
.nav-button:focus-visible, .submit-button:focus-visible, .btn:focus-visible {
  outline: 3px solid rgba(124,58,237,0.22) !important;
  outline-offset: 3px !important;
}

/* Small screens */
@media (max-width: 900px){
  .grid { grid-template-columns: 1fr !important; }
}

/* Force reduced motion respect */
@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}