
.evc-shell{max-width:var(--evc-card-width,560px);margin:30px auto;border-radius:34px;overflow:hidden;background:var(--evc-bg);box-shadow:0 18px 60px rgba(16,31,50,.18);color:var(--evc-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.evc-top{text-align:center;padding:42px 28px 28px}
.evc-photo{width:220px;height:220px;border-radius:50%;object-fit:cover;border:6px solid rgba(255,255,255,.88);box-shadow:0 8px 28px rgba(16,31,50,.12)}
.evc-initials{display:flex;align-items:center;justify-content:center;margin:auto;background:#cfd5e4;font-size:74px;font-weight:600}
.evc-job{margin-top:20px;font-weight:700;font-size:24px;text-transform:uppercase;letter-spacing:.01em}
.evc-company{font-size:20px;font-weight:600;margin-top:3px}
.evc-intro{font-size:15px;margin:10px 0;color:#4b5870}
.evc-name{font-size:50px;line-height:1.05;margin:12px 0 20px;color:var(--evc-heading);text-shadow:0 2px 8px rgba(0,0,0,.08)}
.evc-actions{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}
.evc-actions a{width:96px;height:76px;border-radius:50px;background:rgba(255,255,255,.72);display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:var(--evc-primary);font-size:24px;font-weight:800}
.evc-actions a span{font-size:11px;margin-top:4px;font-weight:700}
.evc-panel{margin:14px 28px;background:color-mix(in srgb,var(--evc-panel) 88%,transparent);border-radius:26px;padding:8px 22px;backdrop-filter:blur(14px)}
.evc-row{padding:15px 0;border-bottom:1px solid rgba(16,31,50,.12)}
.evc-row:last-child{border-bottom:none}
.evc-row small,.evc-social-row small{display:block;color:color-mix(in srgb,var(--evc-text) 60%,transparent);font-size:13px}
.evc-row strong,.evc-social-row strong{display:block;font-size:20px;line-height:1.3}
.evc-row a,.evc-social-row{text-decoration:none;color:var(--evc-primary)}
.evc-social-row{display:grid;grid-template-columns:44px 1fr 24px;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(16,31,50,.12)}
.evc-social-row:last-child{border-bottom:none}
.evc-social-icon{width:40px;height:40px;border-radius:50%;background:var(--evc-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}
.evc-social-row b{font-size:30px;color:#69748b}
.evc-qr-wrap{margin:14px 28px 28px;padding:20px 22px;background:color-mix(in srgb,var(--evc-panel) 88%,transparent);border-radius:26px;display:flex;gap:20px;align-items:center;justify-content:space-between}
.evc-qr-wrap p{margin:5px 0 12px;color:color-mix(in srgb,var(--evc-text) 65%,transparent)}
.evc-vcard-btn{display:inline-block;background:var(--evc-primary);color:#fff;text-decoration:none;padding:10px 16px;border-radius:999px;font-weight:700}



@media(max-width:640px){
 .evc-shell{margin:0;border-radius:0;min-height:100vh}
 .evc-top{padding:28px 18px 20px}
 .evc-photo{width:170px;height:170px}
 .evc-job{font-size:18px}
 .evc-company{font-size:16px}
 .evc-name{font-size:42px}
 .evc-panel,.evc-qr-wrap{margin-left:14px;margin-right:14px}
 .evc-row strong,.evc-social-row strong{font-size:16px;word-break:break-word}
 .evc-qr-wrap{flex-direction:column;text-align:center}
}

.evc-export-buttons{display:flex;gap:8px;flex-wrap:wrap}.evc-vcard-btn{border:0;cursor:pointer;font-family:inherit}

.evc-text-stack{display:flex;flex-direction:column;align-items:center}
.evc-text-stack .evc-job,.evc-text-stack .evc-company,.evc-text-stack .evc-intro,.evc-text-stack .evc-name{width:100%}

/* v1.5 typography ordering */
.evc-text-stack{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
}
.evc-text-stack>.evc-job,
.evc-text-stack>.evc-company,
.evc-text-stack>.evc-intro,
.evc-text-stack>.evc-name{
  width:100%!important;
  box-sizing:border-box;
}

/* v1.6: qrcodejs duplicate guard */



.evc-qr-wrap>div:first-child p{max-width:430px}
@media(max-width:640px){
  
  .evc-qr{min-width:240px}
}


/* =========================================================
   v1.8 – eindeutiges Farbsystem
   Jede Variable steuert nur noch den benannten Bereich.
   ========================================================= */
.evc-shell{
  background:var(--evc-bg)!important;
  color:var(--evc-top-text)!important;
}
.evc-photo{border-color:var(--evc-panel)!important}
.evc-job,.evc-company{color:var(--evc-top-text)!important}
.evc-intro{color:var(--evc-intro)!important}
.evc-name{color:var(--evc-name)!important}

.evc-actions a{
  background:var(--evc-button-bg)!important;
  color:var(--evc-button-text)!important;
}
.evc-actions a span{color:var(--evc-button-text)!important}

.evc-panel,.evc-qr-wrap{
  background:var(--evc-panel)!important;
  color:var(--evc-panel-text)!important;
}
.evc-row small,.evc-social-row small,.evc-qr-wrap p{
  color:var(--evc-label)!important;
}
.evc-row strong,.evc-social-row strong,.evc-qr-wrap strong{
  color:var(--evc-panel-text)!important;
}
.evc-row a,.evc-social-row{
  color:var(--evc-panel-text)!important;
}
.evc-row,.evc-social-row{
  border-bottom-color:color-mix(in srgb,var(--evc-label) 24%,transparent)!important;
}
.evc-social-icon{
  background:var(--evc-accent)!important;
  color:#fff!important;
}
.evc-social-row b{color:var(--evc-label)!important}
.evc-vcard-btn{
  background:var(--evc-accent)!important;
  color:var(--evc-button-text)!important;
}
.evc-qr{
  background:#fff!important;
}


/* =========================================================
   v1.9 – Abstände & Absatzformatierung
   ========================================================= */
.evc-text-stack>.evc-job,
.evc-text-stack>.evc-company,
.evc-text-stack>.evc-intro,
.evc-text-stack>.evc-name{
  margin-top:0!important;
  width:100%!important;
}
.evc-photo{margin-bottom:var(--evc-photo-gap,24px)!important}
.evc-actions{margin-top:var(--evc-actions-gap,20px)!important}


/* =========================================================
   v2.0 – serverseitiger QR-Code + einstellbare Kartengröße
   ========================================================= */
.evc-shell{
  width:calc(100% - 28px)!important;
  max-width:var(--evc-card-width,560px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.evc-qr-wrap{
  align-items:center!important;
}
.evc-qr-copy{
  flex:1 1 240px;
  min-width:0;
}
.evc-qr{
  flex:0 0 auto;
  width:calc(var(--evc-qr-size,180px) + 20px)!important;
  height:calc(var(--evc-qr-size,180px) + 20px)!important;
  min-width:0!important;
  padding:10px!important;
  box-sizing:border-box;
  background:#fff!important;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.evc-qr-image{
  display:block!important;
  width:var(--evc-qr-size,180px)!important;
  height:var(--evc-qr-size,180px)!important;
  max-width:none!important;
}
.evc-export-buttons .evc-vcard-btn{
  text-align:center;
}
@media(max-width:640px){
  .evc-shell{
    width:100%!important;
    max-width:100%!important;
  }
  .evc-qr-wrap{
    flex-direction:column!important;
  }
  .evc-qr{
    width:calc(var(--evc-qr-size,180px) + 20px)!important;
    height:calc(var(--evc-qr-size,180px) + 20px)!important;
  }
}


/* v2.1 – Tätigkeitsbeschreibung / Notizen */
.evc-notes-panel{
  text-align:left;
}
.evc-notes-panel>small{
  display:block;
  color:var(--evc-label)!important;
  font-size:13px;
  margin-bottom:8px;
}
.evc-notes-text{
  color:var(--evc-panel-text)!important;
  line-height:1.55;
  font-size:16px;
}
