/* DocVerify — Public Verification Page */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400&display=swap');

#docverify-app {
  --dv-primary: #1a3c5e;
  --dv-accent:  #c8972a;
  font-family: 'Sora', sans-serif;
  max-width: 680px;
  margin: 2rem auto;
  padding: 0 1rem;
}

/* Hero */
.dv-hero {
  text-align: center;
  padding: 3rem 1.5rem;
  background: linear-gradient(135deg, var(--dv-primary) 0%, #0f2237 100%);
  border-radius: 10px;
  margin-bottom: 1.5rem;
  color: #fff;
}
.dv-shield { color: var(--dv-accent); margin-bottom: .8rem; }
.dv-shield svg { width: 52px; height: 52px; display: block; margin: 0 auto; }
.dv-hero h1 {
  font-size: 1.6rem;
  font-weight: 700;
  color: #fff;
  margin: 0 0 .5rem;
}
.dv-hero p { color: rgba(255,255,255,.65); font-size: .9rem; margin: 0; }

/* Search */
.dv-search-wrap { margin-bottom: 1.5rem; }
.dv-search-box {
  display: flex;
  gap: .6rem;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: .5rem;
  box-shadow: 0 2px 12px rgba(0,0,0,.06);
}
.dv-search-box input {
  flex: 1;
  border: none;
  outline: none;
  font-family: 'Sora', sans-serif;
  font-size: .95rem;
  padding: .4rem .6rem;
  color: #1a1a2e;
  background: transparent;
  font-family: 'JetBrains Mono', monospace;
  letter-spacing: .04em;
}
.dv-search-box button {
  background: var(--dv-primary);
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: .55rem 1.2rem;
  font-family: 'Sora', sans-serif;
  font-size: .85rem;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: .4rem;
  transition: background .15s;
  white-space: nowrap;
}
.dv-search-box button:hover { background: #143050; }
.dv-search-box button:disabled { opacity: .6; cursor: not-allowed; }

/* Result card */
.dv-card {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 16px rgba(0,0,0,.08);
}
.dv-verified { border-top: 4px solid #2d6a4f; }
.dv-revoked  { border-top: 4px solid #c0392b; }
.dv-not-found { border-top: 4px solid #888; }

.dv-status-block { text-align: center; padding: 2rem 1.5rem 1.5rem; }
.dv-status-icon {
  font-size: 2.2rem;
  margin-bottom: .6rem;
  width: 60px; height: 60px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto .8rem;
  font-size: 1.6rem;
  font-weight: 700;
}
.dv-verified .dv-status-icon { background: #e8f5ee; color: #2d6a4f; }
.dv-revoked  .dv-status-icon { background: #fae8e8; color: #c0392b; }
.dv-not-found .dv-status-icon { background: #f0f0f0; color: #888; font-size: 1.4rem; }

.dv-status-title { font-size: 1.2rem; font-weight: 700; margin-bottom: .4rem; }
.dv-verified  .dv-status-title { color: #2d6a4f; }
.dv-revoked   .dv-status-title { color: #c0392b; }
.dv-not-found .dv-status-title { color: #555; }
.dv-status-msg { font-size: .875rem; color: #666; max-width: 400px; margin: 0 auto; }
.dv-warning { margin-top: .8rem; color: #c0392b; font-size: .82rem; font-weight: 500; }

/* Fields */
.dv-fields { padding: 0 1.5rem 1.5rem; }
.dv-field {
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: .5rem;
  padding: .7rem 0;
  border-bottom: 1px solid #f2f2f2;
  font-size: .875rem;
  align-items: center;
}
.dv-field:last-child { border-bottom: none; }
.dv-field-label {
  font-size: .7rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #888;
}
.dv-field-value { color: #1a1a2e; }
.dv-field-value.mono { font-family: 'JetBrains Mono', monospace; font-size: .82rem; }
.dv-field-value.bold { font-weight: 600; }

/* Powered by */
.dv-powered {
  padding: .8rem 1.5rem;
  background: #f8f9fb;
  font-size: .72rem;
  color: #aaa;
  letter-spacing: .06em;
  text-align: center;
  border-top: 1px solid #f0f0f0;
}
