/* =========================================================================
   app.css — DominoDomain.hu Message Header Analyzer
   Kizárólag oldal-specifikus stílusok; az általános arculati elemek a
   brand-design-system.css-ből jönnek.
   ========================================================================= */

.mha-hero{
  padding:56px 0 36px;
}

.mha-hero h1{
  font-size:clamp(28px, 4vw, 40px);
  font-weight:800;
  color:var(--brand-paper);
  margin:0 0 14px;
  letter-spacing:-0.01em;
}

html.theme-light .mha-hero h1{
  color:var(--brand-icon-navy);
}

/* --- Bemeneti mód váltó (tab) --- */
.mha-tabs{
  display:inline-flex;
  gap:4px;
  padding:4px;
  border-radius:12px;
  background-color:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
  margin-bottom:18px;
}

html.theme-light .mha-tabs{
  background-color:rgba(11,31,51,0.05);
  border-color:rgba(11,31,51,0.12);
}

.mha-tab-btn{
  font-family:var(--brand-font);
  font-weight:600;
  font-size:13.5px;
  color:var(--brand-fog);
  background:transparent;
  border:none;
  border-radius:8px;
  padding:9px 18px;
  cursor:pointer;
  transition:background-color .2s ease, color .2s ease;
}

.mha-tab-btn.active{
  background-color:var(--brand-teal);
  color:var(--brand-paper);
}

html.theme-light .mha-tab-btn{ color:var(--brand-icon-navy); }

.mha-panel{ display:none; }
.mha-panel.active{ display:block; }

/* --- Dropzone --- */
.mha-dropzone{
  border:2px dashed rgba(111,214,189,0.4);
  border-radius:var(--brand-radius);
  padding:36px 20px;
  text-align:center;
  cursor:pointer;
  transition:border-color .2s ease, background-color .2s ease;
  background-color:rgba(255,255,255,0.03);
}

.mha-dropzone.dragover{
  border-color:var(--brand-teal-light);
  background-color:rgba(30,158,140,0.08);
}

.mha-dropzone svg{ width:34px; height:34px; color:var(--brand-teal-light); margin-bottom:10px; }

.mha-dropzone p{ margin:0; color:var(--brand-fog); font-size:14px; }
.mha-dropzone .mha-filename{ margin-top:10px; font-weight:600; color:var(--brand-teal-light); font-size:13.5px; }

html.theme-light .mha-dropzone{ background-color:rgba(11,31,51,0.02); }

/* --- Biztonsági jelvény-sor (mint a testvér-eszköznél) --- */
.mha-trust-list{
  list-style:none;
  margin:22px 0 0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(230px, 1fr));
  gap:10px;
}

.mha-trust-list li{
  font-size:13px;
  color:var(--brand-fog);
  background-color:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  padding:10px 12px;
  display:flex;
  gap:8px;
  align-items:flex-start;
}

html.theme-light .mha-trust-list li{
  color:#3b4a5e;
  background-color:rgba(11,31,51,0.03);
  border-color:rgba(11,31,51,0.08);
}

/* --- Eredmény szekció --- */
.mha-result{
  margin-top:34px;
}

.mha-score-bar{
  border-radius:var(--brand-radius);
  padding:20px 24px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  margin-bottom:18px;
}

.risk-bg-success{ background-color:rgba(47,191,113,0.12); border:1px solid rgba(47,191,113,0.35); }
.risk-bg-warning{ background-color:rgba(224,167,46,0.12); border:1px solid rgba(224,167,46,0.35); }
.risk-bg-danger{  background-color:rgba(224,85,63,0.12);  border:1px solid rgba(224,85,63,0.35); }

.mha-score-number{
  font-size:32px;
  font-weight:800;
  margin:0;
  line-height:1;
}

.mha-score-label{ font-size:13.5px; opacity:.85; margin:4px 0 0; }

.mha-badge-row{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(120px, 1fr));
  gap:8px;
  margin-bottom:20px;
}

.mha-badge-cell{
  border-radius:10px;
  padding:10px;
  text-align:center;
}

.mha-badge-cell .k{ font-size:11.5px; text-transform:uppercase; letter-spacing:.05em; opacity:.8; margin:0; }
.mha-badge-cell .v{ font-size:14px; font-weight:700; margin:3px 0 0; }

/* --- Fejléc adatkártya --- */
.mha-fields-table{ width:100%; font-size:13.5px; border-collapse:collapse; }
.mha-fields-table td{ padding:7px 0; border-bottom:1px solid rgba(255,255,255,0.06); vertical-align:top; }
.mha-fields-table td:first-child{ color:var(--brand-fog); width:150px; white-space:nowrap; }
.mha-fields-table td:last-child{ word-break:break-word; color:var(--brand-paper); }

html.theme-light .mha-fields-table td:last-child{ color:var(--brand-icon-navy); }
html.theme-light .mha-fields-table td{ border-bottom-color:rgba(11,31,51,0.08); }

/* --- Findings kártyák --- */
.mha-finding{
  border-radius:10px;
  padding:12px 14px;
  margin-bottom:10px;
  display:flex;
  gap:10px;
  align-items:flex-start;
  font-size:13.5px;
}

.mha-finding strong{ display:block; margin-bottom:2px; font-size:14px; }

/* --- Route timeline --- */
.mha-timeline{
  border-left:2px solid rgba(255,255,255,0.15);
  padding-left:18px;
  margin:0 0 20px 6px;
}

html.theme-light .mha-timeline{ border-left-color:rgba(11,31,51,0.15); }

.mha-timeline-item{
  position:relative;
  padding-bottom:18px;
}

.mha-timeline-item:last-child{ padding-bottom:0; }

.mha-timeline-dot{
  position:absolute;
  left:-24px;
  top:3px;
  width:9px;
  height:9px;
  border-radius:50%;
}

.mha-timeline-item .host{ font-size:13.5px; font-weight:600; margin:0; }
.mha-timeline-item .ts{ font-size:12px; color:var(--brand-fog); font-weight:400; }
.mha-timeline-item .anomaly-note{ font-size:12.5px; margin:3px 0 0; }

/* --- Akciólista --- */
.mha-action-list{ margin:0; padding-left:20px; }
.mha-action-list li{ margin-bottom:6px; font-size:13.5px; color:var(--brand-fog); }
html.theme-light .mha-action-list li{ color:#3b4a5e; }

/* --- Egyszerű/technikai nézet kapcsoló elrejtés --- */
[data-tech-only]{ display:none; }
.tech-view [data-tech-only]{ display:block; }
.tech-view [data-simple-only]{ display:none; }

/* --- Nyers header panel --- */
details.mha-raw summary{
  cursor:pointer;
  font-size:13.5px;
  font-weight:600;
  color:var(--brand-teal-light);
  list-style:none;
}
details.mha-raw summary::-webkit-details-marker{ display:none; }
details.mha-raw summary::before{ content:'▸ '; }
details.mha-raw[open] summary::before{ content:'▾ '; }

@media (max-width:640px){
  .mha-score-bar{ flex-direction:column; align-items:flex-start; }
  .mha-fields-table td:first-child{ width:110px; }
}
