:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#eef4f7;background:#101922}*{box-sizing:border-box}body{margin:0}header{display:flex;gap:18px;align-items:center;padding:16px max(18px,calc((100% - 1150px)/2));background:#1b2b36;border-bottom:1px solid #324653}header a{color:#edbc76;text-decoration:none;font-weight:800}header span{flex:1}main{max-width:1150px;margin:auto;padding:22px}.surface{background:#1d2d39;border:1px solid #38505f;border-radius:16px;padding:20px;margin-bottom:16px}h1,h2{margin:0 0 14px}h1{font-size:28px}h2{font-size:20px}p,.hint{color:#bbcad2;font-size:13px;line-height:1.5}.columns{display:grid;grid-template-columns:1.05fr .95fr;gap:16px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{display:block;font-size:13px;color:#c4d2dc;margin:10px 0 6px}input,select{display:block;width:100%;padding:11px;border:1px solid #587080;background:#13212b;color:#fff;border-radius:9px;font:inherit;margin-top:5px}button,.button{padding:11px 14px;border-radius:9px;border:0;background:#e7b364;color:#16222b;font:inherit;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}button.secondary,.button.secondary{background:#39505e;color:#fff}.bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0}.bar select{max-width:270px;margin:0}.topline{display:flex;align-items:center;justify-content:space-between;gap:18px}.password{display:flex;gap:8px;max-width:380px}.password input{margin:0}.cardPreview{min-height:330px;border-radius:20px;padding:30px;text-align:center;background:var(--bg,#f8f7f2);color:var(--fg,#253541)}.cardPreview img{width:115px;height:115px;border-radius:50%;object-fit:cover}.cardPreview h2{margin-top:18px}.cardPreview a{color:var(--accent,#397765)}#notice{color:#f1c16c;margin:10px 0}#cardStatus{color:#9adbb2;font-size:13px}.hidden,[hidden]{display:none!important}@media(max-width:850px){.columns{grid-template-columns:1fr}.fields{grid-template-columns:1fr}.topline{display:block}}@media print{body{background:white;color:black}header,main>section:not(#workspace),.surface:first-child,.topline,.bar,.hint,#cardStatus,main>div{display:none!important}main{padding:0}.columns{display:block}.surface{border:none;padding:0}.cardPreview{width:88mm;min-height:55mm;margin:auto;-webkit-print-color-adjust:exact;print-color-adjust:exact}.cardPreview img{width:60px;height:60px}}
.actionStatus{padding:12px 14px;margin:12px 0!important;background:#102b35;border:1px solid #587787;border-radius:10px;color:#ffdf9d!important;font-size:14px!important;font-weight:650}.previewActions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:16px}.previewAction{border:1px solid var(--accent,#397765);color:var(--fg,#253541)!important;text-decoration:none;padding:7px 10px;border-radius:999px;font-size:12px}button:disabled{opacity:.48;cursor:not-allowed}

textarea{display:block;width:100%;padding:11px;border:1px solid #587080;background:#13212b;color:#fff;border-radius:9px;font:inherit;margin-top:5px;resize:vertical}.fields .full{grid-column:1/-1}.cardPreview .cardBio{line-height:1.55;max-width:420px;margin:10px auto;font-size:14px}.cardPreview .services{margin:18px auto;padding:14px;border-radius:13px;background:color-mix(in srgb,var(--bg),var(--fg) 9%);text-align:left;max-width:440px}.services div{padding:5px 0}.cardPreview .socialButtons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px auto;max-width:440px}.socialButtons a{border:1px solid color-mix(in srgb,var(--fg),transparent 70%);border-radius:11px;padding:12px 6px;color:var(--fg);text-decoration:none;font-size:12px}.qrBox{margin:18px auto;background:white;color:#1d2730;padding:18px;border-radius:14px;max-width:260px}.qrBox canvas,.qrBox img{width:210px;height:210px;max-width:100%;border-radius:0;object-fit:contain}.ctaButton{display:block;background:var(--accent);color:var(--bg)!important;border-radius:11px;text-decoration:none;padding:12px;font-weight:750;max-width:440px;margin:18px auto}.cardPreview .profileName{font-size:25px}.cardPreview .profileJob{color:var(--accent)}@media print{.cardPreview{width:100%;max-width:150mm;min-height:unset;padding:25px}.cardPreview .socialButtons{grid-template-columns:repeat(3,1fr)}.qrBox{max-width:230px}}
@media print{body.publicCard main>section.surface{display:block!important;max-width:165mm!important;margin:0 auto!important;background:white!important}body.publicCard .cardPreview{display:block!important;width:100%!important;max-width:none!important;min-height:unset!important}body.publicCard .bar,body.publicCard header,body.publicCard #notice{display:none!important}body.publicCard .socialButtons{display:grid!important}body.publicCard .qrBox img,body.publicCard .qrBox canvas{display:block!important}}

/* UX v1.4 */
.skipcontrol{display:inline-flex;align-items:center;gap:5px;float:right;font-size:11px;color:#e6bf80;font-weight:normal;white-space:nowrap}
.skipcontrol input{width:15px;height:15px;margin:0;accent-color:#e7b364}
.fields input:disabled,.fields textarea:disabled{opacity:.42;cursor:not-allowed}
.cardPreview .qrBox{max-width:200px;padding:14px}
.cardPreview .qrBox img,.cardPreview .qrBox canvas{width:148px!important;height:148px!important}
.publicCard #vcf[hidden]{display:none!important}
@media(max-width:560px){.skipcontrol{float:none;margin-left:10px}}

/* REPU Tarjetas v1.5: QR centered, minimal white holder */
.cardPreview .qrBox{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:max-content;max-width:100%;padding:10px 11px 8px!important;margin:18px auto!important;background:#fff!important;color:#24313a;border-radius:12px;box-shadow:0 1px 3px #0002}
.cardPreview .qrCanvas{width:132px;height:132px;display:flex;align-items:center;justify-content:center;margin:0 auto;overflow:hidden}
.cardPreview .qrCanvas img,.cardPreview .qrCanvas canvas{width:132px!important;height:132px!important;max-width:none!important;border-radius:0!important;display:block!important;margin:0!important;object-fit:contain!important}
.cardPreview .qrBox p{margin:3px 0 0!important;text-align:center!important;font-size:10px!important;color:#536577!important;line-height:1.3!important;max-width:148px}
.cardPreview.hasPhotoBackground{color:#fff!important;background-repeat:no-repeat;background-color:#1b2932!important}
.cardPreview.hasPhotoBackground .profileJob,.cardPreview.hasPhotoBackground .cardBio,.cardPreview.hasPhotoBackground .socialButtons a{color:#fff!important;text-shadow:0 1px 4px #0009}
.cardPreview.hasPhotoBackground .services{background:rgba(16,25,34,.62)!important;color:white!important;backdrop-filter:blur(3px)}
.cardPreview.hasPhotoBackground .socialButtons a{border-color:rgba(255,255,255,.6)!important;background:rgba(10,22,29,.46)}
.cardPreview.hasPhotoBackground .ctaButton{background:#e7b364!important;color:#1a2530!important;text-shadow:none!important}
.backgroundOption{display:flex;align-items:center;gap:10px;align-self:center;margin:0!important}.backgroundOption input{width:18px;height:18px;margin:0}
input[type=range]{accent-color:#e7b364;padding:0;min-height:30px}
@media print{.cardPreview .qrBox{display:flex!important}.cardPreview .qrCanvas img,.cardPreview .qrCanvas canvas{display:block!important}}

/* REPU Tarjetas v1.6 — fondo independiente, con difuminado y contraste real */
.cardPreview{position:relative;isolation:isolate;overflow:hidden}
.cardPreview.hasPhotoBackground{background-image:none!important}
.cardPreview.hasPhotoBackground::before{content:"";position:absolute;inset:-18px;z-index:-2;background-image:var(--photo-url);background-size:cover;background-position:var(--background-position,center);filter:blur(var(--background-blur,5px));pointer-events:none}
.cardPreview.hasPhotoBackground::after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(7,16,23,var(--overlay-alpha,.72));pointer-events:none}
.cardPreview>*{position:relative;z-index:1}
.cardPreview>img{width:var(--avatar-size,95px)!important;height:var(--avatar-size,95px)!important;max-width:40%;margin:0 auto;object-fit:cover;border-radius:50%}
.cardPreview.hasPhotoBackground h2,.cardPreview.hasPhotoBackground .profileJob,.cardPreview.hasPhotoBackground .cardBio{color:white!important;text-shadow:0 2px 5px #000c}
.cardPreview.hasPhotoBackground .services{background:rgba(8,20,29,.78)!important;backdrop-filter:blur(6px)}
.cardPreview.hasPhotoBackground .socialButtons a{background:rgba(8,20,29,.76)!important;border:1px solid rgba(255,255,255,.45)!important;backdrop-filter:blur(4px)}
.cardPreview .qrBox{max-width:160px!important;padding:8px!important;margin:16px auto!important;gap:3px!important}
.cardPreview .qrCanvas,.cardPreview .qrCanvas img,.cardPreview .qrCanvas canvas{width:126px!important;height:126px!important}
.cardPreview .qrBox p{font-size:9px!important;line-height:1.25!important;max-width:138px!important}
@media print{.cardPreview.hasPhotoBackground::before,.cardPreview.hasPhotoBackground::after{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
