/* ============================================================
   07 — A jó commit: oldalspecifikus elemek
   Rossz/jó történet · Commit-tervező · üzenet-anatómia · szabálylista · Üzenet-ellenőrző
   (a Git-szimulátor stílusa: assets/terminal-sim.css)
   ============================================================ */

.small{font-size:.86rem; color:var(--muted);}
.ix.term::before{content:"⌨ GIT-SZIMULÁTOR";}
.side-lbl{margin:0 0 6px; font-weight:800; font-size:.9rem;}
.side-lbl.rossz{color:var(--red);} .side-lbl.jo{color:var(--green);}
.grid2 pre{margin-top:0;}

/* ---------- Commit-tervező ---------- */
.ix.plan::before{content:"🧩 COMMIT-TERVEZŐ";}
.pl-grid{display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:18px; margin-top:10px;}
.pl-lbl{font-size:.76rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; color:var(--muted); margin-bottom:6px;}
.pl-list{list-style:none; margin:0 0 12px; padding:0; display:flex; flex-direction:column; gap:6px;}
.pl-list li label{
  display:flex; gap:10px; align-items:flex-start; background:var(--card-in); border:1px solid var(--line); border-radius:9px;
  padding:8px 10px; cursor:pointer; font-size:.9rem; line-height:1.4; color:var(--card-in-ink);
}
.pl-list li label:hover{border-color:var(--accent);}
.pl-list input{margin-top:3px; accent-color:var(--accent);}
.pl-list li.kesz{display:none;}
.pl-list .ures{font-size:.88rem; color:var(--green); font-weight:700;}
.pl-msg{display:flex; flex-direction:column; gap:4px; font-size:.8rem; font-weight:700; color:var(--muted);}
.pl-msg input{font:inherit; font-weight:400; font-size:.92rem; font-family:"Cascadia Mono",Consolas,monospace; color:var(--ink);
  background:var(--card-in); border:1px solid var(--line); border-radius:8px; padding:7px 10px;}
.pl-msg input:focus{outline:2px solid var(--accent); outline-offset:1px;}
.pl-fb{margin-top:10px; font-size:.9rem; min-height:2.6em; line-height:1.5;}
.pl-fb.ok{color:var(--green);} .pl-fb.warn{color:var(--orange);} .pl-fb.no{color:var(--red);}
pre.pl-log{margin:0; min-height:160px; white-space:pre-wrap;}
pre.pl-log .j{color:#7ee787;} pre.pl-log .r{color:#ffa657;}
.pl-sum{margin-top:10px; font-size:.9rem; font-weight:700;}

/* ---------- Üzenet-anatómia ---------- */
.msg-anat{background:var(--code-bg); border:1px solid var(--line); border-radius:12px; padding:10px 0; margin:16px 0; overflow-x:auto;}
.ma-row{display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:14px; padding:2px 16px; align-items:start;}
.ma-txt{font-family:"Cascadia Mono",Consolas,monospace; font-size:.86rem; color:var(--code-ink); white-space:pre-wrap; border-left:3px solid transparent; padding-left:10px;}
.ma-lbl{font-size:.76rem; font-weight:700; color:#8b949e; padding-top:2px;}
.ma-row.subj .ma-txt{border-color:#f5693f; color:#fff; font-weight:700;} .ma-row.subj .ma-lbl{color:#ff8a65;}
.ma-row.body .ma-txt{border-color:#2dd4bf;} .ma-row.body .ma-lbl{color:#2dd4bf;}
.ma-row.foot .ma-txt{border-color:#a78bfa;} .ma-row.foot .ma-lbl{color:#a78bfa;}
.ma-row.blank .ma-txt{border-color:#3d444d; border-left-style:dashed;}

/* ---------- Szabálylista ---------- */
ol.rules{margin:14px 0; padding-left:0; list-style:none; counter-reset:sz; display:flex; flex-direction:column; gap:8px;}
ol.rules li{counter-increment:sz; position:relative; padding:10px 14px 10px 50px; background:var(--panel); border:1px solid var(--line); border-radius:11px; font-size:.95rem;}
ol.rules li::before{content:counter(sz); position:absolute; left:12px; top:9px; width:26px; height:26px; border-radius:8px;
  background:var(--accent); color:var(--accent-ink); display:grid; place-items:center; font-weight:800; font-size:.85rem;}
ol.rules b{color:var(--ink-strong);}

pre.cc-form{font-size:.95rem;}

/* ---------- Üzenet-ellenőrző ---------- */
.ix.lint::before{content:"🔍 ÜZENET-ELLENŐRZŐ";}
.ln-top{display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; margin:8px 0;}
.ln-chk{display:flex; gap:8px; align-items:center; font-size:.9rem; cursor:pointer;}
.ln-chk input{accent-color:var(--accent); width:16px; height:16px;}
.ln-cnt{font-family:"Cascadia Mono",Consolas,monospace; font-size:.84rem; color:var(--muted);}
.ln-cnt.warn{color:var(--orange);} .ln-cnt.no{color:var(--red);}
#lnBe{
  width:100%; resize:vertical; background:var(--code-bg); color:var(--code-ink); border:1px solid var(--line); border-radius:10px;
  padding:10px 12px; font-family:"Cascadia Mono",Consolas,monospace; font-size:.9rem; line-height:1.55;
  background-image:linear-gradient(90deg, transparent calc(12px + 50ch), rgba(245,105,63,.35) calc(12px + 50ch), rgba(245,105,63,.35) calc(12px + 50ch + 1px), transparent calc(12px + 50ch + 1px));
}
#lnBe:focus{outline:2px solid var(--accent); outline-offset:1px;}
.ln-minta{font-size:.82rem; color:var(--muted); margin:6px 0 10px; display:flex; gap:6px; flex-wrap:wrap; align-items:center;}
.mini-link{background:var(--panel2); border:1px solid var(--line); border-radius:99px; padding:2px 10px; font:inherit; font-size:.8rem; color:var(--ink); cursor:pointer;}
.mini-link:hover{border-color:var(--accent); color:var(--accent2);}
.ln-res{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:5px;}
.ln-res li{display:flex; gap:10px; align-items:baseline; font-size:.9rem; line-height:1.45;}
.ln-res li::before{flex:0 0 18px; font-weight:800; text-align:center;}
.ln-res li.ok::before{content:"✓"; color:var(--green);}
.ln-res li.warn::before{content:"!"; color:var(--orange);}
.ln-res li.err::before{content:"✗"; color:var(--red);}
.ln-res li.err{color:var(--red);}
.ln-verdict{margin-top:12px; font-weight:800; font-size:.98rem;}
.ln-verdict.ok{color:var(--green);} .ln-verdict.warn{color:var(--orange);} .ln-verdict.no{color:var(--red);}

@media (max-width:760px){
  .pl-grid{grid-template-columns:1fr;}
  .ma-row{grid-template-columns:1fr; gap:2px;}
  .ma-lbl{padding-left:13px; margin-bottom:4px;}
}

/* a szimulátor alatti üzenetértékelés */
.g7-ert{margin-top:14px; background:var(--card-in); border:1px solid var(--line); border-radius:10px; padding:10px 14px;}
.g7-ert:empty{display:none;}

/* a globális .warn (figyelmeztető doboz) háttere ne öröklődjön a visszajelzésekre */
.pl-fb.warn, .ln-cnt.warn, .ln-verdict.warn, .ln-res li.warn{background:none;}
