.digital-card{padding:40px 18px}
.public-page .digital-card{min-height:100vh}
.public-error-message{margin:0;color:#b94141;font-size:13px}
.digital-card__surface{max-width:448px;padding:24px;border-radius:8px;overflow:visible}
.digital-card__banner{height:128px;border-radius:8px;margin:-8px 0 16px}
.digital-card__body{padding:0}
.digital-card__avatar,.digital-card__avatar--banner{display:block;width:144px;height:144px;border:0;border-radius:6px;margin:0 auto 16px}
.digital-card h1{font-size:24px;margin:0}
.digital-card__company,.digital-card__designation{font-size:18px;color:#6b7280;font-weight:400}
.digital-card__bio{color:#374151;margin:8px auto}
.digital-card__contact{margin:5px 0}
.digital-card__contact a{color:var(--card-text)}
.digital-card__socials{margin-top:16px;gap:5px;display:flex;flex-wrap:nowrap;justify-content:center;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding:2px}
.digital-card__socials::-webkit-scrollbar{display:none}
.digital-card__socials a{width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:color-mix(in srgb,var(--card-primary) 10%,white);font-size:18px;line-height:1;display:grid;place-items:center}
.digital-card__socials a:first-child{margin-left:auto}
.digital-card__socials a:last-child{margin-right:auto}
.digital-card__stack{display:grid;gap:16px;margin-top:24px}
.digital-card__stack>button,.digital-card__exchange button{width:100%;border:0;border-radius:6px;padding:9px 16px;background:var(--card-primary);color:var(--card-on-primary,#fff);cursor:pointer}
.digital-card__stack>button:hover,.digital-card__exchange button:hover{background:var(--card-accent)}
.digital-card__exchange{padding:24px;background:#f9fafb;border-radius:8px;box-shadow:0 8px 22px rgba(15,23,42,.12)}
.digital-card__exchange h3{margin:0 0 10px;color:#374151}
.digital-card__exchange form{display:grid;gap:8px}
.digital-card__exchange input,.digital-card__exchange textarea{border:1px solid #d1d5db;border-radius:6px;padding:9px;background:#fff}
.digital-card__links{margin-top:24px}
.digital-card__links:before{content:'Important Links';display:block;font-size:18px;font-weight:650;margin-bottom:8px}
.digital-card__links:empty:before{display:none}
.digital-card__links a{border-radius:6px}
.digital-card__links a i{margin-right:6px}
.digital-card__footer{font-size:12px;color:#6b7280;margin-top:24px}
.digital-card__footer a{color:var(--card-primary)}
.digital-card__modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:rgba(0,0,0,.5);padding:20px}
.digital-card__modal>div{width:288px;background:#fff;border-radius:8px;padding:24px;color:#374151;text-align:center}
.digital-card__modal button{margin-top:14px;border:0;background:none;color:var(--card-primary);text-decoration:underline;cursor:pointer}
.digital-card__modal [data-qr-code]{display:flex;justify-content:center}
.digital-card__modal[hidden],.digital-card__exchange[hidden]{display:none!important}
.preview-device .digital-card{padding:18px 10px}
.preview-device .digital-card__surface{padding:18px}
.preview-device .digital-card__modal{position:absolute}
.nfc-section{gap:12px}
.nfc-icon{font-size:64px}
.nfc-section--website .nfc-icon,.nfc-section--custom .nfc-icon{color:#000}
.nfc-section--linkedin .nfc-icon{color:#0a66c2}
.nfc-section--facebook .nfc-icon{color:#1877f2}
.nfc-section--whatsapp .nfc-icon{color:#25d366}
.nfc-section--instagram .nfc-icon{color:#e4405f}
.nfc-section--snapchat .nfc-icon{color:#d6c900}
.nfc-section--tiktok .nfc-icon{color:#010101}
.nfc-section--google .nfc-icon{color:#4285f4}
.nfc-section--google_reviews .nfc-icon{color:#f59e0b}
.nfc-section--google_direction .nfc-icon{color:#16a34a}
@media(max-width:580px){.digital-card__socials{gap:4px;justify-content:flex-start}.digital-card__socials a{width:30px;height:30px;flex-basis:30px;border-radius:8px;font-size:16px}}

/* Edge Cover Style (template_22): full-bleed profile photo, left-aligned caption content, edge-to-edge buttons. */
.digital-card--edge{padding:0}
.digital-card--edge .digital-card__surface{max-width:520px;padding:0;border-radius:0;box-shadow:none;text-align:left;overflow:hidden}
.digital-card--edge .digital-card__body{padding:0 20px 32px}
.digital-card--edge .digital-card__avatar{width:calc(100% + 40px);height:auto;aspect-ratio:4/5;display:block;border:0;border-radius:0;margin:0 -20px 22px;object-fit:cover}
.digital-card--edge h1,.digital-card--edge .digital-card__company,.digital-card--edge .digital-card__designation,.digital-card--edge .digital-card__bio,.digital-card--edge .digital-card__contact{text-align:left;margin-left:0;margin-right:0}
.digital-card--edge .digital-card__socials{justify-content:flex-start;margin-left:0}
.digital-card--edge .digital-card__socials a:first-child,.digital-card--edge .digital-card__socials a:last-child{margin:0}
.digital-card--edge .digital-card__stack{margin:24px -20px 0;width:calc(100% + 40px)}
.digital-card--edge .digital-card__stack>button,.digital-card--edge .digital-card__exchange button{border-radius:0}
.digital-card--edge .digital-card__exchange{border-radius:0;margin:0 -20px;width:calc(100% + 40px)}
.digital-card--edge .digital-card__links{margin:24px -20px 0;width:calc(100% + 40px)}
.digital-card--edge .digital-card__links a{border-radius:0}
.digital-card--edge .digital-card__footer{text-align:left}
.preview-device .digital-card--edge .digital-card__avatar{aspect-ratio:1/1}
@media(max-width:580px){.digital-card--edge .digital-card__surface{max-width:none;margin:0}}

/* Themed cards (profile.theme): every value comes from a whitelisted theme, cards without one never match these rules. */
.digital-card--themed{background:color-mix(in srgb,var(--card-bg) 94%,var(--card-text));--card-muted:color-mix(in srgb,var(--card-text) 68%,var(--card-bg));--card-r:12px;--card-pad:24px;--card-gap:16px;--card-scale:1;--card-photo:144px;--card-photo-r:18%;--card-btn-r:6px}
.digital-card--themed .digital-card__surface{background:var(--card-bg);color:var(--card-text);border-radius:var(--card-r);padding:var(--card-pad);font-size:calc(16px*var(--card-scale))}
.digital-card--themed .digital-card__banner{border-radius:var(--card-r)}
.digital-card--themed h1{font-family:var(--card-font-heading);font-size:calc(24px*var(--card-scale))}
.digital-card--themed .digital-card__company{font-size:calc(18px*var(--card-scale));color:var(--card-primary);font-weight:600}
.digital-card--themed .digital-card__designation{font-size:calc(18px*var(--card-scale));color:var(--card-muted)}
.digital-card--themed .digital-card__bio,.digital-card--themed .digital-card__footer,.digital-card--themed .digital-card__links:before{color:var(--card-muted)}
.digital-card--themed .digital-card__links:before{color:var(--card-text)}
.digital-card--themed .digital-card__avatar,.digital-card--themed .digital-card__avatar--banner{width:var(--card-photo);height:var(--card-photo);border-radius:var(--card-photo-r)}
.digital-card--themed .digital-card__socials a{background:color-mix(in srgb,var(--card-primary) 12%,var(--card-bg));color:var(--card-primary);border-radius:var(--card-btn-r)}
.digital-card--themed .digital-card__stack{gap:var(--card-gap)}
.digital-card--themed .digital-card__links{gap:calc(var(--card-gap)/2)}
.digital-card--themed .digital-card__stack>button,.digital-card--themed .digital-card__exchange button,.digital-card--themed .digital-card__links a{border-radius:var(--card-btn-r);background:var(--card-btn);color:var(--card-on-btn);border:2px solid var(--card-btn)}
.digital-card--themed.t-btn-outline .digital-card__stack>button,.digital-card--themed.t-btn-outline .digital-card__exchange button,.digital-card--themed.t-btn-outline .digital-card__links a{background:transparent;color:var(--card-btn)}
.digital-card--themed.t-btn-soft .digital-card__stack>button,.digital-card--themed.t-btn-soft .digital-card__exchange button,.digital-card--themed.t-btn-soft .digital-card__links a{background:color-mix(in srgb,var(--card-btn) 14%,var(--card-bg));color:var(--card-btn);border-color:transparent}
.digital-card--themed .digital-card__stack>button:hover,.digital-card--themed .digital-card__exchange button:hover{background:var(--card-accent);border-color:var(--card-accent);color:#fff}
.digital-card--themed .digital-card__exchange{background:color-mix(in srgb,var(--card-bg) 94%,var(--card-text));border-radius:var(--card-r)}
.digital-card--themed .digital-card__exchange h3{color:var(--card-text)}
.digital-card--themed .digital-card__exchange input,.digital-card--themed .digital-card__exchange textarea{background:var(--card-bg);color:var(--card-text);border-radius:var(--card-btn-r)}
.digital-card--themed .digital-card__footer a{color:var(--card-primary)}
.digital-card--themed.t-align-left .digital-card__surface{text-align:start}
.digital-card--themed.t-align-left .digital-card__avatar{margin-left:0;margin-right:auto}
.digital-card--themed.t-align-left .digital-card__bio{margin-left:0;margin-right:0}
.digital-card--themed.t-align-left .digital-card__socials{justify-content:flex-start}
.digital-card--themed.t-align-left .digital-card__socials a:first-child,.digital-card--themed.t-align-left .digital-card__socials a:last-child{margin:0}
.digital-card--themed.t-photo-circle{--card-photo-r:50%}
.digital-card--themed.t-photo-rounded{--card-photo-r:18%}
.digital-card--themed.t-photo-square{--card-photo-r:4px}
.digital-card--themed.t-psize-s{--card-photo:104px}
.digital-card--themed.t-psize-l{--card-photo:200px}
.digital-card--themed.t-size-s{--card-scale:.92}
.digital-card--themed.t-size-l{--card-scale:1.12}
.digital-card--themed.t-density-compact{--card-pad:16px;--card-gap:8px}
.digital-card--themed.t-density-spacious{--card-pad:32px;--card-gap:24px}
.digital-card--themed.t-radius-sharp{--card-r:0px;--card-btn-r:0px}
.digital-card--themed.t-radius-round{--card-r:24px;--card-btn-r:999px}
@media(max-width:580px){.digital-card--themed .digital-card__socials{justify-content:center}.digital-card--themed.t-align-left .digital-card__socials{justify-content:flex-start}}

/* Inline SVG icons (replace the Font Awesome icon font on public cards). */
.dc-i{height:1em;width:auto;vertical-align:-.125em;flex:none}
.digital-card__links a .dc-i{margin-right:6px}

/* Videos: a thumbnail with a play button; the YouTube player is only created when it is tapped. */
.digital-card__videos{display:grid;gap:16px;margin-top:24px}
.digital-card__video{margin:0;text-align:left}
.digital-card__video-play{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;border-radius:8px;overflow:hidden;background:#0f172a;cursor:pointer}
.digital-card__video-play img{display:block;width:100%;height:100%;object-fit:cover;opacity:.92}
.digital-card__video-play .digital-card__video-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);box-sizing:content-box;height:1em;width:auto;font-size:22px;padding:16px 16px 16px 20px;border-radius:50%;background:rgba(0,0,0,.68);color:#fff;transition:.15s}
.digital-card__video-play:hover .digital-card__video-icon,.digital-card__video-play:focus-visible .digital-card__video-icon{background:var(--card-primary,#0a66c2)}
.digital-card__video figcaption{margin-top:6px;font-size:14px;color:#6b7280;overflow-wrap:anywhere}
.digital-card__video-frame{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:8px;background:#000}
.digital-card--themed .digital-card__video figcaption{color:var(--card-muted)}
.digital-card--themed .digital-card__video-play,.digital-card--themed .digital-card__video-frame{border-radius:var(--card-btn-r,8px);border-radius:min(var(--card-btn-r,8px),18px)}

/* Free-text sections. */
.digital-card__text{margin-top:24px}
.digital-card__text h2{margin:0 0 6px;font-size:18px;font-weight:650;color:var(--card-text)}
.digital-card__text p{margin:0;color:#374151;white-space:pre-line;overflow-wrap:anywhere}
.digital-card--themed .digital-card__text h2{font-family:var(--card-font-heading);font-size:calc(18px*var(--card-scale))}
.digital-card--themed .digital-card__text p{color:var(--card-muted)}

/* Compact action row (themes with "Compact icons"). */
.digital-card--themed .digital-card__actions-icons{margin-top:24px;display:grid;gap:var(--card-gap)}
.digital-card--themed .digital-card__iconrow{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.digital-card--themed.t-align-left .digital-card__iconrow{justify-content:flex-start}
.digital-card--themed .digital-card__act{display:grid;justify-items:center;gap:5px;width:68px;padding:11px 4px 9px;border:2px solid var(--card-btn);border-radius:min(var(--card-btn-r),18px);background:var(--card-btn);color:var(--card-on-btn);font-size:11px;font-weight:650;line-height:1.1;text-decoration:none;cursor:pointer}
.digital-card--themed .digital-card__act .dc-i{font-size:20px}
.digital-card--themed.t-btn-outline .digital-card__act{background:transparent;color:var(--card-btn)}
.digital-card--themed.t-btn-soft .digital-card__act{background:color-mix(in srgb,var(--card-btn) 14%,var(--card-bg));color:var(--card-btn);border-color:transparent}
.digital-card--themed .digital-card__act:hover{background:var(--card-accent);border-color:var(--card-accent);color:#fff}

/* Link buttons: never wider than the card; long labels/URLs are cut with an ellipsis. */
.digital-card__links{grid-template-columns:minmax(0,1fr)}
.digital-card__links a{box-sizing:border-box;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
