/* Form Elements */
.form-grid {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 1.5rem;
 margin-bottom: 2rem;
}
@media (max-width: 768px) {
 .form-grid {
  grid-template-columns: 1fr;
 }
}
.doh-server-info {
 margin-top: 0.5rem;
 font-size: 0.8rem;
 color: var(--text-secondary);
 display: flex;
 align-items: center;
 gap: 0.5rem;
}
.doh-provider {
 display: inline-flex;
 align-items: center;
 gap: 0.3rem;
 padding: 0.2rem 0.5rem;
 background: rgba(99, 102, 241, 0.1);
 border-radius: 4px;
 font-size: 0.7rem;
 font-weight: 600;
}
/* Results */
.dns-result {
 margin-top: 2rem;
 animation: fadeIn 0.5s ease;
}
.result-header {
 text-align: center;
 margin-bottom: 2rem;
 padding: 1.5rem;
 background: linear-gradient(135deg, rgba(99, 102, 241, 0.1), rgba(139, 92, 246, 0.1));
 border: 1px solid var(--border-accent);
 border-radius: 16px;
}
.result-header h2 {
 font-size: 1.8rem;
 margin-bottom: 0.5rem;
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-tertiary));
 -webkit-background-clip: text;
 -webkit-text-fill-color: transparent;
 background-clip: text;
}
.domain-name {
 font-family: "Monaco", "Menlo", "Ubuntu Mono", monospace;
 font-size: 1.3rem;
 color: var(--text-primary);
 font-weight: 700;
}
.record-type {
 display: inline-block;
 padding: 0.5rem 1rem;
 border-radius: 20px;
 font-weight: 600;
 font-size: 0.9rem;
 text-transform: uppercase;
 letter-spacing: 0.5px;
 margin-top: 0.5rem;
}
.type-a {
 background: var(--record-a);
 color: #000;
}
.type-aaaa {
 background: var(--record-aaaa);
 color: #000;
}
.type-cname {
 background: var(--record-cname);
 color: #000;
}
.type-mx {
 background: var(--record-mx);
 color: #000;
}
.type-txt {
 background: var(--record-txt);
 color: #fff;
}
.type-ns {
 background: var(--record-ns);
 color: #000;
}
.type-soa {
 background: var(--record-soa);
 color: #000;
}
.server-info {
 margin-top: 1rem;
 padding: 0.8rem;
 background: rgba(255, 255, 255, 0.05);
 border-radius: 8px;
 font-size: 0.9rem;
}
.server-info strong {
 color: var(--accent-primary);
}
.records-grid {
 display: grid;
 gap: 1rem;
 margin-bottom: 2rem;
}
.record-card {
 background: rgba(255, 255, 255, 0.05);
 border: 1px solid var(--border-light);
 border-radius: 12px;
 padding: 1.5rem;
 transition: all 0.3s ease;
 position: relative;
 overflow: hidden;
}
.record-card::before {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 width: 4px;
 height: 100%;
 transition: all 0.3s ease;
}
.record-card.a-record::before {
 background: var(--record-a);
}
.record-card.aaaa-record::before {
 background: var(--record-aaaa);
}
.record-card.cname-record::before {
 background: var(--record-cname);
}
.record-card.mx-record::before {
 background: var(--record-mx);
}
.record-card.txt-record::before {
 background: var(--record-txt);
}
.record-card.ns-record::before {
 background: var(--record-ns);
}
.record-card.soa-record::before {
 background: var(--record-soa);
}
.record-card:hover {
 background: rgba(255, 255, 255, 0.08);
 border-color: var(--border-accent);
 transform: translateY(-2px);
}
.record-card:hover::before {
 width: 8px;
}
.record-content {
 display: flex;
 flex-direction: column;
 gap: 0.8rem;
}
.record-value {
 font-family: "Monaco", "Menlo", "Ubuntu Mono", monospace;
 font-size: 1rem;
 color: var(--text-primary);
 word-break: break-all;
 line-height: 1.4;
}
.mx-record-content {
 display: grid;
 grid-template-columns: auto 1fr;
 gap: 1rem;
 align-items: center;
}
.mx-priority {
 background: var(--record-mx);
 color: #000;
 padding: 0.4rem 0.8rem;
 border-radius: 20px;
 font-weight: 700;
 font-size: 0.8rem;
 text-align: center;
 min-width: 60px;
}
.mx-exchange {
 font-family: "Monaco", "Menlo", "Ubuntu Mono", monospace;
 font-size: 1rem;
 color: var(--text-primary);
}
.record-meta {
 display: flex;
 gap: 1rem;
 font-size: 0.8rem;
 color: var(--text-secondary);
 margin-top: 0.5rem;
}
.meta-item {
 display: flex;
 align-items: center;
 gap: 0.3rem;
}
.no-records {
 text-align: center;
 padding: 3rem 2rem;
 background: rgba(255, 255, 255, 0.05);
 border: 1px solid var(--border-light);
 border-radius: 12px;
 color: var(--text-secondary);
}
.no-records .icon {
 font-size: 3rem;
 margin-bottom: 1rem;
 opacity: 0.5;
}
/* Responsive Design */
@media (max-width: 768px) {
 .mx-record-content {
  grid-template-columns: 1fr;
  gap: 0.5rem;
 }
 .mx-priority {
  justify-self: start;
 }
 .record-meta {
  flex-direction: column;
  gap: 0.5rem;
 }
}
