*,*:before,*:after{box-sizing:border-box}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;font-weight:400;color:#111827;background-color:#f0f2f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0}.page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#f0f2f5;position:relative;overflow:hidden}.orb{position:fixed;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:0}.orb-1{width:500px;height:500px;background:#2563eb1a;top:-160px;left:-160px;animation:drift 14s ease-in-out infinite alternate}.orb-2{width:380px;height:380px;background:#7c3aed17;bottom:-120px;right:-120px;animation:drift 11s ease-in-out infinite alternate-reverse}.orb-3{width:260px;height:260px;background:#ec489912;top:40%;left:55%;animation:drift 9s ease-in-out infinite alternate;animation-delay:-4s}@keyframes drift{0%{transform:translate(0) scale(1)}to{transform:translate(40px,30px) scale(1.08)}}.card{position:relative;z-index:1;background:#fff;border-radius:22px;padding:2.25rem 2.25rem 1.75rem;width:100%;max-width:440px;box-shadow:0 2px 4px #0000000a,0 8px 24px #00000012,0 32px 64px #0000000d;animation:fadeUp .5s cubic-bezier(.22,1,.36,1) both;overflow:hidden;will-change:transform;transform-style:preserve-3d}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#2563eb,#7c3aed,#ec4899,#2563eb);background-size:200% 100%;animation:stripe 4s linear infinite}@keyframes stripe{0%{background-position:0% 0%}to{background-position:200% 0%}}.card-header{display:flex;align-items:center;gap:1.125rem;margin-bottom:1.125rem}.avatar{width:62px;height:62px;border-radius:50%;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-size:1.1rem;font-weight:700;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;overflow:hidden;box-shadow:0 4px 14px #2563eb66;animation:pulse-glow 3.5s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 4px 14px #2563eb66}50%{box-shadow:0 4px 22px #7c3aed8c,0 0 0 5px #7c3aed14}}.avatar-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar-fallback{position:relative;z-index:0}.identity{flex:1;min-width:0}.name{font-size:1.375rem;font-weight:700;color:#111827;margin:0 0 .2rem;line-height:1.2;letter-spacing:-.01em}.role{font-size:.8rem;color:#9ca3af;margin:0;display:flex;align-items:center;gap:.3rem;flex-wrap:wrap}.dot{color:#d1d5db}.company{color:#2563eb;font-weight:500}.tagline{font-size:.875rem;color:#4b5563;line-height:1.65;margin:0 0 1.25rem;font-style:italic}.stats-row{display:flex;gap:0;margin-bottom:1.25rem;background:#f9fafb;border:1px solid #f3f4f6;border-radius:12px;overflow:hidden}.stat-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:.75rem .5rem;position:relative}.stat-item+.stat-item:before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:1px;background:#e5e7eb}.stat-value{font-size:1.25rem;font-weight:700;color:#111827;line-height:1;letter-spacing:-.02em}.stat-label{font-size:.7rem;color:#9ca3af;margin-top:.25rem;text-align:center}.skills-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.375rem}.skill-tag{display:inline-flex;align-items:center;padding:.275rem .65rem;background:#f0f4ff;border:1px solid #dbeafe;border-radius:100px;font-size:.72rem;font-weight:500;color:#2563eb;opacity:0;animation:tag-pop .4s cubic-bezier(.22,1,.36,1) forwards;transition:background .15s,border-color .15s,transform .15s;cursor:default}.skill-tag:hover{background:#dbeafe;border-color:#93c5fd;transform:translateY(-1px)}@keyframes tag-pop{0%{opacity:0;transform:scale(.85) translateY(4px)}to{opacity:1;transform:scale(1) translateY(0)}}.divider{height:1px;background:#f3f4f6;margin-bottom:1.25rem}.contact-list{display:flex;flex-direction:column;gap:.7rem;margin-bottom:.875rem}.contact-item{display:flex;align-items:center;gap:.75rem}.contact-icon{width:34px;height:34px;border-radius:8px;background:#f9fafb;border:1px solid #f3f4f6;display:flex;align-items:center;justify-content:center;color:#9ca3af;flex-shrink:0;transition:background .15s,color .15s}.contact-item:hover .contact-icon{background:#eff6ff;color:#2563eb;border-color:#dbeafe}.contact-link{flex:1;font-size:.845rem;color:#374151;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s}.contact-link:hover{color:#2563eb}.copy-btn{display:flex;align-items:center;justify-content:center;padding:.3rem;border:none;background:transparent;color:#d1d5db;cursor:pointer;border-radius:5px;flex-shrink:0;transition:color .15s,background .15s;line-height:0}.copy-btn:hover{color:#2563eb;background:#eff6ff}.cta-group{display:flex;flex-direction:column;gap:.6rem;margin-bottom:.875rem}.cta-primary{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.8125rem 1.5rem;background:#2563eb;color:#fff;border:none;border-radius:10px;font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer;text-decoration:none;box-shadow:0 2px 10px #2563eb59;transition:background .2s,transform .15s,box-shadow .2s;letter-spacing:.01em;animation:cta-breathe 3s ease-in-out infinite}.cta-primary:hover{background:#1d4ed8;color:#fff;transform:translateY(-1px);box-shadow:0 6px 22px #2563eb73;animation:none}.cta-primary:active{transform:translateY(0)}.cta-primary:disabled{opacity:.7;cursor:not-allowed;animation:none}@keyframes cta-breathe{0%,to{box-shadow:0 2px 10px #2563eb59}50%{box-shadow:0 4px 20px #2563eb80}}.cta-secondary{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem 1.5rem;background:transparent;color:#374151;border:1.5px solid #e5e7eb;border-radius:10px;font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .15s,color .15s,background .15s,transform .15s}.cta-secondary:hover{border-color:#2563eb;color:#2563eb;background:#f5f8ff;transform:translateY(-1px)}.cta-secondary:active{transform:translateY(0)}.share-row{display:flex;gap:.6rem;margin-bottom:1rem}.share-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.45rem;padding:.6rem 1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:9px;font-size:.8rem;font-weight:500;font-family:inherit;color:#4b5563;cursor:pointer;transition:color .15s,background .15s,border-color .15s,transform .15s}.share-btn:hover{color:#2563eb;background:#eff6ff;border-color:#bfdbfe;transform:translateY(-1px)}.share-btn:active{transform:translateY(0)}.social-row{display:flex;justify-content:center;gap:.6rem}.social-link{width:38px;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#9ca3af;background:#f9fafb;border:1px solid #f3f4f6;text-decoration:none;transition:color .15s,background .15s,border-color .15s,transform .15s}.social-link:hover{color:#2563eb;background:#eff6ff;border-color:#bfdbfe;transform:translateY(-2px)}.modal-overlay{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center;z-index:100;padding:1rem;animation:overlay-in .2s ease}.modal-panel{background:#fff;border-radius:20px;width:100%;max-width:460px;padding:1.75rem;animation:panel-up .38s cubic-bezier(.22,1,.36,1);max-height:92vh;overflow-y:auto}.qr-panel{text-align:center}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes panel-up{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.modal-title{font-size:1.25rem;font-weight:700;color:#111827;margin:0 0 .2rem}.modal-sub{font-size:.8125rem;color:#9ca3af;margin:0}.modal-close{width:32px;height:32px;flex-shrink:0;border:none;background:#f3f4f6;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#6b7280;cursor:pointer;transition:background .15s,color .15s}.modal-close:hover{background:#fee2e2;color:#dc2626}.contact-form{display:flex;flex-direction:column;gap:.875rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.form-field{display:flex;flex-direction:column;gap:.35rem}.form-field label{font-size:.775rem;font-weight:600;color:#374151;letter-spacing:.01em}.form-field input,.form-field select,.form-field textarea{padding:.625rem .75rem;border:1.5px solid #e5e7eb;border-radius:8px;font-size:.875rem;font-family:inherit;color:#111827;background:#fff;transition:border-color .15s,box-shadow .15s;outline:none;resize:vertical}.form-field input::placeholder,.form-field textarea::placeholder{color:#c4c9d4}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.form-error{font-size:.8rem;color:#dc2626;margin:0}.form-error a{color:#dc2626;font-weight:500}.form-note{font-size:.75rem;color:#9ca3af;text-align:center;margin:0}.form-success{text-align:center;padding:1rem 0;animation:fadeUp .4s ease}.success-icon{width:56px;height:56px;margin:0 auto 1rem;background:linear-gradient(135deg,#2563eb,#7c3aed);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;animation:scale-in .4s cubic-bezier(.22,1,.36,1)}.form-success h3{font-size:1.125rem;font-weight:700;color:#111827;margin:0 0 .5rem}.form-success p{font-size:.875rem;color:#6b7280;margin:0}@keyframes scale-in{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.qr-wrap{display:inline-flex;padding:1.25rem;background:#fff;border:1.5px solid #e5e7eb;border-radius:16px;margin:.5rem 0 .875rem;box-shadow:0 4px 16px #0000000f}.qr-url{font-size:.75rem;color:#9ca3af;margin:0;word-break:break-all}@keyframes fadeUp{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.card{padding:1.75rem 1.5rem 1.5rem}.form-row{grid-template-columns:1fr}.modal-panel{padding:1.5rem}}
