/**
 * Guardian risk scan output + email processing guardian results
 * Split from outputs.css — Phase 3.3
 */

/* ========================================
   GUARDIAN OUTPUT
   ======================================== */

.guardian-flag {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-4);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-left: 4px solid var(--color-warning);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-3);
}

.guardian-flag--low {
  border-left-color: var(--color-success);
}

.guardian-flag--medium {
  border-left-color: var(--color-warning);
}

.guardian-flag--high {
  border-left-color: var(--color-error);
}

.guardian-flag__severity {
  padding: var(--space-1) var(--space-2);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  border-radius: var(--radius-sm);
  background: var(--color-warning-light);
  color: var(--color-warning);
}

.guardian-flag--low .guardian-flag__severity {
  background: var(--color-success-light);
  color: var(--color-success);
}

.guardian-flag--high .guardian-flag__severity {
  background: var(--color-error-light);
  color: var(--color-error);
}

.guardian-flag__content {
  flex: 1;
}

.guardian-flag__title {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text);
  margin-bottom: var(--space-1);
}

.guardian-flag__detail {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  line-height: var(--line-height-relaxed);
}

/* Guardian Header */
.guardian-header {
  background: linear-gradient(135deg, rgba(59,130,246,0.08) 0%, rgba(59,130,246,0.03) 100%);
  border: 1px solid rgba(59,130,246,0.25);
  border-radius: 12px;
  padding: 20px 24px;
  margin-bottom: 20px;
  position: relative;
}

.guardian-header__icon {
  position: absolute;
  top: -12px;
  left: 20px;
  background: var(--color-surface);
  padding: 4px 8px;
  font-size: 16px;
  border-radius: 6px;
  border: 1px solid rgba(59,130,246,0.25);
}

.guardian-header__label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--color-blue-500);
  margin-bottom: 8px;
}

.guardian-header__assessment {
  font-size: 18px;
  font-weight: 600;
  color: #1e3a5f;
  line-height: 1.4;
  margin-bottom: 10px;
}

.guardian-header__meta {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
}

.guardian-score {
  font-size: 28px;
  font-weight: 800;
  font-family: var(--font-family-mono);
}

.guardian-score--high {
  color: var(--color-green-500);
}

.guardian-score--medium {
  color: var(--color-amber-500);
}

.guardian-score--low {
  color: var(--color-red-500);
}

.guardian-tag {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 600;
  background: rgba(0,0,0,0.05);
  color: var(--color-neutral-600);
}

.guardian-tag--score {
  font-weight: 600;
}

.guardian-tag--high {
  background: rgba(34,197,94,0.15);
  color: var(--color-green-500);
}

.guardian-tag--medium {
  background: rgba(245,158,11,0.15);
  color: var(--color-amber-500);
}

.guardian-tag--low {
  background: rgba(239,68,68,0.15);
  color: var(--color-red-500);
}

/* Guardian Body */
.guardian-body {
  padding: 0 4px;
}

.guardian-section {
  margin-bottom: 16px;
}

.guardian-section__title {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--color-neutral-500);
  margin-bottom: 8px;
}

.guardian-field {
  font-size: 12px;
  padding: 8px;
  background: var(--color-neutral-50);
  border-radius: 6px;
}

.guardian-field__label {
  color: var(--color-neutral-400);
}

.guardian-field__value {
  color: var(--color-neutral-700);
}

/* Guardian Categories */
.guardian-categories {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}

@media (max-width: 768px) {
  .guardian-categories {
    grid-template-columns: repeat(2, 1fr);
  }
}

.guardian-category {
  background: var(--color-neutral-50);
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  padding: 10px;
  text-align: center;
}

.guardian-category__label {
  font-size: 11px;
  color: var(--color-neutral-500);
  margin-bottom: 4px;
}

.guardian-category__score {
  font-size: 18px;
  font-weight: 700;
}

.guardian-category__score--high {
  color: var(--color-green-500);
}

.guardian-category__score--medium {
  color: var(--color-amber-500);
}

.guardian-category__score--low {
  color: var(--color-red-500);
}

.guardian-category__icon {
  font-size: 10px;
}

.guardian-category__factors {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--color-neutral-200);
  text-align: left;
}

.guardian-category__factor {
  font-size: 10px;
  color: var(--color-neutral-600);
  margin-bottom: 2px;
}

/* Guardian Recommendations */
.guardian-recommendation {
  display: flex;
  gap: 10px;
  margin-bottom: 8px;
  padding: 10px;
  background: var(--color-green-50);
  border: 1px solid var(--color-green-200);
  border-radius: 6px;
}

.guardian-recommendation__icon {
  color: var(--color-green-500);
}

.guardian-recommendation__content {
  flex: 1;
}

.guardian-recommendation__action {
  font-weight: 600;
  color: var(--color-green-800);
  font-size: 12px;
}

.guardian-recommendation__description {
  font-size: 11px;
  color: var(--color-neutral-600);
  margin-top: 2px;
}

/* Guardian Escalation */
.guardian-escalation {
  background: var(--color-amber-100);
  border: 1px solid var(--color-amber-300);
  border-radius: 6px;
  padding: 12px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.guardian-escalation__icon {
  font-size: 20px;
}

.guardian-escalation__content {
  flex: 1;
}

.guardian-escalation__title {
  font-weight: 600;
  color: var(--color-amber-800);
  font-size: 12px;
}

.guardian-escalation__reason {
  font-size: 11px;
  color: var(--color-yellow-700);
}

/* Guardian Disclosure */
.guardian-disclosure {
  margin-top: 16px;
  padding: 12px;
  background: var(--color-neutral-50);
  border: 1px solid var(--color-neutral-200);
  border-radius: 8px;
  font-size: 10px;
  color: var(--color-neutral-500);
  line-height: 1.5;
}

/* Guardian Next Steps */
.guardian-nextsteps {
  margin-top: 16px;
  padding: 12px 16px;
  font-size: 12px;
  color: var(--color-neutral-600);
  border-top: 1px solid var(--color-neutral-200);
}


/* ========================================
   GUARDIAN RESULTS (Email Processing Tab)
   ======================================== */

.guardian-results {
  padding: 16px;
}

.guardian-results--empty {
  padding: 24px;
  text-align: center;
  color: var(--color-text-secondary);
}

.guardian-results__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--color-border);
}

.guardian-results__score {
  display: flex;
  align-items: center;
  gap: 12px;
}

.guardian-results__score-value {
  font-size: 36px;
  font-weight: 700;
  line-height: 1;
}

.guardian-results__score-label {
  font-size: 14px;
  font-weight: 600;
}

.guardian-results__score.score-good {
  color: var(--color-emerald-500);
}

.guardian-results__score.score-warning {
  color: var(--color-amber-500);
}

.guardian-results__score.score-danger {
  color: var(--color-red-500);
}

.guardian-results__jurisdiction {
  font-size: 12px;
  color: var(--color-text-secondary);
}

.guardian-results__categories {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 8px;
  margin-bottom: 20px;
}

.guardian-category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 12px;
  border-radius: 8px;
  border: 1px solid;
}

.guardian-category--green {
  background: rgba(16, 185, 129, 0.08);
  border-color: rgba(16, 185, 129, 0.2);
}

.guardian-category--amber {
  background: rgba(245, 158, 11, 0.08);
  border-color: rgba(245, 158, 11, 0.2);
}

.guardian-category--red {
  background: rgba(239, 68, 68, 0.08);
  border-color: rgba(239, 68, 68, 0.2);
}

.guardian-category__label {
  font-size: 12px;
  font-weight: 500;
  color: var(--color-text);
}

.guardian-category__score {
  font-size: 14px;
  font-weight: 700;
}

.guardian-category--green .guardian-category__score {
  color: var(--color-emerald-500);
}

.guardian-category--amber .guardian-category__score {
  color: var(--color-amber-500);
}

.guardian-category--red .guardian-category__score {
  color: var(--color-red-500);
}

.guardian-results__issues {
  margin-bottom: 20px;
}

.guardian-results__issues h4 {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text);
  margin-bottom: 12px;
}

.guardian-issue {
  padding: 12px;
  border-radius: 8px;
  margin-bottom: 8px;
}

.guardian-issue--high {
  background: rgba(239, 68, 68, 0.08);
  border-left: 3px solid var(--color-red-500);
}

.guardian-issue--medium {
  background: rgba(245, 158, 11, 0.08);
  border-left: 3px solid var(--color-amber-500);
}

.guardian-issue--low {
  background: rgba(107, 114, 128, 0.08);
  border-left: 3px solid var(--color-neutral-500);
}

.guardian-issue__type {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--color-text-secondary);
  margin-bottom: 4px;
  display: block;
}

.guardian-issue__description {
  font-size: 13px;
  color: var(--color-text);
  margin: 0;
  line-height: 1.5;
}

.guardian-results__recommendations {
  background: rgba(59, 130, 246, 0.05);
  border-radius: 8px;
  padding: 14px;
}

.guardian-results__recommendations h4 {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text);
  margin-bottom: 10px;
}

.guardian-results__recommendations ul {
  margin: 0;
  padding-left: 18px;
}

.guardian-results__recommendations li {
  font-size: 13px;
  color: var(--color-text-secondary);
  margin-bottom: 6px;
  line-height: 1.5;
}

.guardian-results__recommendations li:last-child {
  margin-bottom: 0;
}
