:root{
  --bg:        #F2F5F8;
  --bg-panel:  #FFFFFF;
  --bg-raised: #F7F9FB;
  --line:      #DAE1E8;
  --ochre:    #C08D10;
  --ochre-hi: #8C6408;
  --text:      #111214;
  --text-dim:  #56585C;
  --ok:        #2E7D4F;
  --danger:    #C2452D;
  --led-red:   #E03131;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  background:var(--bg);
  color:var(--text);
  font-family:'Inter',system-ui,sans-serif;
  line-height:1.65;
  min-height:100vh;
  min-height:100dvh;
  display:flex;
  flex-direction:column;
}
img{max-width:100%;display:block;}
a{color:inherit;}
.wrap{
  width:100%;
  max-width:820px;
  margin:0 auto;
  padding:0 20px;
}

/* Fejléc */
header{
  border-bottom:1px solid var(--line);
  padding:14px 0;
  position:sticky;
  top:0;
  background:rgba(242,245,248,.92);
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
  z-index:20;
}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;}
.brand img{width:42px;height:42px;flex-shrink:0;}
.brand-text{
  font-family:'Inter',sans-serif;
  font-weight:700;
  font-size:1.05rem;
  letter-spacing:.05em;
  text-transform:uppercase;
  line-height:1.25;
  color:var(--text);
}
.brand-text .hu{color:var(--ochre-hi);}
.brand-text small{
  display:block;
  font-family:'Inter',sans-serif;
  font-weight:400;
  font-size:.68rem;
  letter-spacing:.02em;
  text-transform:none;
  color:var(--text-dim);
}

main{flex:1;padding:40px 0 60px;}

h1{
  font-family:'Inter',sans-serif;
  font-weight:700;
  font-size:clamp(1.6rem,4vw,2.2rem);
  margin-bottom:8px;
  color:var(--text);
}
.eyebrow{
  font-family:'Inter',sans-serif;
  font-size:.8rem;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--ochre);
  display:inline-flex;align-items:center;gap:10px;margin-bottom:16px;
}
.eyebrow::before{content:"";width:28px;height:2px;background:var(--ochre);display:inline-block;}
.lead{color:var(--text-dim);margin-bottom:32px;max-width:60ch;}

/* Bejegyzés-kártyák a listában */
.post-card{
  display:block;
  border:1px solid var(--line);
  background:var(--bg-panel);
  border-radius:6px;
  padding:22px 22px 20px;
  margin-bottom:16px;
  text-decoration:none;
  transition:border-color .18s ease, transform .18s ease, background .18s ease;
}
@media (hover:hover) and (pointer:fine){
  .post-card:hover{border-color:var(--ochre);background:var(--bg-raised);transform:translateY(-2px);}
}
.post-card:focus-visible{outline:2px solid var(--ochre);outline-offset:3px;}
.post-card .post-date{
  font-family:'Inter',sans-serif;
  font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--text-dim);margin-bottom:8px;display:block;
}
.post-card h2{
  font-family:'Inter',sans-serif;
  font-size:1.25rem;color:var(--ochre-hi);margin-bottom:8px;
}
.post-card .post-excerpt{color:var(--text-dim);font-size:.95rem;}
.post-card .post-thumb-row{display:flex;gap:8px;margin-top:14px;}
.post-card .post-thumb-row img{
  width:64px;height:64px;object-fit:cover;border-radius:4px;border:1px solid var(--line);
}
.empty-state{color:var(--text-dim);padding:30px 0;}

/* Egy bejegyzés részletes nézete */
.post-full .post-date{
  font-family:'Inter',sans-serif;
  font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ochre);display:block;margin-bottom:10px;
}
.post-full h1{margin-bottom:20px;}
.post-body p{margin-bottom:16px;color:var(--text);max-width:70ch;}
.post-body strong{color:var(--ochre-hi);}
.post-body h2{font-family:'Inter',sans-serif;font-size:1.35rem;color:var(--ochre-hi);margin:30px 0 12px;max-width:70ch;}

/* Szövegbe ágyazott kép ([kep:...] jelölőből) képaláírással.
   A megjelenített méret korlátos: fekvő képnél a szélesség, álló képnél
   a magasság szab határt - így egy álló mobilfotó sem tolja szét az
   oldalt. Teljes méretben a képre kattintva, a nagyítóval nyílik meg. */
.post-figure{
  margin:26px 0;
  max-width:70ch;
  text-align:center;
}
.post-figure .figure-thumb{
  display:inline-block;
  width:auto;
  max-width:100%;
}
.post-figure img{
  display:block;
  width:auto;
  max-width:100%;
  max-height:min(62vh, 440px);
  height:auto;
  border-radius:6px;
  border:1px solid var(--line);
}
.post-figure figcaption{
  margin-top:8px;
  font-size:.82rem;
  color:var(--text-dim);
  font-style:italic;
  line-height:1.5;
  text-align:center;
}

/* Halvány, témához illő fejléckép az oldal tetején */
.page-hero{
  height:clamp(110px, 24vw, 190px);
  margin:-14px 0 26px;
  border-radius:6px;
  background-size:cover;
  background-position:center;
  opacity:.16;
  pointer-events:none;
  -webkit-mask-image:linear-gradient(to bottom, #000 35%, transparent 100%);
  mask-image:linear-gradient(to bottom, #000 35%, transparent 100%);
}
/* (A .page-hero-blog fejléckép eltávolítva – nincs több fotós fejléc.) */
/* ── Referenciamunkák oldal (/galeria/) ── */
.galeria-morzsa{font-size:.85rem;color:var(--text-dim);margin-bottom:18px;}
.galeria-morzsa a{color:var(--ochre-hi);text-decoration:none;font-weight:600;}
.galeria-morzsa a:hover{text-decoration:underline;}
.galeria-morzsa a:focus-visible{outline:2px solid var(--ochre);outline-offset:3px;}
.galeria-morzsa span[aria-hidden]{margin:0 7px;}
.galeria-lista{margin-top:26px;}
.galeria-elem{margin:0 0 34px;padding-bottom:26px;border-bottom:1px solid var(--line);max-width:none;}
.galeria-elem:last-child{border-bottom:none;}
.galeria-elem figcaption{font-style:normal;font-size:.92rem;color:var(--text);text-align:left;max-width:70ch;margin:12px auto 0;}
.galeria-meta{display:block;margin-top:6px;font-size:.8rem;color:var(--text-dim);font-weight:600;letter-spacing:.02em;}

/* ── Összehasonlító képpár (előtte / utána) ──────────────────────────
   A két kép EGYMÁS MELLETT marad mobilon is – pont ez a lényege. Hogy a
   két keret pontosan egy vonalban álljon akkor is, ha az egyik fotó álló,
   a másik fekvő, mindkettő azonos oldalarányú dobozba kerül, és a kép
   `contain` módban illeszkedik: így SEMMI nem vágódik le a képből. A
   teljes felbontású változat a képre koppintva, a nagyítóban nyílik meg. */
.galeria-par-kepek{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  align-items:stretch;
}
.galeria-par .galeria-par-kepek .figure-thumb{
  display:block;
  width:100%;
  max-width:none;
}
.galeria-par .galeria-par-kepek img{
  width:100%;
  height:100%;
  max-height:none;
  aspect-ratio:1/1;
  object-fit:contain;
  background:var(--bg-raised);
}
.galeria-par-jeloles{
  display:inline-block;
  font-size:.68rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:var(--ochre-hi);border:1px solid var(--ochre);border-radius:999px;
  padding:1px 9px;margin-right:8px;vertical-align:2px;
}
@media(max-width:420px){
  .galeria-par-kepek{gap:7px;}
}

.post-gallery{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(140px,1fr));
  gap:10px;
  margin:24px 0;
}
.post-gallery img{
  width:100%;height:140px;object-fit:cover;border-radius:6px;
  border:1px solid var(--line);
}
.gallery-thumb{
  appearance:none;
  border:none;
  padding:0;
  background:none;
  cursor:pointer;
  display:block;
  width:100%;
  position:relative;
}

/* Diszkrét, plusz-jeles nagyító ikon a kép jobb alsó sarkában -
   jelzi, hogy a kép kattintható és teljes méretben megnyitható. */
.zoom-badge{
  position:absolute;
  right:8px;
  bottom:8px;
  width:26px;
  height:26px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(16,22,28,.5);
  color:#F2F5F8;
  pointer-events:none;
  opacity:.78;
  transition:opacity .15s ease, background .15s ease;
}
.zoom-badge svg{
  width:14px;
  height:14px;
  stroke:currentColor;
  fill:none;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.gallery-thumb:hover .zoom-badge,
.gallery-thumb:focus-visible .zoom-badge{
  opacity:1;
  background:rgba(192,141,16,.88);
}
.gallery-thumb img{transition:opacity .15s ease;}
@media (hover:hover) and (pointer:fine){
  .gallery-thumb:hover img{opacity:.82;}
}
.gallery-thumb:focus-visible{outline:2px solid var(--ochre);outline-offset:3px;border-radius:6px;}

#lightbox{
  position:fixed;
  inset:0;
  width:100vw;
  height:100vh;
  height:100dvh;
  max-width:none;
  max-height:none;
  margin:0;
  padding:0;
  border:none;
  background:rgba(10,14,18,.94);
  display:none;
  align-items:center;
  justify-content:center;
}
#lightbox::backdrop{background:rgba(10,14,18,.94);}
#lightbox[open]{display:flex;}
#lightbox-img{
  max-width:92vw;
  max-height:88vh;
  object-fit:contain;
  border-radius:4px;
  box-shadow:0 20px 60px rgba(0,0,0,.5);
}
#lightbox-close{
  position:fixed;
  top:18px;right:18px;
  width:42px;height:42px;
  border-radius:50%;
  border:1px solid var(--line);
  background:var(--bg-panel);
  color:var(--text);
  font-size:1.2rem;
  cursor:pointer;
}
#lightbox-close:hover{border-color:var(--ochre);color:var(--ochre-hi);}
.lightbox-nav{
  position:fixed;
  top:50%;
  transform:translateY(-50%);
  width:46px;height:46px;
  border-radius:50%;
  border:1px solid var(--line);
  background:var(--bg-panel);
  color:var(--text);
  font-size:1.25rem;
  line-height:1;
  cursor:pointer;
  z-index:2;
}
#lightbox-prev{left:14px;}
#lightbox-next{right:14px;}
.lightbox-nav:hover{border-color:var(--ochre);color:var(--ochre-hi);}
.lightbox-nav[hidden]{display:none;}
#lightbox-counter{
  position:fixed;
  bottom:16px;
  left:50%;
  transform:translateX(-50%);
  color:#F2F5F8;
  font-size:.85rem;
  letter-spacing:.06em;
  background:rgba(16,22,28,.55);
  padding:4px 12px;
  border-radius:999px;
  pointer-events:none;
}
#lightbox-counter[hidden]{display:none;}
.back-link{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--text-dim);text-decoration:none;font-size:.9rem;
  margin-top:32px;border-bottom:1px solid transparent;
}
.back-link:hover{color:var(--ochre-hi);border-color:var(--ochre);}
.post-related{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:30px;padding:16px 18px;border:1px solid var(--line);border-radius:6px;background:var(--bg-panel);font-size:.86rem;}
.post-related strong{width:100%;font-family:'Inter',sans-serif;color:var(--text);}
.post-related a{color:var(--ochre-hi);}

/* Admin - form elemek */
.panel{
  border:1px solid var(--line);
  background:var(--bg-panel);
  border-radius:6px;
  padding:26px 24px;
  margin-bottom:28px;
}
.panel h2{
  font-family:'Inter',sans-serif;
  font-size:1.1rem;color:var(--text);margin-bottom:18px;
}
label{
  display:block;
  font-family:'Inter',sans-serif;
  font-size:.8rem;font-weight:600;letter-spacing:.05em;
  text-transform:uppercase;color:var(--text-dim);
  margin-bottom:6px;margin-top:16px;
}
label:first-of-type{margin-top:0;}
input[type=text], input[type=password], textarea{
  width:100%;
  background:var(--bg-raised);
  border:1px solid var(--line);
  border-radius:4px;
  color:var(--text);
  font-family:inherit;
  font-size:1rem;
  padding:11px 13px;
}
input[type=text]:focus, input[type=password]:focus, textarea:focus{
  outline:none;border-color:var(--ochre);
}
textarea{min-height:220px;resize:vertical;line-height:1.6;}
input[type=file]{
  width:100%;
  color:var(--text-dim);
  font-size:.9rem;
  padding:10px 0;
}
.format-buttons{display:flex;gap:8px;margin-bottom:8px;}
.format-buttons button{
  appearance:none;
  border:1px solid var(--line);
  background:var(--bg-raised);
  color:var(--text);
  border-radius:4px;
  padding:6px 14px;
  font-family:'Inter',sans-serif;
  font-size:.85rem;
  cursor:pointer;
}
.format-buttons button:hover{border-color:var(--ochre);color:var(--ochre-hi);}
.format-buttons button.fmt-bold{font-weight:700;}
.format-buttons button.fmt-italic{font-style:italic;}

.btn{
  appearance:none;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--ochre);
  background:var(--ochre);
  color:#FFFFFF;
  font-family:'Inter',sans-serif;
  font-weight:700;
  font-size:.92rem;
  border-radius:4px;
  padding:11px 22px;
  cursor:pointer;
  text-decoration:none;
  margin-top:20px;
  transition:background .15s ease, border-color .15s ease;
}
.btn:hover{background:var(--ochre-hi);border-color:var(--ochre-hi);}
.btn-secondary{
  background:transparent;color:var(--text-dim);border-color:var(--line);
}
.btn-secondary:hover{border-color:var(--text-dim);color:var(--text);}
.btn-danger{
  background:transparent;color:var(--danger);border-color:var(--danger);
}
.btn-danger:hover{background:var(--danger);color:#FFFFFF;}
.btn-row{display:flex;gap:10px;flex-wrap:wrap;}

.error-msg{
  background:rgba(194,69,45,.10);
  border:1px solid var(--danger);
  color:var(--danger);
  border-radius:4px;
  padding:12px 14px;
  margin-bottom:18px;
  font-size:.9rem;
}
.success-msg{
  background:rgba(46,125,79,.10);
  border:1px solid var(--ok);
  color:var(--ok);
  border-radius:4px;
  padding:12px 14px;
  margin-bottom:18px;
  font-size:.9rem;
}

.login-wrap{max-width:360px;margin:60px auto 0;}
.mfa-panel h2{font-family:'Inter',sans-serif;font-size:1.2rem;text-align:center;margin-bottom:8px;}
.mfa-lock{width:42px;height:42px;display:grid;place-items:center;margin:0 auto 12px;border-radius:50%;background:rgba(46,125,79,.12);border:1px solid var(--ok);color:var(--ok);font-weight:700;font-size:1.2rem;}
.mfa-help{text-align:center;margin:0 0 18px;}
.mfa-help strong{color:var(--ochre-hi);font-family:'Inter',sans-serif;letter-spacing:.03em;}
.otp-input{font-family:'Inter',sans-serif!important;font-size:1.65rem!important;font-weight:700;text-align:center;letter-spacing:.5em;padding-left:.5em!important;font-variant-numeric:tabular-nums;}
.mfa-secondary-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:-18px;}
.mfa-secondary-actions .btn{margin-top:0;font-size:.8rem;padding:8px 12px;}
.totp-setup-card{margin-bottom:16px;text-align:center;}
.totp-qr{display:flex;flex-direction:column;align-items:center;gap:12px;margin:18px 0;}
.totp-qr-canvas{display:block;max-width:100%;height:auto;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px;image-rendering:pixelated;}
.totp-qr .btn{margin-top:0;}
.totp-qr-error{color:var(--led-red);font-size:.85rem;margin:0;}
.totp-secret-label{text-align:center;margin:16px 0 6px;}
.totp-secret-value{display:block;max-width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:6px;background:var(--bg-raised);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1rem;line-height:1.7;letter-spacing:.08em;text-align:center;overflow-wrap:anywhere;user-select:all;}
.totp-secret-warning{max-width:58ch;margin:12px auto 0;text-align:center;color:var(--led-red);}
.recovery-login{margin-top:14px;padding:16px 20px;}
.recovery-login summary{cursor:pointer;color:var(--ochre-hi);font-weight:600;}
.recovery-login form{margin-top:16px;}
.recovery-code-input{text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;letter-spacing:.08em;}
.security-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px;}
.security-status-grid>div{padding:14px;border:1px solid var(--line);border-radius:6px;background:var(--bg-raised);}
.security-status-grid strong,.security-status-grid span{display:block;}
.security-status-grid strong{font-family:'Inter',sans-serif;color:var(--ochre-hi);font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;}
.security-status-grid span{margin-top:4px;color:var(--text-dim);font-size:.85rem;}
.security-totp-form{max-width:460px;margin-top:18px;}
.recovery-codes{columns:2;column-gap:22px;list-style:none;margin:16px 0;padding:18px;border:1px solid var(--line);border-radius:6px;background:var(--bg-raised);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1rem;line-height:1.8;letter-spacing:.08em;white-space:pre-wrap;text-align:center;user-select:all;}
.recovery-codes-download{margin-top:12px;}
@media(max-width:620px){
  .security-status-grid{grid-template-columns:1fr;}
  .recovery-codes{columns:1;}
}

/* Admin bejegyzés-lista */
.admin-post-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid var(--line);
  background:var(--bg-raised);
  border-radius:4px;
  padding:14px 16px;
  margin-bottom:10px;
  flex-wrap:wrap;
}
.admin-post-row .info{flex:1;min-width:180px;}
.admin-post-row .info .title{font-weight:600;color:var(--text);}
.admin-post-row .info .date{font-size:.8rem;color:var(--text-dim);}
.admin-post-row .actions{display:flex;gap:8px;}
.admin-post-row .actions a, .admin-post-row .actions button{
  font-size:.82rem;padding:7px 14px;margin-top:0;
}

.thumb-row-small{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap;}
.thumb-row-small img{width:44px;height:44px;object-fit:cover;border-radius:3px;border:1px solid var(--line);}
.thumb-remove{
  display:flex;flex-direction:column;align-items:center;gap:3px;font-size:.7rem;color:var(--text-dim);
}
.thumb-remove input{margin:0;}

/* Admin: kép beszúrása a szövegbe */
.insert-image-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:8px;
}
.insert-image-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:5px;
  border:1px solid var(--line);
  background:var(--bg-raised);
  border-radius:5px;
  padding:8px;
}
.insert-image-item img{
  width:72px;height:72px;object-fit:cover;border-radius:4px;border:1px solid var(--line);
}
.insert-image-item button{
  appearance:none;
  border:1px solid var(--ochre);
  background:transparent;
  color:var(--ochre-hi);
  border-radius:4px;
  padding:4px 10px;
  font-family:'Inter',sans-serif;
  font-size:.72rem;
  font-weight:600;
  cursor:pointer;
}
.insert-image-item button:hover{background:var(--ochre);color:#FFFFFF;}
.form-help{
  font-size:.82rem;
  color:var(--text-dim);
  margin:8px 0 0;
  line-height:1.55;
}
.form-help code{
  background:var(--bg-raised);
  border:1px solid var(--line);
  border-radius:3px;
  padding:1px 5px;
  font-size:.78rem;
}
.image-dropzone{
  margin-top:8px;padding:24px 18px;border:2px dashed var(--line);border-radius:8px;
  background:var(--bg-raised);display:flex;flex-direction:column;align-items:center;text-align:center;
  gap:4px;cursor:pointer;text-transform:none;letter-spacing:0;transition:border-color .15s ease,background .15s ease;
}
.image-dropzone:hover,.image-dropzone.is-dragging,.image-dropzone.has-files{border-color:var(--ochre);background:rgba(192,141,16,.06);}
.image-dropzone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;}
.image-dropzone strong{font-family:'Inter',sans-serif;font-size:.94rem;color:var(--text);}
.image-dropzone small{font-family:'Inter',sans-serif;font-size:.78rem;color:var(--text-dim);}
.image-drop-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ochre);color:#fff;font-size:1.4rem;line-height:1;margin-bottom:4px;}
.image-preview{display:flex;flex-wrap:wrap;gap:9px;margin-top:10px;}
.image-preview-item{width:92px;padding:6px;border:1px solid var(--line);border-radius:5px;background:var(--bg-panel);}
.image-preview-item img{width:78px;height:64px;object-fit:cover;border-radius:3px;}
.image-preview-item span{display:block;margin-top:4px;font-size:.68rem;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

footer{border-top:1px solid var(--line);padding:20px 0;font-size:.85rem;color:var(--text-dim);}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;}
.site-footer-owner{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;}
.site-footer-legal{display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px;}
.site-footer-legal a{color:var(--text-dim);text-decoration:none;}
.site-footer-legal a:hover,.site-footer-legal a:focus-visible{color:var(--ochre-hi);text-decoration:underline;text-underline-offset:3px;}

/* Jogi oldalak – egyszerű, jól olvasható szöveges elrendezés. */
.legal-shell{max-width:760px;margin:0 auto;}
.legal-updated{color:var(--text-dim);font-size:.84rem;margin:0 0 28px;}
.legal-draft{
  margin:0 0 30px;padding:16px 18px;border:1px solid var(--danger);border-radius:6px;
  background:rgba(194,69,45,.06);color:var(--text);font-size:.9rem;
}
.legal-draft strong{display:block;color:var(--danger);margin-bottom:4px;}
.legal-draft code{font-size:.82rem;overflow-wrap:anywhere;}
.legal-section{margin:30px 0;padding-top:26px;border-top:1px solid var(--line);}
.legal-section h2{font-family:'Inter',sans-serif;font-size:1.24rem;color:var(--ochre-hi);margin-bottom:12px;}
.legal-section p{max-width:72ch;margin:0 0 14px;}
.legal-section a{color:var(--ochre-hi);text-underline-offset:3px;}
.legal-data{border:1px solid var(--line);border-radius:6px;background:var(--bg-panel);overflow:hidden;}
.legal-data>div{display:grid;grid-template-columns:minmax(155px,32%) 1fr;gap:16px;padding:11px 15px;border-bottom:1px solid var(--line);}
.legal-data>div:last-child{border-bottom:0;}
.legal-data dt{font-weight:600;color:var(--text-dim);}
.legal-data dd{overflow-wrap:anywhere;}
.legal-missing{color:var(--danger);font-style:italic;}
.legal-section h3{
  font-family:'Inter',sans-serif;font-size:1.02rem;color:var(--text);
  margin:22px 0 10px;
}
.legal-section h3:first-of-type{margin-top:16px;}
.legal-intro{max-width:72ch;margin:0 0 8px;}
.legal-list{margin:14px 0 14px 20px;max-width:72ch;}
.legal-list li{margin-bottom:8px;}
.legal-callout{
  max-width:72ch;margin:16px 0 0;padding:15px 17px;
  border:1px solid var(--ochre);border-radius:6px;background:rgba(192,141,16,.07);
}
/* Tartalomjegyzék – hosszú jogi dokumentumnál mobilon is nélkülözhetetlen. */
.legal-toc{
  margin:24px 0 8px;padding:16px 18px;
  border:1px solid var(--line);border-radius:6px;background:var(--bg-panel);
}
.legal-toc strong{
  display:block;font-family:'Inter',sans-serif;font-size:.78rem;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;color:var(--ochre);margin-bottom:10px;
}
.legal-toc ol{margin:0;padding-left:22px;columns:2;column-gap:26px;}
.legal-toc li{margin-bottom:5px;break-inside:avoid;font-size:.9rem;}
.legal-toc a{color:var(--text);text-decoration:none;text-underline-offset:3px;}
.legal-toc a:hover,.legal-toc a:focus-visible{color:var(--ochre-hi);text-decoration:underline;}
@media(max-width:620px){
  .legal-toc ol{columns:1;}
  .legal-section h2{font-size:1.14rem;}
  .legal-callout{padding:14px 15px;}
}
.legal-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:38px;padding-top:22px;border-top:1px solid var(--line);}
.legal-links a{color:var(--ochre-hi);text-underline-offset:3px;}

@media(max-width:560px){
  .legal-data>div{grid-template-columns:1fr;gap:2px;}
  .legal-links{flex-direction:column;align-items:flex-start;}
}

.topbar-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:12px;}

/* Önálló szolgáltatásoldalak */
.service-shell{max-width:780px;margin:0 auto;}
.breadcrumbs{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--text-dim);font-size:.82rem;margin:-10px 0 20px;}
.breadcrumbs a{color:var(--ochre-hi);text-decoration:none;}
.breadcrumbs a:hover{text-decoration:underline;}
.service-hero{
  height:clamp(170px,34vw,280px);margin:0 0 28px;border-radius:8px;
  position:relative;overflow:hidden;
  border:1px solid var(--line);
}
.service-hero img{width:100%;height:100%;object-fit:cover;object-position:center;}
.service-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(34,48,60,.24));}
.service-lead{font-size:1.05rem;max-width:68ch;}
/* Képernyoolvasónak megmaradó, vizuálisan rejtett elem (pl. a Bemutatkozás
   oldal h1-e, amely a megrendelo kérésére nem jelenik meg). */
.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.service-section{margin:30px 0;padding-top:26px;border-top:1px solid var(--line);}
.service-section h2{
  font-family:'Inter',sans-serif;font-size:1.3rem;color:var(--ochre-hi);margin-bottom:12px;
}
.service-section p{max-width:70ch;margin-bottom:16px;}
.check-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:18px 0 0;}
.check-list li{position:relative;padding-left:25px;color:var(--text);}
.check-list li::before{content:"✓";position:absolute;left:0;top:0;color:var(--ok);font-weight:700;}
/* Folytatásos felsorolás (nem vállalás-lista): egy hasáb, diszkrét gondolatjel.
   Itt a pipa félrevezeto lenne, mert a pontok a mondat folytatásai. */
.doc-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:9px;}
.doc-list li{position:relative;padding-left:20px;max-width:70ch;}
.doc-list li::before{
  content:"";position:absolute;left:0;top:.68em;
  width:9px;height:2px;background:var(--ochre);
}
/* A felsorolás után következo, hozzá tartozó bekezdés. */
.service-after-list{max-width:70ch;margin:18px 0 0;}
/* ── Dokumentumból átvett hosszabb szolgáltatásszövegek ──────────────
   A tipográfia célja, hogy a szöveg mobilon is levegős és jól követhető
   legyen: rövid sorhossz, tiszta szakaszhatárok, kiemelt nyitómondatok. */
.service-subtitle{
  font-family:'Inter',sans-serif;font-weight:600;font-size:1.02rem;
  color:var(--ochre-hi);margin:-6px 0 14px;max-width:60ch;
}
/* Bevezető szakasz (nincs saját címe): ne tegyen fölé elválasztó vonalat. */
.service-section-intro{border-top:0;padding-top:0;margin-top:8px;}
/* Nagyobb tematikus váltás a lapon belül (pl. kamerák → érzékelők). */
.service-section-major{
  border-top:0;margin-top:44px;padding-top:26px;position:relative;
}
.service-section-major::before{
  content:"";position:absolute;top:0;left:0;width:56px;height:3px;background:var(--ochre);
}
.service-section-major h2{font-size:1.5rem;margin-bottom:14px;}

/* Indoklás-lista: kiemelt nyitómondat, alatta a kifejtés. */
.reason-list{list-style:none;counter-reset:ok;margin:20px 0 0;padding:0;display:grid;gap:14px;}
.reason-list li{
  counter-increment:ok;position:relative;
  border:1px solid var(--line);border-left:3px solid var(--ochre);border-radius:6px;
  background:var(--bg-panel);padding:15px 17px 15px 52px;
}
.reason-list li::before{
  content:counter(ok);position:absolute;left:16px;top:14px;
  font-family:'Inter',sans-serif;font-weight:700;font-size:1.05rem;
  color:var(--ochre-hi);line-height:1.25;
}
.reason-list strong{
  display:block;font-family:'Inter',sans-serif;font-weight:700;
  color:var(--ochre-hi);margin-bottom:6px;line-height:1.4;
}
.reason-list span{display:block;max-width:66ch;}

/* A felsorolás után álló magyarázó megjegyzés. */
.service-note{
  max-width:70ch;margin:18px 0 0;padding:12px 15px;
  border-left:3px solid var(--line);background:var(--bg-raised);
  color:var(--text-dim);font-size:.92rem;
}

/* Záró bekezdés(ek) a lap alján, kiemelve. */
/* Szándékosan NEM okker keretes: közvetlenül alatta áll a szintén okker
   keretes ajánlatkérő doboz, két egyforma doboz egymás alatt zajos lenne. */
.service-closing{
  margin:36px 0 0;padding:20px 22px;
  border:1px solid var(--line);border-left:3px solid var(--ochre);
  border-radius:8px;background:var(--bg-panel);
}
.service-closing p{max-width:68ch;margin:0 0 12px;}
.service-closing p:last-of-type{margin-bottom:0;}
.service-closing .btn{margin-top:14px;}

/* Bemutatkozás: a h1 a köszöntés + a bemutatkozó mondat. Szándékosan
   visszafogott – ez egy megszólítás, nem plakátcím. */
h1.about-h1{
  font-size:1rem;font-weight:400;line-height:1.65;
  margin:0 0 26px;max-width:62ch;
}
.about-h1-greeting{
  display:block;font-weight:700;font-size:clamp(1.45rem,3.4vw,1.85rem);
  line-height:1.25;color:var(--ochre-hi);margin-bottom:10px;
}
.about-h1-intro{display:block;font-size:1.05rem;color:var(--text);}
.content-signature-block{
  margin-top:30px;padding-top:20px;border-top:1px solid var(--line);
}
.content-roles{
  list-style:none;margin:6px 0 0;padding:0;
  color:var(--text-dim);font-size:.92rem;line-height:1.7;
}

@media(max-width:620px){
  .service-subtitle{font-size:.98rem;}
  .service-section-major{margin-top:34px;}
  .service-section-major h2{font-size:1.3rem;}
  .reason-list li{padding:14px 15px 14px 15px;}
  .reason-list li::before{
    position:static;display:block;margin-bottom:2px;font-size:.8rem;
    letter-spacing:.12em;
  }
  .service-closing{padding:17px 16px;}
  .service-closing .btn{width:100%;text-align:center;}
}

.service-cta{
  display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;
  margin:38px 0;padding:22px 24px;border:1px solid var(--ochre);border-radius:8px;background:rgba(192,141,16,.07);
}
.service-cta strong{display:block;font-family:'Inter',sans-serif;font-size:1.05rem;color:var(--ochre-hi);}
.service-cta span{display:block;color:var(--text-dim);font-size:.86rem;margin-top:2px;}
.service-cta-actions{display:flex;gap:8px;flex-wrap:wrap;}
.service-cta .btn{margin-top:0;}
/* Kapcsolódó szolgáltatások: szándékosan NEM doboz és nem rács, hanem egy
   halk, egybefüggo szövegsor a lap legalján. A kulcsszavas horgonyszövegek
   és a belso linkháló megmarad, de vizuálisan alig vesz el helyet. */
.related-inline{
  margin:26px 0 0;padding-top:14px;border-top:1px solid var(--line);
  font-size:.82rem;line-height:2;color:var(--text-dim);
}
.related-inline-label{margin-right:.35em;}
.related-inline a{color:var(--ochre-hi);text-decoration:none;}
.related-inline a:hover,.related-inline a:focus-visible{text-decoration:underline;}
.related-inline-sep{color:var(--line);margin:0 .5em;}

/* Élő érkezéskövetés – könnyű, lineáris tartalmi oldal. Az elrendezés
   szándékosan a meglévő szolgáltatásoldalak tipográfiáját követi, új
   kártyarendszer vagy külön JavaScript nélkül. */
.arrival-shell{max-width:780px;}
.arrival-facts{
  display:flex;flex-wrap:wrap;align-items:center;gap:9px 26px;
  list-style:none;margin:26px 0 8px;padding:0;
}
.arrival-facts li{
  padding:0;color:var(--text-dim);font-size:.86rem;font-weight:600;
}
.arrival-note{
  max-width:70ch;margin:20px 0 0;padding:13px 16px;
  border-left:3px solid var(--ochre);background:rgba(192,141,16,.06);
  color:var(--text-dim);font-size:.9rem;
}
.arrival-check-list{margin-bottom:20px;}
.arrival-text-link{color:var(--ochre-hi);font-weight:600;text-underline-offset:3px;}

/* A nyitólapi árlista ugyanabból az admin-adatból az önálló oldalon. */
.price-page>.price-intro{color:var(--text-dim);}
.price-page .price-section{margin:0 0 30px;}
.price-page .price-section h3{
  font-family:'Inter',sans-serif;font-size:.8rem;font-weight:600;letter-spacing:.12em;
  text-transform:uppercase;color:var(--ochre);margin-bottom:12px;display:flex;align-items:center;gap:9px;
}
.price-page .price-section h3::before{content:"";width:20px;height:2px;background:var(--ochre);}
.price-page .price-section-note{color:var(--text-dim);font-size:.86rem;margin:-4px 0 14px;}
.price-page .price-subhead{font-weight:600;font-size:.94rem;margin:20px 0 8px;}
.price-page .price-list{border:1px solid var(--line);background:var(--bg-panel);border-radius:6px;overflow:hidden;}
.price-page .price-row{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 16px;padding:11px 15px;border-bottom:1px solid var(--line);font-size:.93rem;}
.price-page .price-row:last-child{border-bottom:0;}
.price-page .price{font-family:'Inter',sans-serif;font-weight:700;color:var(--ochre-hi);white-space:nowrap;}
.price-page .price-note{padding:9px 15px;color:var(--text-dim);font-size:.82rem;font-style:italic;background:var(--bg-raised);border-bottom:1px solid var(--line);}
.price-page .price-highlight{margin:0 0 25px;padding:17px 18px;border:1px solid var(--ochre);border-radius:6px;background:rgba(192,141,16,.07);}
.price-page .price-contact a{color:var(--ochre-hi);font-weight:600;}

/* A főoldali csempék önálló Bemutatkozás, Kapcsolat és GYIK oldalai. */
.content-page{width:100%;min-width:0;}
.about-copy p{max-width:70ch;margin-bottom:18px;}
.content-signature{
  margin-top:26px!important;font-family:'Inter',sans-serif;
  font-weight:700;font-size:1.08rem;color:var(--ochre-hi);
}

.faq-page .faq-list{display:flex;flex-direction:column;gap:10px;}
.faq-page .faq-item{
  border:1px solid var(--line);border-radius:6px;background:var(--bg-panel);overflow:hidden;
}
.faq-page .faq-q{
  cursor:pointer;padding:13px 16px;font-family:'Inter',sans-serif;
  font-weight:600;font-size:.98rem;color:var(--text);list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:12px;
}
.faq-page .faq-q::-webkit-details-marker{display:none;}
.faq-page .faq-q::after{
  content:"+";font-weight:600;color:var(--ochre);font-size:1.25rem;
  line-height:1;flex-shrink:0;transition:transform .2s ease;
}
.faq-page .faq-item[open] .faq-q{border-bottom:1px solid var(--line);color:var(--ochre-hi);}
.faq-page .faq-item[open] .faq-q::after{transform:rotate(45deg);}
.faq-page .faq-a{padding:13px 16px 2px;}
.faq-page .faq-a p{margin-bottom:12px;}

.contact-direct{display:flex;flex-wrap:wrap;justify-content:center;gap:10px clamp(26px,5vw,46px);align-items:center;}
.contact-direct a{
  color:var(--text);text-decoration:none;font-weight:600;
  border-bottom:1px solid var(--ochre);padding-bottom:2px;
}
.contact-direct a:hover,.contact-direct a:focus-visible{color:var(--ochre-hi);}
.contact-details-bottom{margin-bottom:0;}
.contact-availability{margin:15px 0 0!important;color:var(--text-dim);font-size:.82rem;text-align:center;}
.contact-page-socials{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:28px;}
.contact-page-socials .social-btn{
  width:38px;height:38px;border-radius:50%;border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;text-decoration:none;flex:0 0 38px;
  color:var(--text-dim);transition:border-color .15s ease,color .15s ease,transform .15s ease;
}
.contact-page-socials .social-btn svg{
  width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round;
}
.contact-page-socials .social-fb{color:#1877F2;}
.contact-page-socials .social-wa{color:#25D366;}
.contact-page-socials .social-google{color:#4285F4;}
.contact-page-socials .social-google svg{stroke:none;}
.contact-page-socials .social-btn:focus-visible{
  outline:2px solid currentColor;outline-offset:2px;border-color:currentColor;transform:translateY(-2px);
}
@media(hover:hover) and (pointer:fine){
  .contact-page-socials .social-btn:hover{border-color:currentColor;transform:translateY(-2px);}
}
.contact-area{margin:17px 0 0!important;color:var(--text-dim);font-size:.9rem;text-align:center;}
.contact-page-form{max-width:700px;margin-top:16px;}
.contact-page-form .form-honeypot{
  position:absolute;left:-9999px;top:-9999px;height:0;width:0;overflow:hidden;
}
.contact-page-form .form-row{display:flex;gap:16px;flex-wrap:wrap;}
.contact-page-form .form-row .form-group{flex:1 1 220px;}
.contact-page-form .form-group{margin-bottom:16px;}
.contact-page-form .form-group>label{
  display:block;font-size:.82rem;color:var(--text-dim);margin-bottom:6px;font-weight:600;
}
.contact-page-form .form-group input:not([type="checkbox"]),
.contact-page-form .form-group textarea{
  width:100%;background:var(--bg-raised);border:1px solid var(--line);border-radius:5px;
  color:var(--text);font-family:'Inter',sans-serif;font-size:.95rem;padding:10px 12px;
}
.contact-page-form .form-group textarea{resize:vertical;min-height:120px;}
.contact-page-form .form-group input:focus,
.contact-page-form .form-group textarea:focus{outline:2px solid var(--ochre);outline-offset:1px;border-color:var(--ochre);}
.contact-page-form .form-group input[type="file"]{font-size:.84rem;color:var(--text-dim);padding:8px 10px;}
.contact-page-form .form-group input[type="file"]::file-selector-button{
  background:var(--bg-panel);border:1px solid var(--ochre);color:var(--ochre-hi);
  border-radius:4px;padding:6px 11px;margin-right:10px;cursor:pointer;
  font-family:'Inter',sans-serif;font-weight:600;font-size:.8rem;
}
.contact-page-form .form-consent{margin:2px 0 10px;}
.contact-page-form .consent-label{
  display:flex;align-items:flex-start;gap:0;font-size:.86rem;color:var(--text);cursor:pointer;line-height:1.5;
}
.contact-page-form .consent-label input{width:17px;height:17px;flex-shrink:0;margin:2px 0 0;accent-color:var(--ochre);}
.contact-page-form .consent-label>span{display:block;margin-left:8px;margin-inline-start:8px;}
.contact-page-form .consent-label a{color:var(--ochre-hi);text-underline-offset:2px;}
.contact-page-form .form-hint{font-size:.8rem;color:var(--text-dim);margin:-2px 0 16px;}
.contact-page-form .form-submit{
  font-family:'Inter',sans-serif;font-weight:700;background:var(--ochre);
  border:1px solid var(--ochre);color:#fff;padding:10px 22px;border-radius:5px;cursor:pointer;
}
.contact-page-form .form-submit:hover{background:var(--ochre-hi);border-color:var(--ochre-hi);}
.contact-page-form .form-submit:disabled{opacity:.6;cursor:wait;}
.contact-page-form .form-status{min-height:1.4em;margin:12px 0 0;font-size:.88rem;}
.contact-page-form .form-status.is-sending{color:var(--text-dim);}
.contact-page-form .form-status.is-success{color:var(--ok);font-weight:600;}
.contact-page-form .form-status.is-error{color:var(--danger);}
.contact-page-form .form-status.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.contact-page-form .form-fields{position:relative;min-height:80px;}
.contact-page-form .form-fields-inner{transform-origin:center top;}
.contact-page-form .form-envelope-icon,
.contact-page-form .form-sent-message{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  opacity:0;pointer-events:none;
}
.contact-page-form .form-envelope-icon svg{width:110px;height:110px;color:var(--ochre-hi);}
.contact-page-form .form-sent-message{
  font-family:'Inter',sans-serif;font-size:clamp(1.75rem,5vw,2.1rem);font-weight:700;
  line-height:1.25;letter-spacing:.02em;color:var(--ochre-hi);text-align:center;padding:0 16px;
}
.contact-page-form .form-fields.is-sent .form-fields-inner{animation:villcamContactCollapse .45s ease-in forwards;}
.contact-page-form .form-fields.is-sent .form-envelope-icon{animation:villcamContactEnvelopeFly 1.3s ease-in forwards .15s;}
.contact-page-form .form-fields.is-sent .form-sent-message{animation:villcamContactSentAppear .5s ease-out forwards 1.35s;}
@keyframes villcamContactCollapse{
  0%{opacity:1;transform:scale(1);}
  100%{opacity:0;transform:scale(.82);visibility:hidden;}
}
@keyframes villcamContactEnvelopeFly{
  0%{opacity:0;transform:translateY(40px) scale(.65) rotate(-8deg);}
  20%{opacity:1;transform:translateY(0) scale(1) rotate(0);}
  72%{opacity:1;transform:translateY(-18px) scale(.92) rotate(5deg);}
  100%{opacity:0;transform:translate(115px,-95px) scale(.38) rotate(16deg);}
}
@keyframes villcamContactSentAppear{
  0%{opacity:0;transform:translateY(10px);}
  100%{opacity:1;transform:translateY(0);}
}
.contact-page-form .form-file-info{font-size:.8rem;color:var(--text-dim);margin:6px 0 0;min-height:1.1em;}
.contact-page-form .form-file-info.has-file{color:var(--ochre-hi);}
.contact-page-form .form-file-remove{
  background:none;border:0;color:var(--danger);text-decoration:underline;
  cursor:pointer;font:inherit;font-size:.8rem;margin-left:6px;
}

@media(max-width:620px){
  .check-list{grid-template-columns:1fr;}
  .service-cta{align-items:flex-start;}
  .service-cta-actions{width:100%;}
  .service-cta-actions .btn{flex:1 1 100%;}
  .arrival-facts{gap:7px 20px;}
  .contact-page-form .form-row{display:block;}
  .contact-page-form .form-group input:not([type="checkbox"]),
  .contact-page-form .form-group textarea{font-size:16px;}
  .contact-direct{align-items:center;justify-content:center;gap:9px 24px;}
  .contact-page-socials{margin-top:24px;}
  footer .wrap,.site-footer-owner{align-items:flex-start;flex-direction:column;}
  .site-footer-legal{align-items:flex-start;flex-direction:column;}
}
@media(prefers-reduced-motion:reduce){
  .contact-page-form .form-fields.is-sent .form-fields-inner{animation:none;opacity:0;visibility:hidden;}
  .contact-page-form .form-fields.is-sent .form-envelope-icon{animation:none;}
  .contact-page-form .form-fields.is-sent .form-sent-message{animation:none;opacity:1;}
}
.admin-logout-form{display:inline-flex;margin:0}
.footer-back-link{color:var(--text-dim);text-decoration:none}
#admin-trigger{cursor:default}

/* Admin – funkcióellenőrzés */
.system-check-intro{max-width:760px;}
.system-check-intro .form-help{max-width:68ch;}
.system-check-last{margin-top:14px;color:var(--text-dim);font-size:.9rem;}
.system-check-run-form{margin-top:18px;}
.system-check-run-form .btn{margin-top:0;}
.system-check-results{margin-bottom:28px;}
.system-check-summary{
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  margin-bottom:14px;
}
.system-check-summary h2{font-family:'Inter',sans-serif;font-size:1.12rem;color:var(--text);}
.system-check-counts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;}
.system-check-counts span{
  border:1px solid var(--line);border-radius:999px;padding:4px 9px;
  font-size:.78rem;font-weight:600;white-space:nowrap;
}
.system-check-counts .is-ok{border-color:rgba(46,125,79,.45);color:var(--ok);background:rgba(46,125,79,.08);}
.system-check-counts .is-warning{border-color:rgba(192,141,16,.55);color:var(--ochre-hi);background:rgba(192,141,16,.10);}
.system-check-counts .is-critical{border-color:rgba(194,69,45,.45);color:var(--danger);background:rgba(194,69,45,.08);}
.system-check-list{display:grid;gap:10px;}
.system-check-item{
  display:grid;grid-template-columns:10px minmax(0,1fr);gap:13px;
  border:1px solid var(--line);border-radius:6px;background:var(--bg-panel);padding:15px 16px;
}
.system-check-indicator{width:10px;height:10px;border-radius:50%;margin-top:7px;background:var(--text-dim);}
.system-check-item h3{font-family:'Inter',sans-serif;font-size:.96rem;color:var(--text);margin:0 0 3px;}
.system-check-item p{color:var(--text-dim);font-size:.88rem;line-height:1.55;margin:0;}
.system-check-item .system-check-action{margin-top:7px;color:var(--text);}
.system-check-item.level-ok{border-left:3px solid var(--ok);}
.system-check-item.level-ok .system-check-indicator{background:var(--ok);}
.system-check-item.level-warning{border-left:3px solid var(--ochre);}
.system-check-item.level-warning .system-check-indicator{background:var(--ochre);}
.system-check-item.level-critical{border-left:3px solid var(--danger);}
.system-check-item.level-critical .system-check-indicator{background:var(--danger);}
.system-check-item.level-info{border-left:3px solid var(--text-dim);}
.system-check-repair{border-color:rgba(192,141,16,.62);}
.system-check-repair .form-help{max-width:68ch;}
@media(max-width:620px){
  .system-check-summary{display:block;}
  .system-check-counts{justify-content:flex-start;margin-top:10px;}
}
