.vc-page{min-height:100vh;background:var(--bg-primary)}.vc-hero{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:72px 24px 48px;text-align:center;position:relative;overflow:hidden}.vc-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 30%,oklch(.7 .19 47/.07) 0,transparent 70%);pointer-events:none}.vc-hero-icon{width:72px;height:72px;margin:0 auto 22px;background:var(--accent-dim);border:1px solid oklch(.7 .19 47/.3);border-radius:20px;display:flex;align-items:center;justify-content:center;color:var(--accent-primary)}.vc-hero h1,.vc-hero-icon{position:relative;z-index:1}.vc-hero h1{font-family:var(--font-tight);font-size:clamp(1.9rem,5vw,3rem);font-weight:800;color:var(--text-primary);margin-bottom:12px;line-height:1.1}.vc-hero h1 span{color:var(--accent-primary)}.vc-hero-sub{font-size:1rem;color:var(--text-secondary);max-width:520px;margin:0 auto;line-height:1.65;position:relative;z-index:1}.vc-container{max-width:1120px;margin:0 auto;padding:48px 24px 80px;display:grid;grid-template-columns:1fr 380px;grid-gap:32px;gap:32px;align-items:start}.vc-tabs{display:flex;gap:6px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:5px}.vc-tab{flex:1 1;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px 14px;border-radius:8px;border:none;background:transparent;color:var(--text-muted);font-size:.88rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit}.vc-tab:hover{color:var(--text-primary);background:var(--bg-card-hover)}.vc-tab.active{background:var(--accent-primary);color:#fff;box-shadow:0 2px 10px var(--accent-glow)}.vc-form-panel{display:flex;flex-direction:column;gap:24px}.vc-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:28px}.vc-card-title{font-family:var(--font-tight);font-size:.95rem;font-weight:700;color:var(--text-primary);margin-bottom:20px;display:flex;align-items:center;gap:8px}.vc-card-title svg{color:var(--accent-primary)}.vc-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.vc-field:last-child{margin-bottom:0}.vc-label{font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.vc-input{background:var(--bg-input);border:1px solid var(--border-color);border-radius:9px;padding:10px 14px;color:var(--text-primary);font-size:.9rem;font-family:inherit;width:100%;box-sizing:border-box;transition:border-color .15s;outline:none}.vc-input:focus{border-color:var(--border-active)}.vc-input::placeholder{color:var(--text-muted)}.vc-phone-rows{display:flex;flex-direction:column;gap:10px}.vc-phone-row{display:flex;gap:8px;align-items:center}.vc-phone-row .vc-input{flex:1 1}.vc-phone-type{background:var(--bg-input);border:1px solid var(--border-color);border-radius:9px;padding:10px;color:var(--text-secondary);font-size:.82rem;font-family:inherit;outline:none;cursor:pointer;transition:border-color .15s;flex-shrink:0}.vc-phone-type:focus{border-color:var(--border-active)}.vc-remove-btn{width:32px;height:32px;border-radius:8px;background:var(--color-error-bg);border:1px solid oklch(.7 .2 20/.2);color:var(--color-error);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s}.vc-remove-btn:hover{background:oklch(.7 .2 20/.18)}.vc-add-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--accent-dim);border:1px dashed oklch(.7 .19 47/.35);border-radius:9px;color:var(--accent-primary);font-size:.83rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s;margin-top:4px;width:-moz-fit-content;width:fit-content}.vc-add-btn:hover{background:oklch(.7 .19 47/.16);border-color:oklch(.42 .12 145/.55)}.vc-image-upload{display:flex;align-items:center;gap:16px}.vc-image-preview{width:72px;height:72px;border-radius:50%;border:2px solid var(--border-color);background:var(--bg-elevated);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.vc-image-preview img{width:100%;height:100%;object-fit:cover}.vc-image-preview--logo{border-radius:12px}.vc-image-preview--logo img{object-fit:contain;padding:4px}.vc-image-actions{display:flex;flex-direction:column;gap:8px}.vc-upload-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--accent-dim);border:1px solid oklch(.7 .19 47/.25);border-radius:9px;color:var(--accent-primary);font-size:.83rem;font-weight:600;cursor:pointer;transition:background .15s}.vc-upload-btn:hover{background:oklch(.7 .19 47/.16)}.vc-upload-hint{font-size:.75rem;color:var(--text-muted)}.vc-preview-panel{position:-webkit-sticky;position:sticky;top:80px;display:flex;flex-direction:column;gap:20px}.vc-preview-label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:4px}.vc-card-preview{background:linear-gradient(145deg,#243662,#1a2a4a);border:1px solid oklch(.7 .19 47/.35);border-radius:20px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.05),0 24px 64px rgba(0,0,0,.6)}.vc-card-preview-header{background:linear-gradient(135deg,oklch(.7 .19 47),oklch(.63 .22 30));padding:28px 24px 48px;position:relative}.vc-card-preview-avatar{width:80px;height:80px;border-radius:50%;border:3px solid rgba(255,255,255,.9);background:rgba(255,255,255,.2);overflow:hidden;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);font-size:2rem;font-weight:700}.vc-card-preview-avatar img{width:100%;height:100%;object-fit:cover}.vc-card-preview-body{padding:0 24px 24px;margin-top:-28px}.vc-preview-name{font-family:var(--font-tight);font-size:1.3rem;font-weight:800;color:oklch(.94 .01 90);margin-bottom:2px}.vc-preview-title{font-size:.85rem;color:oklch(.72 .012 200);margin-bottom:4px}.vc-preview-org{font-size:.8rem;color:oklch(.72 .18 145);font-weight:600;margin-bottom:20px}.vc-preview-divider{height:1px;background:rgba(255,255,255,.1);margin-bottom:18px}.vc-preview-row{display:flex;align-items:flex-start;gap:12px;margin-bottom:13px;font-size:.85rem;color:oklch(.75 .012 200)}.vc-preview-row:last-child{margin-bottom:0}.vc-preview-row-icon{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.vc-preview-row-content{flex:1 1}.vc-preview-row-label{font-size:.7rem;color:oklch(.52 .01 265);text-transform:uppercase;letter-spacing:.06em;margin-bottom:1px}.vc-preview-row-value{color:oklch(.9 .01 90);font-size:.85rem;word-break:break-word}.vc-preview-phones{display:flex;flex-direction:column;gap:3px}.vc-preview-phone-item{display:flex;align-items:center;gap:6px;font-size:.83rem;color:oklch(.9 .01 90)}.vc-preview-phone-type{font-size:.68rem;color:oklch(.6 .01 265);background:rgba(255,255,255,.08);padding:1px 6px;border-radius:4px;text-transform:uppercase}.vc-empty-name{color:oklch(.55 .01 265);font-style:italic}.vc-download-btn{width:100%;padding:13px;background:var(--accent-primary);border:none;border-radius:12px;color:var(--text-on-accent);font-size:.95rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .15s,transform .15s;box-shadow:0 4px 16px var(--accent-glow)}.vc-download-btn:hover{background:var(--accent-primary-hover);transform:translateY(-1px)}.vc-download-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.vc-format-note{text-align:center;font-size:.75rem;color:var(--text-muted)}.vc-textarea{background:var(--bg-input);border:1px solid var(--border-color);border-radius:9px;padding:10px 14px;color:var(--text-primary);font-size:.9rem;font-family:inherit;width:100%;box-sizing:border-box;transition:border-color .15s;outline:none;resize:vertical;min-height:80px}.vc-textarea:focus{border-color:var(--border-active)}.vc-textarea::placeholder{color:var(--text-muted)}.vc-fields-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.vc-qr-block{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:14px}.vc-qr-header{display:flex;align-items:center;gap:7px;font-size:.88rem;font-weight:700;color:var(--text-primary)}.vc-qr-header svg{color:var(--accent-primary)}.vc-qr-hint{margin-left:auto;font-size:.72rem;font-weight:400;color:var(--text-muted)}.vc-qr-hint--logo{color:var(--accent-primary);font-weight:600}.vc-qr-area{display:flex;justify-content:center;align-items:center;min-height:160px}.vc-qr-img{width:100%;max-width:340px;border-radius:0;border:none;display:block;image-rendering:pixelated}.vc-qr-placeholder{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--text-muted);font-size:.78rem;text-align:center;padding:20px}.vc-qr-scan-btn{width:100%;padding:11px;background:var(--accent-primary);border:none;border-radius:9px;color:#fff;font-size:.87rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .15s;margin-bottom:8px}.vc-qr-scan-btn:hover{background:oklch(.63 .22 44)}.vc-qr-download-btn{width:100%;padding:9px;background:var(--accent-dim);border:1px solid oklch(.7 .19 47/.25);border-radius:9px;color:var(--accent-primary);font-size:.83rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .15s}.vc-qr-download-btn:hover{background:oklch(.7 .19 47/.16)}.vc-qr-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px}.vc-qr-overlay-inner{background:#ffffff;border-radius:20px;padding:28px 24px 20px;display:flex;flex-direction:column;align-items:center;gap:16px;max-width:420px;width:100%}.vc-qr-overlay-img{width:min(80vw,80vh,360px);height:min(80vw,80vh,360px);display:block;image-rendering:pixelated;border-radius:0}.vc-qr-overlay-hint{font-size:.85rem;color:#555;text-align:center}.vc-qr-overlay-close{padding:10px 28px;background:#f3f4f6;border:none;border-radius:9px;font-size:.88rem;font-weight:600;color:#333;cursor:pointer;transition:background .15s}.vc-qr-overlay-close:hover{background:#e5e7eb}@media (max-width:900px){.vc-container{grid-template-columns:1fr}.vc-preview-panel{position:static;order:-1}}@media (max-width:480px){.vc-fields-row{grid-template-columns:1fr}.vc-hero{padding:60px 16px 40px}.vc-container{padding:32px 16px 60px}}